Kaydet (Commit) 6c04efa4 authored tarafından Norbert Thiebaud's avatar Norbert Thiebaud Kaydeden (comit) Miklos Vajna

gridfixes: #i117145#

Change-Id: I215bcfca6a29274f7397d1100e3674d747ae19f2
Reviewed-on: https://gerrit.libreoffice.org/531Reviewed-by: 's avatarMiklos Vajna <vmiklos@suse.cz>
Tested-by: 's avatarMiklos Vajna <vmiklos@suse.cz>
üst 906cce25
...@@ -34,7 +34,6 @@ ...@@ -34,7 +34,6 @@
#include <com/sun/star/awt/tab/XTabPage.hpp> #include <com/sun/star/awt/tab/XTabPage.hpp>
#include <com/sun/star/resource/XStringResourceResolver.hpp> #include <com/sun/star/resource/XStringResourceResolver.hpp>
#include <com/sun/star/lang/XInitialization.hpp> #include <com/sun/star/lang/XInitialization.hpp>
#include <com/sun/star/uno/XComponentContext.hpp>
#include "toolkit/helper/servicenames.hxx" #include "toolkit/helper/servicenames.hxx"
#include "toolkit/helper/macros.hxx" #include "toolkit/helper/macros.hxx"
#include <toolkit/controls/unocontrolcontainer.hxx> #include <toolkit/controls/unocontrolcontainer.hxx>
......
...@@ -39,11 +39,13 @@ ...@@ -39,11 +39,13 @@
#include "toolkit/controls/formattedcontrol.hxx" #include "toolkit/controls/formattedcontrol.hxx"
#include "toolkit/controls/roadmapcontrol.hxx" #include "toolkit/controls/roadmapcontrol.hxx"
#include "toolkit/controls/tkscrollbar.hxx" #include "toolkit/controls/tkscrollbar.hxx"
#include "toolkit/controls/tabpagemodel.hxx"
#include <toolkit/controls/stdtabcontroller.hxx> #include <toolkit/controls/stdtabcontroller.hxx>
#include <com/sun/star/awt/PosSize.hpp> #include <com/sun/star/awt/PosSize.hpp>
#include <com/sun/star/awt/WindowAttribute.hpp> #include <com/sun/star/awt/WindowAttribute.hpp>
#include <com/sun/star/resource/XStringResourceResolver.hpp> #include <com/sun/star/resource/XStringResourceResolver.hpp>
#include <com/sun/star/graphic/XGraphicProvider.hpp> #include <com/sun/star/graphic/XGraphicProvider.hpp>
#include <com/sun/star/lang/XInitialization.hpp>
#include <cppuhelper/typeprovider.hxx> #include <cppuhelper/typeprovider.hxx>
#include <tools/debug.hxx> #include <tools/debug.hxx>
#include <tools/diagnose_ex.h> #include <tools/diagnose_ex.h>
...@@ -390,6 +392,8 @@ Reference< XInterface > ControlModelContainerBase::createInstance( const ::rtl:: ...@@ -390,6 +392,8 @@ Reference< XInterface > ControlModelContainerBase::createInstance( const ::rtl::
pNewModel = new OGeometryControlModel< UnoControlTabPageContainerModel >( xFactory ); pNewModel = new OGeometryControlModel< UnoControlTabPageContainerModel >( xFactory );
else if ( aServiceSpecifier.compareToAscii( szServiceName_UnoMultiPageModel ) == 0 ) else if ( aServiceSpecifier.compareToAscii( szServiceName_UnoMultiPageModel ) == 0 )
pNewModel = new OGeometryControlModel< UnoMultiPageModel >( xFactory ); pNewModel = new OGeometryControlModel< UnoMultiPageModel >( xFactory );
else if ( aServiceSpecifier.compareToAscii( szServiceName_UnoControlTabPageModel ) == 0 )
pNewModel = new OGeometryControlModel< UnoControlTabPageModel >( xFactory );
else if ( aServiceSpecifier.compareToAscii( szServiceName_UnoPageModel ) == 0 ) else if ( aServiceSpecifier.compareToAscii( szServiceName_UnoPageModel ) == 0 )
pNewModel = new OGeometryControlModel< UnoPageModel >( xFactory ); pNewModel = new OGeometryControlModel< UnoPageModel >( xFactory );
else if ( aServiceSpecifier.compareToAscii( szServiceName_UnoFrameModel ) == 0 ) else if ( aServiceSpecifier.compareToAscii( szServiceName_UnoFrameModel ) == 0 )
...@@ -422,9 +426,13 @@ Reference< XInterface > ControlModelContainerBase::createInstance( const ::rtl:: ...@@ -422,9 +426,13 @@ Reference< XInterface > ControlModelContainerBase::createInstance( const ::rtl::
return xNewModel; 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) Sequence< ::rtl::OUString > ControlModelContainerBase::getAvailableServiceNames() throw(RuntimeException)
...@@ -1389,7 +1397,7 @@ void ControlContainerBase::ImplInsertControl( Reference< XControlModel >& rxMode ...@@ -1389,7 +1397,7 @@ void ControlContainerBase::ImplInsertControl( Reference< XControlModel >& rxMode
Reference < XControl > xCtrl; Reference < XControl > xCtrl;
maContext.createComponent( aDefCtrl, 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() ) if ( xCtrl.is() )
{ {
xCtrl->setModel( rxModel ); xCtrl->setModel( rxModel );
...@@ -1605,7 +1613,7 @@ void ControlContainerBase::elementInserted( const ContainerEvent& Event ) throw( ...@@ -1605,7 +1613,7 @@ void ControlContainerBase::elementInserted( const ContainerEvent& Event ) throw(
Event.Accessor >>= aName; Event.Accessor >>= aName;
Event.Element >>= xModel; Event.Element >>= xModel;
ENSURE_OR_RETURN_VOID( xModel.is(), "UnoDialogControl::elementInserted: illegal element!" ); ENSURE_OR_RETURN_VOID( xModel.is(), "ControlContainerBase::elementInserted: illegal element!" );
try try
{ {
ImplInsertControl( xModel, aName ); ImplInsertControl( xModel, aName );
...@@ -1626,7 +1634,7 @@ void ControlContainerBase::elementRemoved( const ContainerEvent& Event ) throw(R ...@@ -1626,7 +1634,7 @@ void ControlContainerBase::elementRemoved( const ContainerEvent& Event ) throw(R
Reference< XControlModel > xModel; Reference< XControlModel > xModel;
Event.Element >>= 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 try
{ {
ImplRemoveControl( xModel ); ImplRemoveControl( xModel );
...@@ -1649,7 +1657,7 @@ void ControlContainerBase::elementReplaced( const ContainerEvent& Event ) throw( ...@@ -1649,7 +1657,7 @@ void ControlContainerBase::elementReplaced( const ContainerEvent& Event ) throw(
Event.ReplacedElement >>= xModel; Event.ReplacedElement >>= xModel;
try try
{ {
OSL_ENSURE( xModel.is(), "UnoDialogControl::elementReplaced: invalid ReplacedElement!" ); OSL_ENSURE( xModel.is(), "ControlContainerBase::elementReplaced: invalid ReplacedElement!" );
if ( xModel.is() ) if ( xModel.is() )
ImplRemoveControl( xModel ); ImplRemoveControl( xModel );
} }
...@@ -1665,7 +1673,7 @@ void ControlContainerBase::elementReplaced( const ContainerEvent& Event ) throw( ...@@ -1665,7 +1673,7 @@ void ControlContainerBase::elementReplaced( const ContainerEvent& Event ) throw(
::rtl::OUString aName; ::rtl::OUString aName;
Event.Accessor >>= aName; Event.Accessor >>= aName;
Event.Element >>= xModel; 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 try
{ {
ImplInsertControl( xModel, aName ); ImplInsertControl( xModel, aName );
......
...@@ -104,9 +104,10 @@ namespace toolkit ...@@ -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 ) \ ::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 ) ); } { 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 ) #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<UnoControlDialogModel>( 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 ) \ #define GET_FACTORY_WITH_IMPL_PREFIX( ClassName, ImplNamePrefix, ServiceName1, ServiceName2 ) \
...@@ -194,6 +195,8 @@ IMPL_CREATEINSTANCE2( AnimatedImagesControl ) ...@@ -194,6 +195,8 @@ IMPL_CREATEINSTANCE2( AnimatedImagesControl )
IMPL_CREATEINSTANCE2( AnimatedImagesControlModel ) IMPL_CREATEINSTANCE2( AnimatedImagesControlModel )
IMPL_CREATEINSTANCE2( SpinningProgressControlModel ) 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 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 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 >& ); 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" ...@@ -211,6 +214,7 @@ extern "C"
TOOLKIT_DLLPUBLIC void* SAL_CALL tk_component_getFactory( const sal_Char* sImplementationName, void* _pServiceManager, void* _pRegistryKey ) TOOLKIT_DLLPUBLIC void* SAL_CALL tk_component_getFactory( const sal_Char* sImplementationName, void* _pServiceManager, void* _pRegistryKey )
{ {
void* pRet = NULL; void* pRet = NULL;
if ( _pServiceManager ) if ( _pServiceManager )
...@@ -293,13 +297,13 @@ TOOLKIT_DLLPUBLIC void* SAL_CALL tk_component_getFactory( const sal_Char* sImple ...@@ -293,13 +297,13 @@ TOOLKIT_DLLPUBLIC void* SAL_CALL tk_component_getFactory( const sal_Char* sImple
GET_FACTORY( DefaultGridColumnModel, szServiceName_DefaultGridColumnModel, NULL ); GET_FACTORY( DefaultGridColumnModel, szServiceName_DefaultGridColumnModel, NULL );
GET_FACTORY_WITH_IMPL_PREFIX( GridColumn, "org.openoffice.comp.toolkit", szServiceName_GridColumn, 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( 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( UnoControlTabPageModel, szServiceName_UnoControlTabPageModel, NULL )
GET_FACTORY( UnoControlTabPage, szServiceName_UnoControlTabPage, NULL ) GET_FACTORY( UnoControlTabPage, szServiceName_UnoControlTabPage, NULL )
GET_FACTORY( UnoControlTabPageContainerModel, szServiceName_UnoControlTabPageContainerModel, NULL ) GET_FACTORY( UnoControlTabPageContainerModel, szServiceName_UnoControlTabPageContainerModel, NULL )
GET_FACTORY( UnoControlTabPageContainer, szServiceName_UnoControlTabPageContainer, 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 ) if ( rtl_str_compare( sImplementationName, "com.sun.star.awt.comp.AsyncCallback" ) == 0 )
return comp_AsyncCallback_component_getFactory( sImplementationName, _pServiceManager, _pRegistryKey ); return comp_AsyncCallback_component_getFactory( sImplementationName, _pServiceManager, _pRegistryKey );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment