dbaccess/source/core/api/SingleSelectQueryComposer.cxx |   24 +++++++-
 dbaccess/source/core/api/TableDeco.cxx                 |    8 ++
 dbaccess/source/core/api/querycontainer.cxx            |    7 ++
 dbaccess/source/core/api/table.cxx                     |    8 ++
 dbaccess/source/core/api/tablecontainer.cxx            |    8 ++
 dbaccess/source/core/api/viewcontainer.cxx             |    8 ++
 dbaccess/source/core/dataaccess/ContentHelper.cxx      |    8 ++
 dbaccess/source/core/dataaccess/commanddefinition.cxx  |   17 +++++
 dbaccess/source/core/dataaccess/datasource.cxx         |    4 -
 dbaccess/source/core/dataaccess/documentcontainer.cxx  |   17 +++++
 dbaccess/source/core/inc/SingleSelectQueryComposer.hxx |    5 +
 dbaccess/source/inc/apitools.hxx                       |   50 -----------------
 dbaccess/source/ui/uno/ColumnModel.cxx                 |   17 +++++
 dbaccess/source/ui/uno/ColumnModel.hxx                 |    5 +
 dbaccess/source/ui/uno/composerdialogs.cxx             |   16 +++++
 dbaccess/source/ui/uno/composerdialogs.hxx             |    4 +
 dbaccess/source/ui/uno/textconnectionsettings_uno.cxx  |    5 +
 dbaccess/source/ui/uno/unoDirectSql.cxx                |   17 +++++
 dbaccess/source/ui/uno/unoDirectSql.hxx                |    4 +
 19 files changed, 162 insertions(+), 70 deletions(-)

New commits:
commit f47a91cc6f1678604c5694ca3987c2f848193b09
Author:     Julien Nabet <[email protected]>
AuthorDate: Wed Nov 10 20:07:52 2021 +0100
Commit:     Julien Nabet <[email protected]>
CommitDate: Wed Nov 10 22:02:52 2021 +0100

    Replace some macros in dbaccess part 3
    
    Remove IMPLEMENT_SERVICE_INFO1 + IMPLEMENT_SERVICE_INFO2
    + DECLARE_PROPERTYCONTAINER_DEFAULTS + DECLARE_PROPERTYCONTAINER_DEFAULTS
    + IMPLEMENT_PROPERTYCONTAINER_DEFAULTS2
    + DECL_PROP3 (unused)
    + DECL_PROP2_IFACE
    
    Change-Id: Idf18179218b9b1f2da8e4354d8e4909edc925143
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125011
    Tested-by: Jenkins
    Reviewed-by: Julien Nabet <[email protected]>

diff --git a/dbaccess/source/core/api/SingleSelectQueryComposer.cxx 
b/dbaccess/source/core/api/SingleSelectQueryComposer.cxx
index 94ddd8600a8a..04f233f893b4 100644
--- a/dbaccess/source/core/api/SingleSelectQueryComposer.cxx
+++ b/dbaccess/source/core/api/SingleSelectQueryComposer.cxx
@@ -278,7 +278,12 @@ void SAL_CALL OSingleSelectQueryComposer::disposing()
 }
 
 
IMPLEMENT_FORWARD_XINTERFACE3(OSingleSelectQueryComposer,OSubComponent,OSingleSelectQueryComposer_BASE,OPropertyContainer)
-IMPLEMENT_SERVICE_INFO1(OSingleSelectQueryComposer,"org.openoffice.comp.dba.OSingleSelectQueryComposer",SERVICE_NAME_SINGLESELECTQUERYCOMPOSER)
+IMPLEMENT_SERVICE_INFO_IMPLNAME(OSingleSelectQueryComposer, 
"org.openoffice.comp.dba.OSingleSelectQueryComposer")
+IMPLEMENT_SERVICE_INFO_SUPPORTS(OSingleSelectQueryComposer)
+css::uno::Sequence< OUString > SAL_CALL 
OSingleSelectQueryComposer::getSupportedServiceNames()
+{
+    return { SERVICE_NAME_SINGLESELECTQUERYCOMPOSER };
+}
 
 css::uno::Sequence<sal_Int8> OSingleSelectQueryComposer::getImplementationId()
 {
@@ -294,7 +299,22 @@ css::uno::Sequence< css::uno::Type > 
OSingleSelectQueryComposer::getTypes()
     );
 }
 
-IMPLEMENT_PROPERTYCONTAINER_DEFAULTS(OSingleSelectQueryComposer)
+css::uno::Reference< css::beans::XPropertySetInfo >  SAL_CALL 
OSingleSelectQueryComposer::getPropertySetInfo()
+{
+    Reference< XPropertySetInfo > xInfo( createPropertySetInfo( 
getInfoHelper() ) );
+    return xInfo;
+}
+::cppu::IPropertyArrayHelper& OSingleSelectQueryComposer::getInfoHelper()
+{
+    return *OSingleSelectQueryComposer::getArrayHelper();
+}
+::cppu::IPropertyArrayHelper* OSingleSelectQueryComposer::createArrayHelper( ) 
const
+{
+    css::uno::Sequence< css::beans::Property > aProps;
+    describeProperties(aProps);
+    return new ::cppu::OPropertyArrayHelper(aProps);
+}
+
 
 // XSingleSelectQueryAnalyzer
 OUString SAL_CALL OSingleSelectQueryComposer::getQuery(  )
diff --git a/dbaccess/source/core/api/TableDeco.cxx 
b/dbaccess/source/core/api/TableDeco.cxx
index 1448c657abd4..df93f0ad4cc0 100644
--- a/dbaccess/source/core/api/TableDeco.cxx
+++ b/dbaccess/source/core/api/TableDeco.cxx
@@ -350,7 +350,13 @@ void ODBTableDecorator::construct()
 }
 
 // XServiceInfo
-IMPLEMENT_SERVICE_INFO1(ODBTableDecorator, 
"com.sun.star.sdb.dbaccess.ODBTableDecorator", SERVICE_SDBCX_TABLE)
+IMPLEMENT_SERVICE_INFO_IMPLNAME(ODBTableDecorator, 
"com.sun.star.sdb.dbaccess.ODBTableDecorator")
+IMPLEMENT_SERVICE_INFO_SUPPORTS(ODBTableDecorator)
+css::uno::Sequence< OUString > SAL_CALL 
ODBTableDecorator::getSupportedServiceNames()
+{
+    return { SERVICE_SDBCX_TABLE };
+}
+
 
 Any SAL_CALL ODBTableDecorator::queryInterface( const Type & rType )
 {
diff --git a/dbaccess/source/core/api/querycontainer.cxx 
b/dbaccess/source/core/api/querycontainer.cxx
index cebb70cf1cb2..96c01cf120c8 100644
--- a/dbaccess/source/core/api/querycontainer.cxx
+++ b/dbaccess/source/core/api/querycontainer.cxx
@@ -131,7 +131,12 @@ void OQueryContainer::disposing()
 }
 
 // XServiceInfo
-IMPLEMENT_SERVICE_INFO2(OQueryContainer, 
"com.sun.star.sdb.dbaccess.OQueryContainer", SERVICE_SDBCX_CONTAINER, 
SERVICE_SDB_QUERIES)
+IMPLEMENT_SERVICE_INFO_IMPLNAME(OQueryContainer, 
"com.sun.star.sdb.dbaccess.OQueryContainer")
+IMPLEMENT_SERVICE_INFO_SUPPORTS(OQueryContainer)
+css::uno::Sequence< OUString > SAL_CALL 
OQueryContainer::getSupportedServiceNames()
+{
+    return { SERVICE_SDBCX_CONTAINER, SERVICE_SDB_QUERIES };
+}
 
 // XDataDescriptorFactory
 Reference< XPropertySet > SAL_CALL OQueryContainer::createDataDescriptor(  )
