From 09bdea8900c5ce79df3e8f2b7fbeeed06a5b4111 Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Sun, 1 Apr 2012 21:25:49 +0100 Subject: remove static objects from static_initialization_and_destruction chain --- framework/inc/services/taskcreatorsrv.hxx | 71 +++++++++++++--------------- framework/source/classes/taskcreator.cxx | 10 ++-- framework/source/services/taskcreatorsrv.cxx | 27 ++++------- 3 files changed, 47 insertions(+), 61 deletions(-) (limited to 'framework') diff --git a/framework/inc/services/taskcreatorsrv.hxx b/framework/inc/services/taskcreatorsrv.hxx index ebabdd1eb31f..1d7de6c55320 100644 --- a/framework/inc/services/taskcreatorsrv.hxx +++ b/framework/inc/services/taskcreatorsrv.hxx @@ -57,6 +57,40 @@ //_______________________________________________ // definition +/// [XFrame] if it's set, it will be used as parent frame for the new created frame. +const char ARGUMENT_PARENTFRAME[] = "ParentFrame"; // XFrame + +/** [OUString] if it's not a special name (beginning with "_" ... which are not allowed here!) + it will be set as the API name of the new created frame. + */ +const char ARGUMENT_FRAMENAME[] = "FrameName"; // OUString + +/// [sal_Bool] If its set to sal_True we will make the new created frame visible. +const char ARGUMENT_MAKEVISIBLE[] = "MakeVisible"; // sal_Bool + +/** [sal_Bool] If not "ContainerWindow" property is set it force creation of a + top level window as new container window. + */ +const char ARGUMENT_CREATETOPWINDOW[] = "CreateTopWindow"; // sal_Bool + +/// [Rectangle] Place the new created frame on this place and resize the container window. +const char ARGUMENT_POSSIZE[] = "PosSize"; // Rectangle + +/// [XWindow] an outside created window, used as container window of the new created frame. +const char ARGUMENT_CONTAINERWINDOW[] = "ContainerWindow"; // XWindow + +/** [sal_Bool] enable/disable special mode, where this frame will be part of + the persistent window state feature suitable for any office module window + */ +const char ARGUMENT_SUPPORTPERSISTENTWINDOWSTATE[] = "SupportPersistentWindowState"; // sal_Bool + +/** [sal_Bool] enable/disable special mode, where the title bar of our + the new created frame will be updated automaticly. + Default = ON ! + */ +const char ARGUMENT_ENABLE_TITLEBARUPDATE[] = "EnableTitleBarUpdate"; // sal_Bool + + namespace framework { @@ -72,43 +106,6 @@ class TaskCreatorService : public css::lang::XTypeProvider , public ::cppu::OWeakObject { //___________________________________________ - // types - - public: - - /// [XFrame] if it's set, it will be used as parent frame for the new created frame. - static const ::rtl::OUString ARGUMENT_PARENTFRAME; - - /** [OUString] if it's not a special name (beginning with "_" ... which are not allowed here!) - it will be set as the API name of the new created frame. - */ - static const ::rtl::OUString ARGUMENT_FRAMENAME; - - /// [sal_Bool] If its set to sal_True we will make the new created frame visible. - static const ::rtl::OUString ARGUMENT_MAKEVISIBLE; - - /** [sal_Bool] If not "ContainerWindow" property is set it force creation of a - top level window as new container window. - */ - static const ::rtl::OUString ARGUMENT_CREATETOPWINDOW; - - /// [Rectangle] Place the new created frame on this place and resize the container window. - static const ::rtl::OUString ARGUMENT_POSSIZE; - - /// [XWindow] an outside created window, used as container window of the new created frame. - static const ::rtl::OUString ARGUMENT_CONTAINERWINDOW; - - /** [sal_Bool] enable/disable special mode, where this frame will be part of - the persistent window state feature suitable for any office module window - */ - static const ::rtl::OUString ARGUMENT_SUPPORTPERSISTENTWINDOWSTATE; - - /** [sal_Bool] enable/disable special mode, where the title bar of our - the new created frame will be updated automaticly. - Default = ON ! - */ - static const ::rtl::OUString ARGUMENT_ENABLE_TITLEBARUPDATE; - //___________________________________________ // member private: diff --git a/framework/source/classes/taskcreator.cxx b/framework/source/classes/taskcreator.cxx index 6c3d52916608..05aa9b44e5d3 100644 --- a/framework/source/classes/taskcreator.cxx +++ b/framework/source/classes/taskcreator.cxx @@ -143,23 +143,23 @@ css::uno::Reference< css::frame::XFrame > TaskCreator::createTask( const ::rtl:: css::uno::Sequence< css::uno::Any > lArgs(5); css::beans::NamedValue aArg ; - aArg.Name = TaskCreatorService::ARGUMENT_PARENTFRAME; + aArg.Name = rtl::OUString(ARGUMENT_PARENTFRAME); aArg.Value <<= css::uno::Reference< css::frame::XFrame >(xSMGR->createInstance(SERVICENAME_DESKTOP), css::uno::UNO_QUERY_THROW); lArgs[0] <<= aArg; - aArg.Name = TaskCreatorService::ARGUMENT_CREATETOPWINDOW; + aArg.Name = rtl::OUString(ARGUMENT_CREATETOPWINDOW); aArg.Value <<= sal_True; lArgs[1] <<= aArg; - aArg.Name = TaskCreatorService::ARGUMENT_MAKEVISIBLE; + aArg.Name = rtl::OUString(ARGUMENT_MAKEVISIBLE); aArg.Value <<= bVisible; lArgs[2] <<= aArg; - aArg.Name = TaskCreatorService::ARGUMENT_SUPPORTPERSISTENTWINDOWSTATE; + aArg.Name = rtl::OUString(ARGUMENT_SUPPORTPERSISTENTWINDOWSTATE); aArg.Value <<= sal_True; lArgs[3] <<= aArg; - aArg.Name = TaskCreatorService::ARGUMENT_FRAMENAME; + aArg.Name = rtl::OUString(ARGUMENT_FRAMENAME); aArg.Value <<= sName; lArgs[4] <<= aArg; diff --git a/framework/source/services/taskcreatorsrv.cxx b/framework/source/services/taskcreatorsrv.cxx index dd14cf3607ac..2f5d4fe62878 100644 --- a/framework/source/services/taskcreatorsrv.cxx +++ b/framework/source/services/taskcreatorsrv.cxx @@ -62,17 +62,6 @@ namespace framework { - -//----------------------------------------------- -const ::rtl::OUString TaskCreatorService::ARGUMENT_PARENTFRAME(RTL_CONSTASCII_USTRINGPARAM("ParentFrame")); // XFrame -const ::rtl::OUString TaskCreatorService::ARGUMENT_FRAMENAME(RTL_CONSTASCII_USTRINGPARAM("FrameName")); // OUString -const ::rtl::OUString TaskCreatorService::ARGUMENT_MAKEVISIBLE(RTL_CONSTASCII_USTRINGPARAM("MakeVisible")); // sal_Bool -const ::rtl::OUString TaskCreatorService::ARGUMENT_CREATETOPWINDOW(RTL_CONSTASCII_USTRINGPARAM("CreateTopWindow")); // sal_Bool -const ::rtl::OUString TaskCreatorService::ARGUMENT_POSSIZE(RTL_CONSTASCII_USTRINGPARAM("PosSize")); // Rectangle -const ::rtl::OUString TaskCreatorService::ARGUMENT_CONTAINERWINDOW(RTL_CONSTASCII_USTRINGPARAM("ContainerWindow")); // XWindow -const ::rtl::OUString TaskCreatorService::ARGUMENT_SUPPORTPERSISTENTWINDOWSTATE(RTL_CONSTASCII_USTRINGPARAM("SupportPersistentWindowState")); // sal_Bool -const ::rtl::OUString TaskCreatorService::ARGUMENT_ENABLE_TITLEBARUPDATE(RTL_CONSTASCII_USTRINGPARAM("EnableTitleBarUpdate")); // sal_Bool - //----------------------------------------------- DEFINE_XINTERFACE_3(TaskCreatorService , OWeakObject , @@ -139,14 +128,14 @@ css::uno::Reference< css::uno::XInterface > SAL_CALL TaskCreatorService::createI ::comphelper::SequenceAsHashMap lArgs(lArguments); - css::uno::Reference< css::frame::XFrame > xParentFrame = lArgs.getUnpackedValueOrDefault(TaskCreatorService::ARGUMENT_PARENTFRAME , css::uno::Reference< css::frame::XFrame >()); - ::rtl::OUString sFrameName = lArgs.getUnpackedValueOrDefault(TaskCreatorService::ARGUMENT_FRAMENAME , DEFAULTVAL_FRAMENAME ); - sal_Bool bVisible = lArgs.getUnpackedValueOrDefault(TaskCreatorService::ARGUMENT_MAKEVISIBLE , DEFAULTVAL_MAKEVISIBLE ); - sal_Bool bCreateTopWindow = lArgs.getUnpackedValueOrDefault(TaskCreatorService::ARGUMENT_CREATETOPWINDOW , DEFAULTVAL_CREATETOPWINDOW ); - css::awt::Rectangle aPosSize = lArgs.getUnpackedValueOrDefault(TaskCreatorService::ARGUMENT_POSSIZE , DEFAULTVAL_POSSIZE ); - css::uno::Reference< css::awt::XWindow > xContainerWindow = lArgs.getUnpackedValueOrDefault(TaskCreatorService::ARGUMENT_CONTAINERWINDOW , css::uno::Reference< css::awt::XWindow >() ); - sal_Bool bSupportPersistentWindowState = lArgs.getUnpackedValueOrDefault(TaskCreatorService::ARGUMENT_SUPPORTPERSISTENTWINDOWSTATE , DEFAULTVAL_SUPPORTPERSSISTENTWINDOWSTATE ); - sal_Bool bEnableTitleBarUpdate = lArgs.getUnpackedValueOrDefault(TaskCreatorService::ARGUMENT_ENABLE_TITLEBARUPDATE , DEFAULTVAL_ENABLE_TITLEBARUPDATE ); + css::uno::Reference< css::frame::XFrame > xParentFrame = lArgs.getUnpackedValueOrDefault(rtl::OUString(ARGUMENT_PARENTFRAME) , css::uno::Reference< css::frame::XFrame >()); + ::rtl::OUString sFrameName = lArgs.getUnpackedValueOrDefault(rtl::OUString(ARGUMENT_FRAMENAME) , DEFAULTVAL_FRAMENAME ); + sal_Bool bVisible = lArgs.getUnpackedValueOrDefault(rtl::OUString(ARGUMENT_MAKEVISIBLE) , DEFAULTVAL_MAKEVISIBLE ); + sal_Bool bCreateTopWindow = lArgs.getUnpackedValueOrDefault(rtl::OUString(ARGUMENT_CREATETOPWINDOW) , DEFAULTVAL_CREATETOPWINDOW ); + css::awt::Rectangle aPosSize = lArgs.getUnpackedValueOrDefault(rtl::OUString(ARGUMENT_POSSIZE) , DEFAULTVAL_POSSIZE ); + css::uno::Reference< css::awt::XWindow > xContainerWindow = lArgs.getUnpackedValueOrDefault(rtl::OUString(ARGUMENT_CONTAINERWINDOW) , css::uno::Reference< css::awt::XWindow >() ); + sal_Bool bSupportPersistentWindowState = lArgs.getUnpackedValueOrDefault(rtl::OUString(ARGUMENT_SUPPORTPERSISTENTWINDOWSTATE) , DEFAULTVAL_SUPPORTPERSSISTENTWINDOWSTATE ); + sal_Bool bEnableTitleBarUpdate = lArgs.getUnpackedValueOrDefault(rtl::OUString(ARGUMENT_ENABLE_TITLEBARUPDATE) , DEFAULTVAL_ENABLE_TITLEBARUPDATE ); /* SAFE { */ ReadGuard aReadLock( m_aLock ); -- cgit