toolkit/inc/toolkit/controls/tabpagemodel.hxx         |    1 
 toolkit/source/controls/controlmodelcontainerbase.cxx |   22 ++++++++++++------
 toolkit/source/helper/registerservices.cxx            |   16 ++++++++-----
 3 files changed, 25 insertions(+), 14 deletions(-)

New commits:
commit 6c04efa4d115d920d918f4efa608af366b79d903
Author: Norbert Thiebaud <nthieb...@gmail.com>
Date:   Mon Aug 20 19:41:14 2012 -0500

    gridfixes: #i117145#
    
    Change-Id: I215bcfca6a29274f7397d1100e3674d747ae19f2
    Reviewed-on: https://gerrit.libreoffice.org/531
    Reviewed-by: Miklos Vajna <vmik...@suse.cz>
    Tested-by: Miklos Vajna <vmik...@suse.cz>

diff --git a/toolkit/inc/toolkit/controls/tabpagemodel.hxx 
b/toolkit/inc/toolkit/controls/tabpagemodel.hxx
index 79451e4..b8ef2d5 100644
--- a/toolkit/inc/toolkit/controls/tabpagemodel.hxx
+++ b/toolkit/inc/toolkit/controls/tabpagemodel.hxx
@@ -34,7 +34,6 @@
 #include <com/sun/star/awt/tab/XTabPage.hpp>
 #include <com/sun/star/resource/XStringResourceResolver.hpp>
 #include <com/sun/star/lang/XInitialization.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
 #include "toolkit/helper/servicenames.hxx"
 #include "toolkit/helper/macros.hxx"
 #include <toolkit/controls/unocontrolcontainer.hxx>
diff --git a/toolkit/source/controls/controlmodelcontainerbase.cxx 
b/toolkit/source/controls/controlmodelcontainerbase.cxx
index 1fd2996..3943007 100644
--- a/toolkit/source/controls/controlmodelcontainerbase.cxx
+++ b/toolkit/source/controls/controlmodelcontainerbase.cxx
@@ -39,11 +39,13 @@
 #include "toolkit/controls/formattedcontrol.hxx"
 #include "toolkit/controls/roadmapcontrol.hxx"
 #include "toolkit/controls/tkscrollbar.hxx"
+#include "toolkit/controls/tabpagemodel.hxx"
 #include <toolkit/controls/stdtabcontroller.hxx>
 #include <com/sun/star/awt/PosSize.hpp>
 #include <com/sun/star/awt/WindowAttribute.hpp>
 #include <com/sun/star/resource/XStringResourceResolver.hpp>
 #include <com/sun/star/graphic/XGraphicProvider.hpp>
+#include <com/sun/star/lang/XInitialization.hpp>
 #include <cppuhelper/typeprovider.hxx>
 #include <tools/debug.hxx>
 #include <tools/diagnose_ex.h>
@@ -390,6 +392,8 @@ Reference< XInterface > 
ControlModelContainerBase::createInstance( const ::rtl::
         pNewModel = new OGeometryControlModel< UnoControlTabPageContainerModel 
>( xFactory );
     else if ( aServiceSpecifier.compareToAscii( 
szServiceName_UnoMultiPageModel ) == 0 )
         pNewModel = new OGeometryControlModel< UnoMultiPageModel >( xFactory );
+    else if ( aServiceSpecifier.compareToAscii( 
szServiceName_UnoControlTabPageModel ) == 0 )
+        pNewModel = new OGeometryControlModel< UnoControlTabPageModel >( 
xFactory );
     else if ( aServiceSpecifier.compareToAscii( szServiceName_UnoPageModel ) 
== 0 )
         pNewModel = new OGeometryControlModel< UnoPageModel >( xFactory );
     else if ( aServiceSpecifier.compareToAscii( szServiceName_UnoFrameModel ) 
== 0 )
@@ -422,9 +426,13 @@ Reference< XInterface > 
ControlModelContainerBase::createInstance( const ::rtl::
     return xNewModel;
 }
 
-Reference< XInterface > 
ControlModelContainerBase::createInstanceWithArguments( const ::rtl::OUString& 
ServiceSpecifier, const Sequence< Any >& /* Arguments */ ) throw(Exception, 
RuntimeException)
+Reference< XInterface > 
ControlModelContainerBase::createInstanceWithArguments( const ::rtl::OUString& 
ServiceSpecifier, const Sequence< Any >& i_arguments ) throw(Exception, 
RuntimeException)
 {
-    return createInstance( ServiceSpecifier );
+    const Reference< XInterface > xInstance( createInstance( ServiceSpecifier 
) );
+    const Reference< XInitialization > xInstanceInit( xInstance, UNO_QUERY );
+    ENSURE_OR_RETURN( xInstanceInit.is(), 
"ControlModelContainerBase::createInstanceWithArguments: can't pass the 
arguments!", xInstance );
+    xInstanceInit->initialize( i_arguments );
+    return xInstance;
 }
 
 Sequence< ::rtl::OUString > 
ControlModelContainerBase::getAvailableServiceNames() throw(RuntimeException)
@@ -1389,7 +1397,7 @@ void ControlContainerBase::ImplInsertControl( Reference< 
XControlModel >& rxMode
     Reference < XControl > xCtrl;
     maContext.createComponent( aDefCtrl, xCtrl );
 
-    DBG_ASSERT( xCtrl.is(), "UnoDialogControl::ImplInsertControl: could not 
create the control!" );
+    DBG_ASSERT( xCtrl.is(), "ControlContainerBase::ImplInsertControl: could 
not create the control!" );
     if ( xCtrl.is() )
     {
         xCtrl->setModel( rxModel );
@@ -1605,7 +1613,7 @@ void ControlContainerBase::elementInserted( const 
ContainerEvent& Event ) throw(
 
     Event.Accessor >>= aName;
     Event.Element >>= xModel;
-    ENSURE_OR_RETURN_VOID( xModel.is(), "UnoDialogControl::elementInserted: 
illegal element!" );
+    ENSURE_OR_RETURN_VOID( xModel.is(), 
"ControlContainerBase::elementInserted: illegal element!" );
     try
     {
         ImplInsertControl( xModel, aName );
@@ -1626,7 +1634,7 @@ void ControlContainerBase::elementRemoved( const 
ContainerEvent& Event ) throw(R
 
     Reference< XControlModel > xModel;
     Event.Element >>= xModel;
-    ENSURE_OR_RETURN_VOID( xModel.is(), "UnoDialogControl::elementRemoved: 
illegal element!" );
+    ENSURE_OR_RETURN_VOID( xModel.is(), "ControlContainerBase::elementRemoved: 
illegal element!" );
     try
     {
         ImplRemoveControl( xModel );
@@ -1649,7 +1657,7 @@ void ControlContainerBase::elementReplaced( const 
ContainerEvent& Event ) throw(
     Event.ReplacedElement >>= xModel;
     try
     {
-        OSL_ENSURE( xModel.is(), "UnoDialogControl::elementReplaced: invalid 
ReplacedElement!" );
+        OSL_ENSURE( xModel.is(), "ControlContainerBase::elementReplaced: 
invalid ReplacedElement!" );
         if ( xModel.is() )
             ImplRemoveControl( xModel );
     }
@@ -1665,7 +1673,7 @@ void ControlContainerBase::elementReplaced( const 
ContainerEvent& Event ) throw(
     ::rtl::OUString aName;
     Event.Accessor >>= aName;
     Event.Element >>= xModel;
-    ENSURE_OR_RETURN_VOID( xModel.is(), "UnoDialogControl::elementReplaced: 
invalid new element!" );
+    ENSURE_OR_RETURN_VOID( xModel.is(), 
"ControlContainerBase::elementReplaced: invalid new element!" );
     try
     {
         ImplInsertControl( xModel, aName );
diff --git a/toolkit/source/helper/registerservices.cxx 
b/toolkit/source/helper/registerservices.cxx
index 3bb9ae6..f4a1a07 100644
--- a/toolkit/source/helper/registerservices.cxx
+++ b/toolkit/source/helper/registerservices.cxx
@@ -104,9 +104,10 @@ namespace toolkit
     ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > 
SAL_CALL ImplName##_CreateInstance( const ::com::sun::star::uno::Reference< 
::com::sun::star::lang::XMultiServiceFactory >& i_factory ) \
     { return ::com::sun::star::uno::Reference < 
::com::sun::star::uno::XInterface >( ( ::cppu::OWeakObject* ) new ImplName( 
i_factory ) ); }
 
-::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL 
UnoControlDialogModel_CreateInstance( const ::com::sun::star::uno::Reference< 
::com::sun::star::lang::XMultiServiceFactory >& i_factory )
-{
-    return ::com::sun::star::uno::Reference < 
::com::sun::star::uno::XInterface >( ( ::cppu::OWeakObject* ) new 
OGeometryControlModel<UnoControlDialogModel>( i_factory ) );
+#define IMPL_CREATE_INSTANCE_WITH_GEOMETRY( ImplName ) \
+    ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > 
SAL_CALL ImplName##_CreateInstance( const ::com::sun::star::uno::Reference< 
::com::sun::star::lang::XMultiServiceFactory >& i_factory ) \
+{ \
+    return ::com::sun::star::uno::Reference < 
::com::sun::star::uno::XInterface >( ( ::cppu::OWeakObject* ) new 
OGeometryControlModel< ImplName >( i_factory ) ); \
 }
 
 #define GET_FACTORY_WITH_IMPL_PREFIX( ClassName, ImplNamePrefix, ServiceName1, 
ServiceName2 ) \
@@ -194,6 +195,8 @@ IMPL_CREATEINSTANCE2( AnimatedImagesControl )
 IMPL_CREATEINSTANCE2( AnimatedImagesControlModel )
 IMPL_CREATEINSTANCE2( SpinningProgressControlModel )
 
+IMPL_CREATE_INSTANCE_WITH_GEOMETRY( UnoControlDialogModel )
+
 extern ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > 
SAL_CALL TreeControl_CreateInstance( const ::com::sun::star::uno::Reference< 
::com::sun::star::lang::XMultiServiceFactory >& );
 extern ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > 
SAL_CALL TreeControlModel_CreateInstance( const 
::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory 
>& );
 extern ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > 
SAL_CALL MutableTreeDataModel_CreateInstance( const 
::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory 
>& );
@@ -211,6 +214,7 @@ extern "C"
 
 TOOLKIT_DLLPUBLIC void* SAL_CALL tk_component_getFactory( const sal_Char* 
sImplementationName, void* _pServiceManager, void* _pRegistryKey )
 {
+
     void* pRet = NULL;
 
     if ( _pServiceManager )
@@ -293,13 +297,13 @@ TOOLKIT_DLLPUBLIC void* SAL_CALL tk_component_getFactory( 
const sal_Char* sImple
         GET_FACTORY( DefaultGridColumnModel, 
szServiceName_DefaultGridColumnModel, NULL );
         GET_FACTORY_WITH_IMPL_PREFIX( GridColumn, 
"org.openoffice.comp.toolkit", szServiceName_GridColumn, NULL );
         GET_FACTORY_WITH_IMPL_PREFIX( SortableGridDataModel, 
"org.openoffice.comp.toolkit", szServiceName_SortableGridDataModel, NULL );
-        GET_FACTORY_WITH_IMPL_PREFIX( AnimatedImagesControl, 
"org.openoffice.comp.toolkit", szServiceName_AnimatedImagesControl, NULL )
-        GET_FACTORY_WITH_IMPL_PREFIX( AnimatedImagesControlModel, 
"org.openoffice.comp.toolkit", szServiceName_AnimatedImagesControlModel, NULL )
-        GET_FACTORY_WITH_IMPL_PREFIX( SpinningProgressControlModel, 
"org.openoffice.comp.toolkit", szServiceName_SpinningProgressControlModel, NULL 
)
         GET_FACTORY( UnoControlTabPageModel, 
szServiceName_UnoControlTabPageModel, NULL )
         GET_FACTORY( UnoControlTabPage, szServiceName_UnoControlTabPage, NULL )
         GET_FACTORY( UnoControlTabPageContainerModel, 
szServiceName_UnoControlTabPageContainerModel, NULL )
         GET_FACTORY( UnoControlTabPageContainer, 
szServiceName_UnoControlTabPageContainer, NULL )
+        GET_FACTORY_WITH_IMPL_PREFIX( AnimatedImagesControl, 
"org.openoffice.comp.toolkit", szServiceName_AnimatedImagesControl, NULL )
+        GET_FACTORY_WITH_IMPL_PREFIX( AnimatedImagesControlModel, 
"org.openoffice.comp.toolkit", szServiceName_AnimatedImagesControlModel, NULL )
+        GET_FACTORY_WITH_IMPL_PREFIX( SpinningProgressControlModel, 
"org.openoffice.comp.toolkit", szServiceName_SpinningProgressControlModel, NULL 
)
 
         if ( rtl_str_compare( sImplementationName, 
"com.sun.star.awt.comp.AsyncCallback" ) == 0 )
             return comp_AsyncCallback_component_getFactory( 
sImplementationName, _pServiceManager, _pRegistryKey );
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to