diff --git a/dbaccess/source/core/api/table.cxx 
b/dbaccess/source/core/api/table.cxx
index b4b6e47cd57d..d355be499a75 100644
--- a/dbaccess/source/core/api/table.cxx
+++ b/dbaccess/source/core/api/table.cxx
@@ -233,7 +233,13 @@ void ODBTable::construct()
 }
 
 // XServiceInfo
-IMPLEMENT_SERVICE_INFO1(ODBTable, "com.sun.star.sdb.dbaccess.ODBTable", 
SERVICE_SDBCX_TABLE)
+IMPLEMENT_SERVICE_INFO_IMPLNAME(ODBTable, "com.sun.star.sdb.dbaccess.ODBTable")
+IMPLEMENT_SERVICE_INFO_SUPPORTS(ODBTable)
+css::uno::Sequence< OUString > SAL_CALL ODBTable::getSupportedServiceNames()
+{
+    return { SERVICE_SDBCX_TABLE };
+}
+
 
 Any SAL_CALL ODBTable::queryInterface( const Type & rType )
 {
diff --git a/dbaccess/source/core/api/tablecontainer.cxx 
b/dbaccess/source/core/api/tablecontainer.cxx
index 51ef6df327d7..f052128fb926 100644
--- a/dbaccess/source/core/api/tablecontainer.cxx
+++ b/dbaccess/source/core/api/tablecontainer.cxx
@@ -123,7 +123,13 @@ OUString OTableContainer::getTableTypeRestriction() const
 }
 
 // XServiceInfo
-IMPLEMENT_SERVICE_INFO2(OTableContainer, 
"com.sun.star.sdb.dbaccess.OTableContainer", SERVICE_SDBCX_CONTAINER, 
SERVICE_SDBCX_TABLES)
+IMPLEMENT_SERVICE_INFO_IMPLNAME(OTableContainer, 
"com.sun.star.sdb.dbaccess.OTableContainer")
+IMPLEMENT_SERVICE_INFO_SUPPORTS(OTableContainer)
+css::uno::Sequence< OUString > SAL_CALL 
OTableContainer::getSupportedServiceNames()
+{
+    return { SERVICE_SDBCX_CONTAINER, SERVICE_SDBCX_TABLES };
+}
+
 
 namespace
 {
diff --git a/dbaccess/source/core/api/viewcontainer.cxx 
b/dbaccess/source/core/api/viewcontainer.cxx
index 796e23c9f49d..79dd2bc3a795 100644
--- a/dbaccess/source/core/api/viewcontainer.cxx
+++ b/dbaccess/source/core/api/viewcontainer.cxx
@@ -61,7 +61,13 @@ OViewContainer::~OViewContainer()
 }
 
 // XServiceInfo
-IMPLEMENT_SERVICE_INFO2(OViewContainer, 
"com.sun.star.sdb.dbaccess.OViewContainer", SERVICE_SDBCX_CONTAINER, 
SERVICE_SDBCX_TABLES)
+IMPLEMENT_SERVICE_INFO_IMPLNAME(OViewContainer, 
"com.sun.star.sdb.dbaccess.OViewContainer")
+IMPLEMENT_SERVICE_INFO_SUPPORTS(OViewContainer)
+css::uno::Sequence< OUString > SAL_CALL 
OViewContainer::getSupportedServiceNames()
+{
+    return { SERVICE_SDBCX_CONTAINER, SERVICE_SDBCX_TABLES };
+}
+
 
 ObjectType OViewContainer::createObject(const OUString& _rName)
 {
diff --git a/dbaccess/source/core/dataaccess/ContentHelper.cxx 
b/dbaccess/source/core/dataaccess/ContentHelper.cxx
index 32c89c877f39..afa2771310df 100644
--- a/dbaccess/source/core/dataaccess/ContentHelper.cxx
+++ b/dbaccess/source/core/dataaccess/ContentHelper.cxx
@@ -86,7 +86,13 @@ void SAL_CALL OContentHelper::disposing()
     m_xParentContainer = nullptr;
 }
 
