summaryrefslogtreecommitdiff
path: root/forms
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2019-12-02 09:57:02 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2019-12-03 10:57:41 +0100
commit1d1366bd15de157371cd3353d43fc7873dcaa3af (patch)
treea200867efd60c8364f11ba30caa542ac7d182988 /forms
parentdca8173738bd8cde289cb6406e0f261955b0dbb7 (diff)
loplugin:mergeclases ICommandImageProvider with DocumentCommandImageProvider
Change-Id: Ia6997489a8f21f33287e11e39fab1bb059070c89 Reviewed-on: https://gerrit.libreoffice.org/84195 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'forms')
-rw-r--r--forms/source/helper/commandimageprovider.cxx38
-rw-r--r--forms/source/inc/commandimageprovider.hxx29
-rw-r--r--forms/source/solar/component/navbarcontrol.cxx2
-rw-r--r--forms/source/solar/control/navtoolbar.cxx4
-rw-r--r--forms/source/solar/inc/navtoolbar.hxx6
5 files changed, 18 insertions, 61 deletions
diff --git a/forms/source/helper/commandimageprovider.cxx b/forms/source/helper/commandimageprovider.cxx
index 6569c8a4373e..ca2d7052567f 100644
--- a/forms/source/helper/commandimageprovider.cxx
+++ b/forms/source/helper/commandimageprovider.cxx
@@ -52,30 +52,7 @@ namespace frm
namespace ImageType = ::com::sun::star::ui::ImageType;
- namespace {
-
- class DocumentCommandImageProvider : public ICommandImageProvider
- {
- public:
- DocumentCommandImageProvider( const Reference<XComponentContext>& _rContext, const Reference< XModel >& _rxDocument )
- {
- impl_init_nothrow( _rContext, _rxDocument );
- }
-
- // ICommandImageProvider
- virtual CommandImages getCommandImages( const css::uno::Sequence< OUString >& _rCommandURLs, const bool _bLarge ) const override;
-
- private:
- void impl_init_nothrow( const Reference<XComponentContext>& _rContext, const Reference< XModel >& _rxDocument );
-
- private:
- Reference< XImageManager > m_xDocumentImageManager;
- Reference< XImageManager > m_xModuleImageManager;
- };
-
- }
-
- void DocumentCommandImageProvider::impl_init_nothrow( const Reference<XComponentContext>& _rContext, const Reference< XModel >& _rxDocument )
+ DocumentCommandImageProvider::DocumentCommandImageProvider( const Reference<XComponentContext>& _rContext, const Reference< XModel >& _rxDocument )
{
OSL_ENSURE( _rxDocument.is(), "DocumentCommandImageProvider::impl_init_nothrow: no document => no images!" );
if ( !_rxDocument.is() )
@@ -112,10 +89,10 @@ namespace frm
}
- CommandImages DocumentCommandImageProvider::getCommandImages( const css::uno::Sequence< OUString >& _rCommandURLs, const bool _bLarge ) const
+ std::vector<Image> DocumentCommandImageProvider::getCommandImages( const css::uno::Sequence< OUString >& _rCommandURLs, const bool _bLarge ) const
{
const size_t nCommandCount = _rCommandURLs.getLength();
- CommandImages aImages( nCommandCount );
+ std::vector<Image> aImages( nCommandCount );
try
{
const sal_Int16 nImageType = ImageType::COLOR_NORMAL
@@ -150,15 +127,6 @@ namespace frm
return aImages;
}
-
- PCommandImageProvider createDocumentCommandImageProvider(
- const Reference<XComponentContext>& _rContext, const Reference< XModel >& _rxDocument )
- {
- PCommandImageProvider pImageProvider( new DocumentCommandImageProvider( _rContext, _rxDocument ) );
- return pImageProvider;
- }
-
-
} // namespace frm
diff --git a/forms/source/inc/commandimageprovider.hxx b/forms/source/inc/commandimageprovider.hxx
index 560be1dc5c74..3a67df02256a 100644
--- a/forms/source/inc/commandimageprovider.hxx
+++ b/forms/source/inc/commandimageprovider.hxx
@@ -22,6 +22,7 @@
#include <com/sun/star/frame/XModel.hpp>
#include <com/sun/star/uno/XComponentContext.hpp>
+#include <com/sun/star/ui/XImageManager.hpp>
#include <vcl/image.hxx>
@@ -31,32 +32,20 @@
namespace frm
{
-
- //= ICommandImageProvider
-
- typedef ::std::vector< Image > CommandImages;
-
- class SAL_NO_VTABLE ICommandImageProvider
+ class DocumentCommandImageProvider
{
public:
- virtual CommandImages getCommandImages(
- const css::uno::Sequence< OUString >& _rCommandURLs,
- const bool _bLarge
- ) const = 0;
+ DocumentCommandImageProvider( const css::uno::Reference<css::uno::XComponentContext>& _rContext, const css::uno::Reference< css::frame::XModel >& _rxDocument );
- virtual ~ICommandImageProvider() { }
- };
-
- typedef std::shared_ptr< const ICommandImageProvider > PCommandImageProvider;
+ std::vector<Image> getCommandImages( const css::uno::Sequence< OUString >& _rCommandURLs, bool _bLarge ) const;
+ private:
+ css::uno::Reference< css::ui::XImageManager > m_xDocumentImageManager;
+ css::uno::Reference< css::ui::XImageManager > m_xModuleImageManager;
+ };
- //= factory
- PCommandImageProvider
- createDocumentCommandImageProvider(
- const css::uno::Reference<css::uno::XComponentContext>& _rContext,
- const css::uno::Reference< css::frame::XModel >& _rxDocument
- );
+ typedef std::shared_ptr< const DocumentCommandImageProvider > PCommandImageProvider;
} // namespace frm
diff --git a/forms/source/solar/component/navbarcontrol.cxx b/forms/source/solar/component/navbarcontrol.cxx
index 680f3b84e312..c2fc4485a446 100644
--- a/forms/source/solar/component/navbarcontrol.cxx
+++ b/forms/source/solar/component/navbarcontrol.cxx
@@ -211,7 +211,7 @@ namespace frm
VclPtrInstance<NavigationToolBar> pNavBar(
_pParentWindow,
lcl_getWinBits_nothrow( _rxModel ),
- createDocumentCommandImageProvider( _rxORB, xContextDocument ),
+ std::make_shared<DocumentCommandImageProvider>( _rxORB, xContextDocument ),
sModuleID
);
diff --git a/forms/source/solar/control/navtoolbar.cxx b/forms/source/solar/control/navtoolbar.cxx
index 5acd1139e217..bbb717139e19 100644
--- a/forms/source/solar/control/navtoolbar.cxx
+++ b/forms/source/solar/control/navtoolbar.cxx
@@ -366,10 +366,10 @@ namespace frm
}
// retrieve the images for the command URLs
- CommandImages aCommandImages = m_pImageProvider->getCommandImages( aCommandURLs, m_eImageSize == eLarge );
+ std::vector<Image> aCommandImages = m_pImageProvider->getCommandImages( aCommandURLs, m_eImageSize == eLarge );
// and set them at the toolbar
- CommandImages::const_iterator commandImage = aCommandImages.begin();
+ auto commandImage = aCommandImages.begin();
for (auto const& formFeature : aFormFeatures)
{
m_pToolbar->SetItemImage( formFeature, *commandImage );
diff --git a/forms/source/solar/inc/navtoolbar.hxx b/forms/source/solar/inc/navtoolbar.hxx
index e5db22177383..1018ff6e16b3 100644
--- a/forms/source/solar/inc/navtoolbar.hxx
+++ b/forms/source/solar/inc/navtoolbar.hxx
@@ -31,10 +31,10 @@ namespace frm
class IFeatureDispatcher;
- class ICommandImageProvider;
+ class DocumentCommandImageProvider;
class ICommandDescriptionProvider;
class ImplNavToolBar;
- typedef std::shared_ptr< const ICommandImageProvider > PCommandImageProvider;
+ typedef std::shared_ptr< const DocumentCommandImageProvider > PCommandImageProvider;
class NavigationToolBar final : public vcl::Window
{
@@ -55,7 +55,7 @@ namespace frm
private:
const IFeatureDispatcher* m_pDispatcher;
- const std::shared_ptr< const ICommandImageProvider >
+ const std::shared_ptr< const DocumentCommandImageProvider >
m_pImageProvider;
ImageSize m_eImageSize;
VclPtr<ImplNavToolBar> m_pToolbar;