UnoControls/source/controls/progressmonitor.cxx |    9 ++++-----
 UnoControls/source/controls/statusindicator.cxx |    3 +--
 include/toolkit/controls/unocontrolmodel.hxx    |    3 ++-
 include/toolkit/controls/unocontrols.hxx        |    2 +-
 4 files changed, 8 insertions(+), 9 deletions(-)

New commits:
commit 5a98bee1b80ff462bacc592e73e3cf41c697046e
Author:     Noel Grandin <noelgran...@gmail.com>
AuthorDate: Sat Jun 14 19:00:14 2025 +0200
Commit:     Noel Grandin <noelgran...@gmail.com>
CommitDate: Sun Jun 15 18:25:32 2025 +0200

    use more concrete UNO classes
    
    Change-Id: I9551b5739805c16bf3fd5b26812bd85bde7b17ff
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/186517
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/UnoControls/source/controls/progressmonitor.cxx 
b/UnoControls/source/controls/progressmonitor.cxx
index f090c5a5ffa4..857c518a24d1 100644
--- a/UnoControls/source/controls/progressmonitor.cxx
+++ b/UnoControls/source/controls/progressmonitor.cxx
@@ -39,7 +39,6 @@ using namespace ::com::sun::star::awt;
 
 using ::std::vector;
 
-constexpr OUString FIXEDTEXT_MODELNAME = 
u"com.sun.star.awt.UnoControlFixedTextModel"_ustr;
 constexpr OUString CONTROLNAME_TEXT = u"Text"_ustr;   // identifier the 
control in container
 constexpr OUStringLiteral CONTROLNAME_PROGRESSBAR = u"ProgressBar";
 constexpr OUStringLiteral BUTTON_SERVICENAME = 
u"com.sun.star.awt.UnoControlButton";
@@ -69,10 +68,10 @@ ProgressMonitor::ProgressMonitor( const 
css::uno::Reference< XComponentContext >
     css::uno::Reference< XControl >   xRef_Button         ( m_xButton       , 
UNO_QUERY );
 
     // ... set models ...
-    m_xTopic_Top->setModel    ( css::uno::Reference< XControlModel > ( 
rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_MODELNAME, 
rxContext ), UNO_QUERY ) );
-    m_xText_Top->setModel     ( css::uno::Reference< XControlModel > ( 
rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_MODELNAME, 
rxContext ), UNO_QUERY ) );
-    m_xTopic_Bottom->setModel ( css::uno::Reference< XControlModel > ( 
rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_MODELNAME, 
rxContext ), UNO_QUERY ) );
-    m_xText_Bottom->setModel  ( css::uno::Reference< XControlModel > ( 
rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_MODELNAME, 
rxContext ), UNO_QUERY ) );
+    m_xTopic_Top->setModel    ( new UnoControlFixedTextModel(rxContext) );
+    m_xText_Top->setModel     ( new UnoControlFixedTextModel(rxContext) );
+    m_xTopic_Bottom->setModel ( new UnoControlFixedTextModel(rxContext) );
+    m_xText_Bottom->setModel  (  new UnoControlFixedTextModel(rxContext) );
     xRef_Button->setModel       ( css::uno::Reference< XControlModel > ( 
rxContext->getServiceManager()->createInstanceWithContext( BUTTON_MODELNAME, 
rxContext ), UNO_QUERY ) );
     // ProgressBar has no model !!!
 
diff --git a/UnoControls/source/controls/statusindicator.cxx 
b/UnoControls/source/controls/statusindicator.cxx
index 3ad89953731f..7c9b76663c28 100644
--- a/UnoControls/source/controls/statusindicator.cxx
+++ b/UnoControls/source/controls/statusindicator.cxx
@@ -34,7 +34,6 @@ using namespace ::com::sun::star::lang;
 using namespace ::com::sun::star::awt;
 using namespace ::com::sun::star::task;
 
-constexpr OUStringLiteral FIXEDTEXT_MODELNAME = 
u"com.sun.star.awt.UnoControlFixedTextModel";
 constexpr OUStringLiteral CONTROLNAME_TEXT = u"Text"; // identifier the 
control in container
 constexpr OUStringLiteral CONTROLNAME_PROGRESSBAR = u"ProgressBar"; //         
     -||-
 
@@ -54,7 +53,7 @@ StatusIndicator::StatusIndicator( const css::uno::Reference< 
XComponentContext >
     m_xProgressBar = new ProgressBar(rxContext);
     // ... cast controls to css::uno::Reference< XControl > and set model ...
     // ( ProgressBar has no model !!! )
-    m_xText->setModel( css::uno::Reference< XControlModel >( 
rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_MODELNAME, 
rxContext ), UNO_QUERY ) );
+    m_xText->setModel( new UnoControlFixedTextModel(rxContext) );
     // ... and add controls to basecontainercontrol!
     addControl( CONTROLNAME_TEXT, m_xText    );
     addControl( CONTROLNAME_PROGRESSBAR, m_xProgressBar );
diff --git a/include/toolkit/controls/unocontrolmodel.hxx 
b/include/toolkit/controls/unocontrolmodel.hxx
index f157c2cd000f..b1b2d4e54ddc 100644
--- a/include/toolkit/controls/unocontrolmodel.hxx
+++ b/include/toolkit/controls/unocontrolmodel.hxx
@@ -20,6 +20,7 @@
 #ifndef INCLUDED_TOOLKIT_CONTROLS_UNOCONTROLMODEL_HXX
 #define INCLUDED_TOOLKIT_CONTROLS_UNOCONTROLMODEL_HXX
 
+#include <toolkit/dllapi.h>
 #include <com/sun/star/awt/XControlModel.hpp>
 #include <com/sun/star/lang/XComponent.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
@@ -50,7 +51,7 @@ typedef ::cppu::WeakAggImplHelper6  <   
css::awt::XControlModel
                                     ,   css::util::XCloneable
                                     >   UnoControlModel_Base;
 
-class UnoControlModel : public UnoControlModel_Base
+class TOOLKIT_DLLPUBLIC UnoControlModel : public UnoControlModel_Base
                        ,public ::comphelper::OPropertySetHelper
 {
 private:
diff --git a/include/toolkit/controls/unocontrols.hxx 
b/include/toolkit/controls/unocontrols.hxx
index c00690ae8b13..5edf67c50909 100644
--- a/include/toolkit/controls/unocontrols.hxx
+++ b/include/toolkit/controls/unocontrols.hxx
@@ -612,7 +612,7 @@ public:
 
 
 
-class UnoControlFixedTextModel final : public UnoControlModel
+class TOOLKIT_DLLPUBLIC UnoControlFixedTextModel final : public UnoControlModel
 {
     css::uno::Any      ImplGetDefaultValue( sal_uInt16 nPropId ) const 
override;
     ::cppu::IPropertyArrayHelper& getInfoHelper() override;

Reply via email to