-IMPLEMENT_SERVICE_INFO1(OContentHelper,"com.sun.star.comp.sdb.Content","com.sun.star.ucb.Content");
+IMPLEMENT_SERVICE_INFO_IMPLNAME(OContentHelper, 
"com.sun.star.comp.sdb.Content")
+IMPLEMENT_SERVICE_INFO_SUPPORTS(OContentHelper)
+css::uno::Sequence< OUString > SAL_CALL 
OContentHelper::getSupportedServiceNames()
+{
+    return { "com.sun.star.ucb.Content" };
+}
+
 
 css::uno::Sequence<sal_Int8> OContentHelper::getUnoTunnelId()
 {
diff --git a/dbaccess/source/core/dataaccess/commanddefinition.cxx 
b/dbaccess/source/core/dataaccess/commanddefinition.cxx
index 2a5397018b0e..f460911f3392 100644
--- a/dbaccess/source/core/dataaccess/commanddefinition.cxx
+++ b/dbaccess/source/core/dataaccess/commanddefinition.cxx
@@ -89,7 +89,22 @@ css::uno::Sequence< css::uno::Type > 
OCommandDefinition::getTypes()
     );
 }
 IMPLEMENT_FORWARD_XINTERFACE2( 
OCommandDefinition,OComponentDefinition,OCommandDefinition_Base)
-IMPLEMENT_PROPERTYCONTAINER_DEFAULTS2(OCommandDefinition,OCommandDefinition_PROP)
+css::uno::Reference< css::beans::XPropertySetInfo >  SAL_CALL 
OCommandDefinition::getPropertySetInfo()
+{
+    Reference< XPropertySetInfo > xInfo( createPropertySetInfo( 
getInfoHelper() ) );
+    return xInfo;
+}
+::cppu::IPropertyArrayHelper& OCommandDefinition::getInfoHelper()
+{
+    return *OCommandDefinition_PROP::getArrayHelper();
+}
+::cppu::IPropertyArrayHelper* OCommandDefinition::createArrayHelper( ) const
+{
+    css::uno::Sequence< css::beans::Property > aProps;
+    describeProperties(aProps);
+    return new ::cppu::OPropertyArrayHelper(aProps);
+}
+
 
 OUString SAL_CALL OCommandDefinition::getImplementationName()
 {
diff --git a/dbaccess/source/core/dataaccess/datasource.cxx 
b/dbaccess/source/core/dataaccess/datasource.cxx
index 5239e19b8bc4..76d58dcaac76 100644
--- a/dbaccess/source/core/dataaccess/datasource.cxx
+++ b/dbaccess/source/core/dataaccess/datasource.cxx
@@ -802,9 +802,9 @@ Reference< XPropertySetInfo >  
ODatabaseSource::getPropertySetInfo()
         DECL_PROP1_BOOL(ISREADONLY,                                         
READONLY);
         DECL_PROP1(LAYOUTINFORMATION,           Sequence< PropertyValue >,  
BOUND);
         DECL_PROP1(NAME,                        OUString,            READONLY);
-        DECL_PROP2_IFACE(NUMBERFORMATSSUPPLIER, XNumberFormatsSupplier,     
READONLY, TRANSIENT);
+        DECL_PROP_IMPL(NUMBERFORMATSSUPPLIER, 
cppu::UnoType<XNumberFormatsSupplier>::get()) 
css::beans::PropertyAttribute::READONLY | 
css::beans::PropertyAttribute::TRANSIENT);
         DECL_PROP1(PASSWORD,                    OUString,            
TRANSIENT);
-        DECL_PROP2_IFACE(SETTINGS,              XPropertySet,               
BOUND, READONLY);
+        DECL_PROP_IMPL(SETTINGS, cppu::UnoType<XPropertySet>::get()) 
css::beans::PropertyAttribute::BOUND | css::beans::PropertyAttribute::READONLY);
         DECL_PROP1_BOOL(SUPPRESSVERSIONCL,                                  
BOUND);
         DECL_PROP1(TABLEFILTER,                 Sequence< OUString >,BOUND);
         DECL_PROP1(TABLETYPEFILTER,             Sequence< OUString >,BOUND);
