1f8e07b45SAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3f8e07b45SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4f8e07b45SAndrew Rist * or more contributor license agreements. See the NOTICE file 5f8e07b45SAndrew Rist * distributed with this work for additional information 6f8e07b45SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7f8e07b45SAndrew Rist * to you under the Apache License, Version 2.0 (the 8f8e07b45SAndrew Rist * "License"); you may not use this file except in compliance 9f8e07b45SAndrew Rist * with the License. You may obtain a copy of the License at 10f8e07b45SAndrew Rist * 11f8e07b45SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12f8e07b45SAndrew Rist * 13f8e07b45SAndrew Rist * Unless required by applicable law or agreed to in writing, 14f8e07b45SAndrew Rist * software distributed under the License is distributed on an 15f8e07b45SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16f8e07b45SAndrew Rist * KIND, either express or implied. See the License for the 17f8e07b45SAndrew Rist * specific language governing permissions and limitations 18f8e07b45SAndrew Rist * under the License. 19f8e07b45SAndrew Rist * 20f8e07b45SAndrew Rist *************************************************************/ 21f8e07b45SAndrew Rist 22f8e07b45SAndrew Rist 23cdf0e10cSrcweir #ifndef __FRAMEWORK_CLASSES_ADDONSOPTIONS_HXX_ 24cdf0e10cSrcweir #define __FRAMEWORK_CLASSES_ADDONSOPTIONS_HXX_ 25cdf0e10cSrcweir 26cdf0e10cSrcweir //_________________________________________________________________________________________________________________ 27cdf0e10cSrcweir // includes 28cdf0e10cSrcweir //_________________________________________________________________________________________________________________ 29cdf0e10cSrcweir 30cdf0e10cSrcweir #include <sal/types.h> 31cdf0e10cSrcweir #include <osl/mutex.hxx> 32cdf0e10cSrcweir #include <vcl/image.hxx> 33cdf0e10cSrcweir #include <vcl/bitmap.hxx> 34cdf0e10cSrcweir #include <vcl/svapp.hxx> 35cdf0e10cSrcweir #include <com/sun/star/uno/Sequence.h> 36cdf0e10cSrcweir #include <com/sun/star/beans/PropertyValue.hpp> 37cdf0e10cSrcweir #include <framework/fwedllapi.h> 38cdf0e10cSrcweir //_________________________________________________________________________________________________________________ 39cdf0e10cSrcweir // types, enums, ... 40cdf0e10cSrcweir //_________________________________________________________________________________________________________________ 41cdf0e10cSrcweir 42cdf0e10cSrcweir /*-************************************************************************************************************//** 43cdf0e10cSrcweir @descr The method GetAddonsMenu() returns a list of property values. 44*07a3d7f1SPedro Giffuni Use follow defines to separate values by names. 45cdf0e10cSrcweir *//*-*************************************************************************************************************/ 46cdf0e10cSrcweir #define ADDONSMENUITEM_STRING_URL "URL" 47cdf0e10cSrcweir #define ADDONSMENUITEM_STRING_TITLE "Title" 48cdf0e10cSrcweir #define ADDONSMENUITEM_STRING_TARGET "Target" 49cdf0e10cSrcweir #define ADDONSMENUITEM_STRING_IMAGEIDENTIFIER "ImageIdentifier" 50cdf0e10cSrcweir #define ADDONSMENUITEM_STRING_CONTEXT "Context" 51cdf0e10cSrcweir #define ADDONSMENUITEM_STRING_SUBMENU "Submenu" 52cdf0e10cSrcweir #define ADDONSMENUITEM_STRING_CONTROLTYPE "ControlType" 53cdf0e10cSrcweir #define ADDONSMENUITEM_STRING_WIDTH "Width" 54cdf0e10cSrcweir 55fdaa53dfSAriel Constenla-Haile #define STATUSBARITEM_STRING_ALIGN "Alignment" 56fdaa53dfSAriel Constenla-Haile #define STATUSBARITEM_STRING_AUTOSIZE "AutoSize" 57fdaa53dfSAriel Constenla-Haile #define STATUSBARITEM_STRING_OWNERDRAW "OwnerDraw" 58fdaa53dfSAriel Constenla-Haile 59cdf0e10cSrcweir #define ADDONSMENUITEM_URL_LEN 3 60cdf0e10cSrcweir #define ADDONSMENUITEM_TITLE_LEN 5 61cdf0e10cSrcweir #define ADDONSMENUITEM_TARGET_LEN 6 62cdf0e10cSrcweir #define ADDONSMENUITEM_SUBMENU_LEN 7 63cdf0e10cSrcweir #define ADDONSMENUITEM_CONTEXT_LEN 7 64cdf0e10cSrcweir #define ADDONSMENUITEM_IMAGEIDENTIFIER_LEN 15 65cdf0e10cSrcweir 66cdf0e10cSrcweir #define ADDONSMENUITEM_PROPERTYNAME_URL ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(ADDONSMENUITEM_STRING_URL )) 67cdf0e10cSrcweir #define ADDONSMENUITEM_PROPERTYNAME_TITLE ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(ADDONSMENUITEM_STRING_TITLE )) 68cdf0e10cSrcweir #define ADDONSMENUITEM_PROPERTYNAME_TARGET ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(ADDONSMENUITEM_STRING_TARGET )) 69cdf0e10cSrcweir #define ADDONSMENUITEM_PROPERTYNAME_IMAGEIDENTIFIER ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(ADDONSMENUITEM_STRING_IMAGEIDENTIFIER )) 70cdf0e10cSrcweir #define ADDONSMENUITEM_PROPERTYNAME_CONTEXT ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(ADDONSMENUITEM_STRING_CONTEXT )) 71cdf0e10cSrcweir #define ADDONSMENUITEM_PROPERTYNAME_SUBMENU ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(ADDONSMENUITEM_STRING_SUBMENU )) 72cdf0e10cSrcweir #define ADDONSMENUITEM_PROPERTYNAME_CONTROLTYPE ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(ADDONSMENUITEM_STRING_CONTROLTYPE )) 73cdf0e10cSrcweir #define ADDONSMENUITEM_PROPERTYNAME_WIDTH ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(ADDONSMENUITEM_STRING_WIDTH )) 74cdf0e10cSrcweir 75fdaa53dfSAriel Constenla-Haile #define STATUSBARITEM_PROPERTYNAME_ALIGN ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(STATUSBARITEM_STRING_ALIGN )) 76fdaa53dfSAriel Constenla-Haile #define STATUSBARITEM_PROPERTYNAME_AUTOSIZE ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(STATUSBARITEM_STRING_AUTOSIZE )) 77fdaa53dfSAriel Constenla-Haile #define STATUSBARITEM_PROPERTYNAME_OWNERDRAW ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(STATUSBARITEM_STRING_OWNERDRAW )) 78fdaa53dfSAriel Constenla-Haile 79cdf0e10cSrcweir #define ADDONSPOPUPMENU_URL_PREFIX_STR "private:menu/Addon" 80cdf0e10cSrcweir 81cdf0e10cSrcweir #define ADDONSPOPUPMENU_URL_PREFIX ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( ADDONSPOPUPMENU_URL_PREFIX_STR )) 82cdf0e10cSrcweir 83cdf0e10cSrcweir namespace framework 84cdf0e10cSrcweir { 85cdf0e10cSrcweir 86cdf0e10cSrcweir typedef ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > > MergeMenuDefinition; 87cdf0e10cSrcweir 88cdf0e10cSrcweir struct FWE_DLLPUBLIC MergeMenuInstruction 89cdf0e10cSrcweir { 90cdf0e10cSrcweir ::rtl::OUString aMergePoint; 91cdf0e10cSrcweir ::rtl::OUString aMergeCommand; 92cdf0e10cSrcweir ::rtl::OUString aMergeCommandParameter; 93cdf0e10cSrcweir ::rtl::OUString aMergeFallback; 94cdf0e10cSrcweir ::rtl::OUString aMergeContext; 95cdf0e10cSrcweir ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > > aMergeMenu; 96cdf0e10cSrcweir }; 97cdf0e10cSrcweir typedef ::std::vector< MergeMenuInstruction > MergeMenuInstructionContainer; 98cdf0e10cSrcweir 99cdf0e10cSrcweir struct FWE_DLLPUBLIC MergeToolbarInstruction 100cdf0e10cSrcweir { 101cdf0e10cSrcweir ::rtl::OUString aMergeToolbar; 102cdf0e10cSrcweir ::rtl::OUString aMergePoint; 103cdf0e10cSrcweir ::rtl::OUString aMergeCommand; 104cdf0e10cSrcweir ::rtl::OUString aMergeCommandParameter; 105cdf0e10cSrcweir ::rtl::OUString aMergeFallback; 106cdf0e10cSrcweir ::rtl::OUString aMergeContext; 107cdf0e10cSrcweir ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > > aMergeToolbarItems; 108cdf0e10cSrcweir }; 109cdf0e10cSrcweir 110cdf0e10cSrcweir typedef ::std::vector< MergeToolbarInstruction > MergeToolbarInstructionContainer; 111cdf0e10cSrcweir 112fdaa53dfSAriel Constenla-Haile struct FWE_DLLPUBLIC MergeStatusbarInstruction 113fdaa53dfSAriel Constenla-Haile { 114fdaa53dfSAriel Constenla-Haile ::rtl::OUString aMergePoint; 115fdaa53dfSAriel Constenla-Haile ::rtl::OUString aMergeCommand; 116fdaa53dfSAriel Constenla-Haile ::rtl::OUString aMergeCommandParameter; 117fdaa53dfSAriel Constenla-Haile ::rtl::OUString aMergeFallback; 118fdaa53dfSAriel Constenla-Haile ::rtl::OUString aMergeContext; 119fdaa53dfSAriel Constenla-Haile ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > > aMergeStatusbarItems; 120fdaa53dfSAriel Constenla-Haile }; 121fdaa53dfSAriel Constenla-Haile 122fdaa53dfSAriel Constenla-Haile typedef ::std::vector< MergeStatusbarInstruction > MergeStatusbarInstructionContainer; 123fdaa53dfSAriel Constenla-Haile 124cdf0e10cSrcweir //_________________________________________________________________________________________________________________ 125cdf0e10cSrcweir // forward declarations 126cdf0e10cSrcweir //_________________________________________________________________________________________________________________ 127cdf0e10cSrcweir 128cdf0e10cSrcweir /*-************************************************************************************************************//** 129cdf0e10cSrcweir @short forward declaration to our private date container implementation 130cdf0e10cSrcweir @descr We use these class as internal member to support small memory requirements. 131*07a3d7f1SPedro Giffuni You can create the container if it is necessary. The class which use these mechanism 132cdf0e10cSrcweir is faster and smaller then a complete implementation! 133cdf0e10cSrcweir *//*-*************************************************************************************************************/ 134cdf0e10cSrcweir 135cdf0e10cSrcweir class AddonsOptions_Impl; 136cdf0e10cSrcweir 137cdf0e10cSrcweir //_________________________________________________________________________________________________________________ 138cdf0e10cSrcweir // declarations 139cdf0e10cSrcweir //_________________________________________________________________________________________________________________ 140cdf0e10cSrcweir 141cdf0e10cSrcweir /*-************************************************************************************************************//** 142cdf0e10cSrcweir @short collect informations about menu features 143cdf0e10cSrcweir @descr - 144cdf0e10cSrcweir 145cdf0e10cSrcweir @implements - 146cdf0e10cSrcweir @base - 147cdf0e10cSrcweir 148cdf0e10cSrcweir @devstatus ready to use 149cdf0e10cSrcweir *//*-*************************************************************************************************************/ 150cdf0e10cSrcweir 151cdf0e10cSrcweir class FWE_DLLPUBLIC AddonsOptions 152cdf0e10cSrcweir { 153cdf0e10cSrcweir //------------------------------------------------------------------------------------------------------------- 154cdf0e10cSrcweir // public methods 155cdf0e10cSrcweir //------------------------------------------------------------------------------------------------------------- 156cdf0e10cSrcweir 157cdf0e10cSrcweir public: 158cdf0e10cSrcweir //--------------------------------------------------------------------------------------------------------- 159cdf0e10cSrcweir // constructor / destructor 160cdf0e10cSrcweir //--------------------------------------------------------------------------------------------------------- 161cdf0e10cSrcweir 162cdf0e10cSrcweir /*-****************************************************************************************************//** 163cdf0e10cSrcweir @short standard constructor and destructor 164cdf0e10cSrcweir @descr This will initialize an instance with default values. 165cdf0e10cSrcweir We implement these class with a refcount mechanism! Every instance of this class increase it 166cdf0e10cSrcweir at create and decrease it at delete time - but all instances use the same data container! 167cdf0e10cSrcweir He is implemented as a static member ... 168cdf0e10cSrcweir 169cdf0e10cSrcweir @seealso member m_nRefCount 170cdf0e10cSrcweir @seealso member m_pDataContainer 171cdf0e10cSrcweir 172cdf0e10cSrcweir @param - 173cdf0e10cSrcweir @return - 174cdf0e10cSrcweir 175cdf0e10cSrcweir @onerror - 176cdf0e10cSrcweir *//*-*****************************************************************************************************/ 177cdf0e10cSrcweir 178cdf0e10cSrcweir AddonsOptions(); 179cdf0e10cSrcweir ~AddonsOptions(); 180cdf0e10cSrcweir 181cdf0e10cSrcweir //--------------------------------------------------------------------------------------------------------- 182cdf0e10cSrcweir // interface 183cdf0e10cSrcweir //--------------------------------------------------------------------------------------------------------- 184cdf0e10cSrcweir 185cdf0e10cSrcweir /*-****************************************************************************************************//** 186cdf0e10cSrcweir @short clears completely the addons menu 187cdf0e10cSrcweir @descr Call this methods to clear the addons menu 188cdf0e10cSrcweir To fill it again use AppendItem(). 189cdf0e10cSrcweir 190cdf0e10cSrcweir @seealso - 191cdf0e10cSrcweir 192cdf0e10cSrcweir @param "eMenu" select right menu to clear. 193cdf0e10cSrcweir @return - 194cdf0e10cSrcweir 195cdf0e10cSrcweir @onerror - 196cdf0e10cSrcweir *//*-*****************************************************************************************************/ 197cdf0e10cSrcweir 198cdf0e10cSrcweir void Clear(); 199cdf0e10cSrcweir 200cdf0e10cSrcweir /*-****************************************************************************************************//** 201cdf0e10cSrcweir @short returns if an addons menu is available 202cdf0e10cSrcweir @descr Call to retrieve if a addons menu is available 203cdf0e10cSrcweir 204cdf0e10cSrcweir 205cdf0e10cSrcweir @return sal_True if there is a menu otherwise sal_False 206cdf0e10cSrcweir *//*-*****************************************************************************************************/ 207cdf0e10cSrcweir 208cdf0e10cSrcweir sal_Bool HasAddonsMenu() const; 209cdf0e10cSrcweir 210cdf0e10cSrcweir /*-****************************************************************************************************//** 211cdf0e10cSrcweir @short returns if an addons help menu is available 212cdf0e10cSrcweir @descr Call to retrieve if a addons menu is available 213cdf0e10cSrcweir 214cdf0e10cSrcweir 215cdf0e10cSrcweir @return sal_True if there is a menu otherwise sal_False 216cdf0e10cSrcweir *//*-*****************************************************************************************************/ 217cdf0e10cSrcweir 218cdf0e10cSrcweir sal_Bool HasAddonsHelpMenu() const; 219cdf0e10cSrcweir 220cdf0e10cSrcweir /*-****************************************************************************************************//** 221cdf0e10cSrcweir @short returns number of addons toolbars 222cdf0e10cSrcweir @descr Call to retrieve the number of addons toolbars 223cdf0e10cSrcweir 224cdf0e10cSrcweir 225cdf0e10cSrcweir @return number of addons toolbars 226cdf0e10cSrcweir *//*-*****************************************************************************************************/ 227cdf0e10cSrcweir sal_Int32 GetAddonsToolBarCount() const ; 228cdf0e10cSrcweir 229cdf0e10cSrcweir /*-****************************************************************************************************//** 230cdf0e10cSrcweir @short returns the complete addons menu 231cdf0e10cSrcweir @descr Call it to get all entries of the addon menu. 232cdf0e10cSrcweir We return a list of all nodes with his names and properties. 233cdf0e10cSrcweir 234cdf0e10cSrcweir @seealso - 235cdf0e10cSrcweir 236cdf0e10cSrcweir @return A list of menu items is returned. 237cdf0e10cSrcweir 238cdf0e10cSrcweir @onerror We return an empty list. 239cdf0e10cSrcweir *//*-*****************************************************************************************************/ 240cdf0e10cSrcweir 241cdf0e10cSrcweir const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > >& GetAddonsMenu() const; 242cdf0e10cSrcweir 243cdf0e10cSrcweir /*-****************************************************************************************************//** 244cdf0e10cSrcweir @short Gets the menu bar part of all addon components registered 245cdf0e10cSrcweir @descr - 246cdf0e10cSrcweir 247cdf0e10cSrcweir @seealso - 248cdf0e10cSrcweir 249cdf0e10cSrcweir @return A complete 250cdf0e10cSrcweir 251cdf0e10cSrcweir @onerror We return sal_False 252cdf0e10cSrcweir *//*-*****************************************************************************************************/ 253cdf0e10cSrcweir 254cdf0e10cSrcweir const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > >& GetAddonsMenuBarPart() const; 255cdf0e10cSrcweir 256cdf0e10cSrcweir /*-****************************************************************************************************//** 257cdf0e10cSrcweir @short Gets a toolbar part of an single addon 258cdf0e10cSrcweir @descr - 259cdf0e10cSrcweir 260cdf0e10cSrcweir @seealso - 261cdf0e10cSrcweir 262cdf0e10cSrcweir @return A complete 263cdf0e10cSrcweir 264cdf0e10cSrcweir @onerror We return sal_False 265cdf0e10cSrcweir *//*-*****************************************************************************************************/ 266cdf0e10cSrcweir 267cdf0e10cSrcweir const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > >& GetAddonsToolBarPart( sal_uInt32 nIndex ) const; 268cdf0e10cSrcweir 269cdf0e10cSrcweir /*-****************************************************************************************************//** 270cdf0e10cSrcweir @short Gets a unique toolbar resource name of an single addon 271cdf0e10cSrcweir @descr - 272cdf0e10cSrcweir 273cdf0e10cSrcweir @seealso - 274cdf0e10cSrcweir 275cdf0e10cSrcweir @return A complete 276cdf0e10cSrcweir 277cdf0e10cSrcweir @onerror We return sal_False 278cdf0e10cSrcweir *//*-*****************************************************************************************************/ 279cdf0e10cSrcweir 280cdf0e10cSrcweir const ::rtl::OUString GetAddonsToolbarResourceName( sal_uInt32 nIndex ) const; 281cdf0e10cSrcweir 282bb0b5665SAriel Constenla-Haile /** 283bb0b5665SAriel Constenla-Haile * @short Gets the UI name of a single addon toolbar 284bb0b5665SAriel Constenla-Haile * @return The UI name of the toolbar as specified in the Addons.xcu configuration 285bb0b5665SAriel Constenla-Haile * @onerror Returns an empty string 286bb0b5665SAriel Constenla-Haile */ 287bb0b5665SAriel Constenla-Haile const ::rtl::OUString GetAddonsToolbarUIName( sal_uInt32 nIndex ) const; 288bb0b5665SAriel Constenla-Haile 289cdf0e10cSrcweir /*-****************************************************************************************************//** 290cdf0e10cSrcweir @short Retrieves all available merge instructions for the Office menu bar 291cdf0e10cSrcweir @descr - 292cdf0e10cSrcweir 293cdf0e10cSrcweir @seealso - 294cdf0e10cSrcweir 295cdf0e10cSrcweir @return The filled MergeMenuDefinitionContaier 296cdf0e10cSrcweir 297cdf0e10cSrcweir @onerror We return sal_False 298cdf0e10cSrcweir *//*-*****************************************************************************************************/ 299cdf0e10cSrcweir 300cdf0e10cSrcweir const MergeMenuInstructionContainer& GetMergeMenuInstructions() const; 301cdf0e10cSrcweir 302cdf0e10cSrcweir /*-****************************************************************************************************//** 303cdf0e10cSrcweir @short Retrieves all available merge instructions for a single toolbar 304cdf0e10cSrcweir @descr - 305cdf0e10cSrcweir 306cdf0e10cSrcweir @seealso - 307cdf0e10cSrcweir 308cdf0e10cSrcweir @return The filled 309cdf0e10cSrcweir 310cdf0e10cSrcweir @onerror We return sal_False 311cdf0e10cSrcweir *//*-*****************************************************************************************************/ 312cdf0e10cSrcweir bool GetMergeToolbarInstructions( const ::rtl::OUString& rToolbarName, MergeToolbarInstructionContainer& rToolbar ) const; 313cdf0e10cSrcweir 314fdaa53dfSAriel Constenla-Haile const MergeStatusbarInstructionContainer& GetMergeStatusbarInstructions() const; 315fdaa53dfSAriel Constenla-Haile 316cdf0e10cSrcweir /*-****************************************************************************************************//** 317cdf0e10cSrcweir @short Gets the Add-On help menu part of all addon components registered 318cdf0e10cSrcweir @descr - 319cdf0e10cSrcweir 320cdf0e10cSrcweir @seealso - 321cdf0e10cSrcweir 322cdf0e10cSrcweir @return A complete 323cdf0e10cSrcweir 324cdf0e10cSrcweir @onerror We return sal_False 325cdf0e10cSrcweir *//*-*****************************************************************************************************/ 326cdf0e10cSrcweir const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > >& GetAddonsHelpMenu() const; 327cdf0e10cSrcweir 328cdf0e10cSrcweir /*-****************************************************************************************************//** 329cdf0e10cSrcweir @short Retrieve an image for a command URL which is defined inside the addon menu configuration 330cdf0e10cSrcweir @descr Call it to retrieve an image for a command URL which is defined inside the addon menu configuration 331cdf0e10cSrcweir 332cdf0e10cSrcweir @seealso - 333cdf0e10cSrcweir 334cdf0e10cSrcweir @return An image which was defined in the configuration for the menu item. The image can be empty 335cdf0e10cSrcweir no bitmap was defined for the request image properties. 336cdf0e10cSrcweir 337cdf0e10cSrcweir @onerror An empty image 338cdf0e10cSrcweir *//*-*****************************************************************************************************/ 339cdf0e10cSrcweir 340cdf0e10cSrcweir Image GetImageFromURL( const rtl::OUString& aURL, sal_Bool bBig, sal_Bool bHiContrast, sal_Bool bNoScale ) const; 341cdf0e10cSrcweir 342cdf0e10cSrcweir Image GetImageFromURL( const rtl::OUString& aURL, sal_Bool bBig, sal_Bool bHiContrast ) const; 343cdf0e10cSrcweir //------------------------------------------------------------------------------------------------------------- 344cdf0e10cSrcweir // private methods 345cdf0e10cSrcweir //------------------------------------------------------------------------------------------------------------- 346cdf0e10cSrcweir 347cdf0e10cSrcweir /*-****************************************************************************************************//** 348cdf0e10cSrcweir @short return a reference to a static mutex 349cdf0e10cSrcweir @descr These class is partially threadsafe (for de-/initialization only). 350cdf0e10cSrcweir All access methods are'nt safe! 351cdf0e10cSrcweir We create a static mutex only for one ime and use at different times. 352cdf0e10cSrcweir 353cdf0e10cSrcweir @seealso - 354cdf0e10cSrcweir 355cdf0e10cSrcweir @param - 356cdf0e10cSrcweir @return A reference to a static mutex member. 357cdf0e10cSrcweir 358cdf0e10cSrcweir @onerror - 359cdf0e10cSrcweir *//*-*****************************************************************************************************/ 360cdf0e10cSrcweir 361cdf0e10cSrcweir static ::osl::Mutex& GetOwnStaticMutex(); 362cdf0e10cSrcweir 363cdf0e10cSrcweir /*-****************************************************************************************************//** 364cdf0e10cSrcweir @short return a reference to a static mutex 365cdf0e10cSrcweir @descr These class is partially threadsafe (for de-/initialization only). 366cdf0e10cSrcweir All access methods are'nt safe! 367cdf0e10cSrcweir We create a static mutex only for one ime and use at different times. 368cdf0e10cSrcweir 369cdf0e10cSrcweir @seealso - 370cdf0e10cSrcweir 371cdf0e10cSrcweir @param - 372cdf0e10cSrcweir @return A reference to a static mutex member. 373cdf0e10cSrcweir 374cdf0e10cSrcweir @onerror - 375cdf0e10cSrcweir *//*-*****************************************************************************************************/ 376cdf0e10cSrcweir DECL_STATIC_LINK( AddonsOptions, Notify, void* ); 377cdf0e10cSrcweir 378cdf0e10cSrcweir //------------------------------------------------------------------------------------------------------------- 379cdf0e10cSrcweir // private member 380cdf0e10cSrcweir //------------------------------------------------------------------------------------------------------------- 381cdf0e10cSrcweir 382cdf0e10cSrcweir private: 383cdf0e10cSrcweir 384cdf0e10cSrcweir /*Attention 385cdf0e10cSrcweir 386cdf0e10cSrcweir Don't initialize these static member in these header! 387cdf0e10cSrcweir a) Double dfined symbols will be detected ... 388cdf0e10cSrcweir b) and unresolved externals exist at linking time. 389cdf0e10cSrcweir Do it in your source only. 390cdf0e10cSrcweir */ 391cdf0e10cSrcweir 392cdf0e10cSrcweir static AddonsOptions_Impl* m_pDataContainer ; /// impl. data container as dynamic pointer for smaller memory requirements! 393cdf0e10cSrcweir static sal_Int32 m_nRefCount ; /// internal ref count mechanism 394cdf0e10cSrcweir 395cdf0e10cSrcweir }; // class SvtMenuOptions 396cdf0e10cSrcweir 397cdf0e10cSrcweir } 398cdf0e10cSrcweir 399cdf0e10cSrcweir #endif // #ifndef __FRAMEWORK_CLASSES_ADDONSOPTIONS_HXX_ 400