diff --git a/dbaccess/source/core/dataaccess/documentcontainer.cxx 
b/dbaccess/source/core/dataaccess/documentcontainer.cxx
index 8267b0a571ee..6a2a470b57ec 100644
--- a/dbaccess/source/core/dataaccess/documentcontainer.cxx
+++ b/dbaccess/source/core/dataaccess/documentcontainer.cxx
@@ -125,7 +125,22 @@ css::uno::Sequence< css::uno::Type > 
ODocumentContainer::getTypes()
 }
 IMPLEMENT_SERVICE_INFO_IMPLNAME(ODocumentContainer, 
"com.sun.star.comp.dba.ODocumentContainer");
 IMPLEMENT_SERVICE_INFO_SUPPORTS(ODocumentContainer);
-IMPLEMENT_PROPERTYCONTAINER_DEFAULTS(ODocumentContainer)
+css::uno::Reference< css::beans::XPropertySetInfo >  SAL_CALL 
ODocumentContainer::getPropertySetInfo()
+{
+    Reference< XPropertySetInfo > xInfo( createPropertySetInfo( 
getInfoHelper() ) );
+    return xInfo;
+}
+::cppu::IPropertyArrayHelper& ODocumentContainer::getInfoHelper()
+{
+    return *ODocumentContainer::getArrayHelper();
+}
+::cppu::IPropertyArrayHelper* ODocumentContainer::createArrayHelper( ) const
+{
+    css::uno::Sequence< css::beans::Property > aProps;
+    describeProperties(aProps);
+    return new ::cppu::OPropertyArrayHelper(aProps);
+}
+
 
 Sequence< OUString > SAL_CALL ODocumentContainer::getSupportedServiceNames(  )
 {
diff --git a/dbaccess/source/core/inc/SingleSelectQueryComposer.hxx 
b/dbaccess/source/core/inc/SingleSelectQueryComposer.hxx
index 356d00aafdb0..a0edfd195a69 100644
--- a/dbaccess/source/core/inc/SingleSelectQueryComposer.hxx
+++ b/dbaccess/source/core/inc/SingleSelectQueryComposer.hxx
@@ -218,7 +218,10 @@ namespace dbaccess
         // XServiceInfo
         DECLARE_SERVICE_INFO();
 
-        DECLARE_PROPERTYCONTAINER_DEFAULTS();
+        virtual css::uno::Reference< css::beans::XPropertySetInfo>  SAL_CALL 
getPropertySetInfo() override;
+        virtual ::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper() 
override;
+        virtual ::cppu::IPropertyArrayHelper* createArrayHelper() const 
override;
+
 
         // css::sdb::XSingleSelectQueryComposer
         virtual OUString SAL_CALL getElementaryQuery() override;
diff --git a/dbaccess/source/inc/apitools.hxx b/dbaccess/source/inc/apitools.hxx
index 00001864b4c8..4e21b43a489d 100644
--- a/dbaccess/source/inc/apitools.hxx
+++ b/dbaccess/source/inc/apitools.hxx
@@ -77,50 +77,6 @@ public:
     }   \
 
 
-
-#define IMPLEMENT_SERVICE_INFO1(classname, implasciiname, serviceasciiname) \
-    IMPLEMENT_SERVICE_INFO_IMPLNAME(classname, implasciiname)   \
-    IMPLEMENT_SERVICE_INFO_SUPPORTS(classname)  \
-    css::uno::Sequence< OUString > SAL_CALL 
classname::getSupportedServiceNames(  )  \
-    {   \
-        return { serviceasciiname }; \
-    }   \
-
-
-#define IMPLEMENT_SERVICE_INFO2(classname, implasciiname, serviceasciiname1, 
serviceasciiname2) \
-    IMPLEMENT_SERVICE_INFO_IMPLNAME(classname, implasciiname)   \
-    IMPLEMENT_SERVICE_INFO_SUPPORTS(classname)  \
-    css::uno::Sequence< OUString > SAL_CALL 
classname::getSupportedServiceNames(  )  \
-    {   \
-        return { serviceasciiname1, serviceasciiname2 };    \
-    }
-
-
-// helper for declaring/implementing classes based on the OPropertyContainer 
and an OPropertyArrayUsageHelper
-#define DECLARE_PROPERTYCONTAINER_DEFAULTS( )   \
-    virtual css::uno::Reference< css::beans::XPropertySetInfo>  SAL_CALL 
getPropertySetInfo() override; \
-    virtual ::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper() override; \
-    virtual ::cppu::IPropertyArrayHelper* createArrayHelper( ) const override
-
-#define IMPLEMENT_PROPERTYCONTAINER_DEFAULTS2( classname , baseclass1)  \
-    css::uno::Reference< css::beans::XPropertySetInfo >  SAL_CALL 
classname::getPropertySetInfo()  \
-    {   \
-        Reference< XPropertySetInfo > xInfo( createPropertySetInfo( 
getInfoHelper() ) );    \
-        return xInfo;   \
-    }   \
-    ::cppu::IPropertyArrayHelper& classname::getInfoHelper()    \
-    {   \
-    return *baseclass1::getArrayHelper();   \
-    }   \
-    ::cppu::IPropertyArrayHelper* classname::createArrayHelper( ) const \
-    {   \
-        css::uno::Sequence< css::beans::Property > aProps;    \
-        describeProperties(aProps); \
-        return new ::cppu::OPropertyArrayHelper(aProps);    \
-    }
-#define IMPLEMENT_PROPERTYCONTAINER_DEFAULTS( classname )   \
-    IMPLEMENT_PROPERTYCONTAINER_DEFAULTS2( classname, classname )
-
 // helper for implementing the createArrayHelper
 #define BEGIN_PROPERTY_SEQUENCE(count)  \
     css::uno::Sequence< css::beans::Property> aDescriptor(count); \
@@ -145,15 +101,9 @@ public:
 #define DECL_PROP1_BOOL(varname, attrib1)   \
     DECL_PROP_IMPL(varname, cppu::UnoType<bool>::get()) 
css::beans::PropertyAttribute::attrib1)
 
-#define DECL_PROP2_IFACE(varname, iface, attrib1, attrib2)  \
-    DECL_PROP_IMPL(varname, cppu::UnoType<iface>::get()) 
css::beans::PropertyAttribute::attrib1 | css::beans::PropertyAttribute::attrib2)
-
 #define DECL_PROP2(varname, type, attrib1, attrib2) \
     DECL_PROP_IMPL(varname, cppu::UnoType<type>::get()) 
css::beans::PropertyAttribute::attrib1 | css::beans::PropertyAttribute::attrib2)
 
-#define DECL_PROP3(varname, type, attrib1, attrib2, attrib3)    \
-    DECL_PROP_IMPL(varname, cppu::UnoType<type>::get()) 
css::beans::PropertyAttribute::attrib1 | css::beans::PropertyAttribute::attrib2 
| css::beans::PropertyAttribute::attrib3)
-
 #define END_PROPERTY_SEQUENCE()                             \
     OSL_ENSURE(nPos == aDescriptor.getLength(), "forgot to adjust the count 
?");    \
 
diff --git a/dbaccess/source/ui/uno/ColumnModel.cxx 
b/dbaccess/source/ui/uno/ColumnModel.cxx
index f2b100fe4b05..9892e514376a 100644
--- a/dbaccess/source/ui/uno/ColumnModel.cxx
+++ b/dbaccess/source/ui/uno/ColumnModel.cxx
@@ -111,7 +111,22 @@ css::uno::Sequence< css::uno::Type > 
OColumnControlModel::getTypes()
         OPropertyContainer::getTypes( )
     );
 }
-IMPLEMENT_PROPERTYCONTAINER_DEFAULTS(OColumnControlModel)
+css::uno::Reference< css::beans::XPropertySetInfo >  SAL_CALL 
OColumnControlModel::getPropertySetInfo()
+{
+    Reference< XPropertySetInfo > xInfo( createPropertySetInfo( 
getInfoHelper() ) );
+    return xInfo;
+}
+::cppu::IPropertyArrayHelper& OColumnControlModel::getInfoHelper()
+{
+    return *OColumnControlModel::getArrayHelper();
+}
+::cppu::IPropertyArrayHelper* OColumnControlModel::createArrayHelper( ) const
+{
+    css::uno::Sequence< css::beans::Property > aProps;
+    describeProperties(aProps);
+    return new ::cppu::OPropertyArrayHelper(aProps);
+}
+
 OUString SAL_CALL OColumnControlModel::getImplementationName()
 {
     return "com.sun.star.comp.dbu.OColumnControlModel";
diff --git a/dbaccess/source/ui/uno/ColumnModel.hxx 
b/dbaccess/source/ui/uno/ColumnModel.hxx
index 2b492f61372d..2a1d768476a5 100644
--- a/dbaccess/source/ui/uno/ColumnModel.hxx
+++ b/dbaccess/source/ui/uno/ColumnModel.hxx
@@ -85,7 +85,10 @@ public:
     virtual void SAL_CALL read(const css::uno::Reference< 
css::io::XObjectInputStream>& _rxInStream) override;
 
 // OPropertyArrayUsageHelper
-    DECLARE_PROPERTYCONTAINER_DEFAULTS( );
+    virtual css::uno::Reference< css::beans::XPropertySetInfo>  SAL_CALL 
getPropertySetInfo() override;
+    virtual ::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper() override;
+    virtual ::cppu::IPropertyArrayHelper* createArrayHelper() const override;
+
 
     virtual css::uno::Reference< css::util::XCloneable > SAL_CALL createClone( 
 ) override;
 };
diff --git a/dbaccess/source/ui/uno/composerdialogs.cxx 
b/dbaccess/source/ui/uno/composerdialogs.cxx
index 4daafb73a9fe..712dbe6bcc73 100644
--- a/dbaccess/source/ui/uno/composerdialogs.cxx
+++ b/dbaccess/source/ui/uno/composerdialogs.cxx
@@ -80,7 +80,21 @@ constexpr OUStringLiteral PROPERTY_ROWSET = u"RowSet";
         return css::uno::Sequence<sal_Int8>();
     }
 
-    IMPLEMENT_PROPERTYCONTAINER_DEFAULTS( ComposerDialog )
+    css::uno::Reference< css::beans::XPropertySetInfo >  SAL_CALL 
ComposerDialog::getPropertySetInfo()
+    {
+        Reference< XPropertySetInfo > xInfo( createPropertySetInfo( 
getInfoHelper() ) );
+        return xInfo;
+    }
+    ::cppu::IPropertyArrayHelper& ComposerDialog::getInfoHelper()
+    {
+        return *ComposerDialog::getArrayHelper();
+    }
+    ::cppu::IPropertyArrayHelper* ComposerDialog::createArrayHelper( ) const
+    {
+        css::uno::Sequence< css::beans::Property > aProps;
+        describeProperties(aProps);
+        return new ::cppu::OPropertyArrayHelper(aProps);
+    }
 
     std::unique_ptr<weld::DialogController> ComposerDialog::createDialog(const 
css::uno::Reference<css::awt::XWindow>& rParent)
     {
diff --git a/dbaccess/source/ui/uno/composerdialogs.hxx 
b/dbaccess/source/ui/uno/composerdialogs.hxx
index bc1468a034b1..a2f68fe02223 100644
--- a/dbaccess/source/ui/uno/composerdialogs.hxx
+++ b/dbaccess/source/ui/uno/composerdialogs.hxx
@@ -55,7 +55,9 @@ namespace dbaui
     public:
         virtual css::uno::Sequence<sal_Int8> SAL_CALL getImplementationId() 
override;
 
-        DECLARE_PROPERTYCONTAINER_DEFAULTS( );
+        virtual css::uno::Reference< css::beans::XPropertySetInfo>  SAL_CALL 
getPropertySetInfo() override;
+        virtual ::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper() 
override;
+        virtual ::cppu::IPropertyArrayHelper* createArrayHelper() const 
override;
 
     protected:
         // own overridables
diff --git a/dbaccess/source/ui/uno/textconnectionsettings_uno.cxx 
b/dbaccess/source/ui/uno/textconnectionsettings_uno.cxx
index 78a470ddd5a0..f98c388d6225 100644
--- a/dbaccess/source/ui/uno/textconnectionsettings_uno.cxx
+++ b/dbaccess/source/ui/uno/textconnectionsettings_uno.cxx
@@ -74,7 +74,10 @@ namespace dbaui
         virtual css::uno::Sequence<sal_Int8> SAL_CALL getImplementationId() 
override;
 
         DECLARE_SERVICE_INFO();
-        DECLARE_PROPERTYCONTAINER_DEFAULTS( );
+        virtual css::uno::Reference< css::beans::XPropertySetInfo>  SAL_CALL 
getPropertySetInfo() override;
+        virtual ::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper() 
override;
+        virtual ::cppu::IPropertyArrayHelper* createArrayHelper() const 
override;
+
 
         virtual void SAL_CALL setFastPropertyValue_NoBroadcast( sal_Int32 
nHandle, const Any& rValue ) override;
         virtual sal_Bool SAL_CALL convertFastPropertyValue( Any& 
rConvertedValue, Any& rOldValue, sal_Int32 nHandle, const Any& rValue) override;
diff --git a/dbaccess/source/ui/uno/unoDirectSql.cxx 
b/dbaccess/source/ui/uno/unoDirectSql.cxx
index 0fa9b6ee5e19..14f15dc40e44 100644
--- a/dbaccess/source/ui/uno/unoDirectSql.cxx
+++ b/dbaccess/source/ui/uno/unoDirectSql.cxx
@@ -72,7 +72,22 @@ namespace dbaui
         return { SERVICE_SDB_DIRECTSQLDIALOG };
     }
 
-    IMPLEMENT_PROPERTYCONTAINER_DEFAULTS( ODirectSQLDialog )
+    css::uno::Reference< css::beans::XPropertySetInfo >  SAL_CALL 
ODirectSQLDialog::getPropertySetInfo()
+    {
+        Reference< XPropertySetInfo > xInfo( createPropertySetInfo( 
getInfoHelper() ) );
+        return xInfo;
+    }
+    ::cppu::IPropertyArrayHelper& ODirectSQLDialog::getInfoHelper()
+    {
+        return *ODirectSQLDialog::getArrayHelper();
+    }
+    ::cppu::IPropertyArrayHelper* ODirectSQLDialog::createArrayHelper( ) const
+    {
+        css::uno::Sequence< css::beans::Property > aProps;
+        describeProperties(aProps);
+        return new ::cppu::OPropertyArrayHelper(aProps);
+    }
+
 
     std::unique_ptr<weld::DialogController> 
ODirectSQLDialog::createDialog(const css::uno::Reference<css::awt::XWindow>& 
rParent)
     {
diff --git a/dbaccess/source/ui/uno/unoDirectSql.hxx 
b/dbaccess/source/ui/uno/unoDirectSql.hxx
index 3030eabeaae4..679c28c5060c 100644
--- a/dbaccess/source/ui/uno/unoDirectSql.hxx
+++ b/dbaccess/source/ui/uno/unoDirectSql.hxx
@@ -47,7 +47,9 @@ namespace dbaui
 
         DECLARE_SERVICE_INFO();
 
-        DECLARE_PROPERTYCONTAINER_DEFAULTS( );
+        virtual css::uno::Reference< css::beans::XPropertySetInfo>  SAL_CALL 
getPropertySetInfo() override;
+        virtual ::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper() 
override;
+        virtual ::cppu::IPropertyArrayHelper* createArrayHelper() const 
override;
 
     protected:
         // OGenericUnoDialog overridables

Reply via email to