diff options
author | Thomas Arnhold <thomas@arnhold.org> | 2013-04-02 23:20:15 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@suse.cz> | 2013-04-05 08:24:46 +0000 |
commit | 31fedbe9f782976b6aa4615b6fd171ed52137c94 (patch) | |
tree | aeb72168616981ca20b67aec1c9a75ca64161c2e /unotools | |
parent | cc8ca7fad08e7268e7409ce5d0103d6a3c3aef4d (diff) |
Remove SvtInternalOptions
* only Get/SetCurrentTempURL were used, but only for compatibility reasons,
to remove old temporary directories (before 2001). Those should be gone
today.
* MailUIEnabled was false in the xcu file.
* SID_MAIL_SENDDOC* are handled some lines further.
Change-Id: I482719b0de9df0a77c2fef0bf25ae1fb68926375
Reviewed-on: https://gerrit.libreoffice.org/3180
Reviewed-by: Miklos Vajna <vmiklos@suse.cz>
Tested-by: Miklos Vajna <vmiklos@suse.cz>
Notes
Notes:
API CHANGE.
Diffstat (limited to 'unotools')
-rw-r--r-- | unotools/Library_utl.mk | 1 | ||||
-rw-r--r-- | unotools/Package_inc.mk | 1 | ||||
-rw-r--r-- | unotools/inc/unotools/internaloptions.hxx | 132 | ||||
-rw-r--r-- | unotools/inc/unotools/itemholderbase.hxx | 2 | ||||
-rw-r--r-- | unotools/source/config/internaloptions.cxx | 363 | ||||
-rw-r--r-- | unotools/source/config/itemholder1.cxx | 5 |
6 files changed, 0 insertions, 504 deletions
diff --git a/unotools/Library_utl.mk b/unotools/Library_utl.mk index c24c28a1a929..d99c18bc562b 100644 --- a/unotools/Library_utl.mk +++ b/unotools/Library_utl.mk @@ -89,7 +89,6 @@ $(eval $(call gb_Library_add_exception_objects,utl,\ unotools/source/config/fontcfg \ unotools/source/config/fontoptions \ unotools/source/config/historyoptions \ - unotools/source/config/internaloptions \ unotools/source/config/itemholder1 \ unotools/source/config/lingucfg \ unotools/source/config/localisationoptions \ diff --git a/unotools/Package_inc.mk b/unotools/Package_inc.mk index cac003a0d1cc..92ec12ea1cd3 100644 --- a/unotools/Package_inc.mk +++ b/unotools/Package_inc.mk @@ -61,7 +61,6 @@ $(eval $(call gb_Package_add_file,unotools_inc,inc/unotools/fontdefs.hxx,unotool $(eval $(call gb_Package_add_file,unotools_inc,inc/unotools/fontoptions.hxx,unotools/fontoptions.hxx)) $(eval $(call gb_Package_add_file,unotools_inc,inc/unotools/historyoptions.hxx,unotools/historyoptions.hxx)) $(eval $(call gb_Package_add_file,unotools_inc,inc/unotools/idhelper.hxx,unotools/idhelper.hxx)) -$(eval $(call gb_Package_add_file,unotools_inc,inc/unotools/internaloptions.hxx,unotools/internaloptions.hxx)) $(eval $(call gb_Package_add_file,unotools_inc,inc/unotools/intlwrapper.hxx,unotools/intlwrapper.hxx)) $(eval $(call gb_Package_add_file,unotools_inc,inc/unotools/itemholderbase.hxx,unotools/itemholderbase.hxx)) $(eval $(call gb_Package_add_file,unotools_inc,inc/unotools/lingucfg.hxx,unotools/lingucfg.hxx)) diff --git a/unotools/inc/unotools/internaloptions.hxx b/unotools/inc/unotools/internaloptions.hxx deleted file mode 100644 index 89fe29f4817b..000000000000 --- a/unotools/inc/unotools/internaloptions.hxx +++ /dev/null @@ -1,132 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ -#ifndef INCLUDED_unotools_INTERNALOPTIONS_HXX -#define INCLUDED_unotools_INTERNALOPTIONS_HXX - -#include "unotools/unotoolsdllapi.h" -#include <sal/types.h> -#include <osl/mutex.hxx> -#include <rtl/ustring.hxx> -#include <unotools/options.hxx> - -#define MUTEX ::osl::Mutex - -/*-************************************************************************************************************//** - @short forward declaration to our private date container implementation - @descr We use these class as internal member to support small memory requirements. - You can create the container if it is neccessary. The class which use these mechanism - is faster and smaller then a complete implementation! -*//*-*************************************************************************************************************/ - -class SvtInternalOptions_Impl; - -/*-************************************************************************************************************//** - @short collect information about internal features - @descr - - - @implements - - @base - - - @ATTENTION This class is partially threadsafe. - - @devstatus ready to use -*//*-*************************************************************************************************************/ - -class UNOTOOLS_DLLPUBLIC SAL_WARN_UNUSED SvtInternalOptions : public utl::detail::Options -{ - public: - - /*-****************************************************************************************************//** - @short standard constructor and destructor - @descr This will initialize an instance with default values. - We implement these class with a refcount mechanism! Every instance of this class increase it - at create and decrease it at delete time - but all instances use the same data container! - He is implemented as a static member ... - - @seealso member m_nRefCount - @seealso member m_pDataContainer - - @param - - @return - - - @onerror - - *//*-*****************************************************************************************************/ - - SvtInternalOptions(); - virtual ~SvtInternalOptions(); - - /*-****************************************************************************************************//** - @short interface methods to get and set value of config key "org.openoffice.Office.Common/Internal/..." - @descr These options describe internal states to enable/disable features of installed office. - The values are fixed at runtime - and implemented as readonly! - - SlotCFGEnabled() => If this option is set (true), StarOffice is searching for the slot.cfg. - If the slot.cfg cannot be found, the start is aborted. - If this option is not set (false), the slot.cfg must not be available, - otherwise the start is also aborted. - - CrashMailEnabled() => Crash-Mail-Feature to document program crashes. After a crash, - an e-mail with information about the system used is generated - automatically when starting StarOffice. - - @seealso configuration package "org.openoffice.Office.Common/Internal" - *//*-*****************************************************************************************************/ - - sal_Bool SlotCFGEnabled () const; - sal_Bool MailUIEnabled () const; - - ::rtl::OUString GetCurrentTempURL() const; - void SetCurrentTempURL( const ::rtl::OUString& aNewCurrentTempURL ); - - private: - - /*-****************************************************************************************************//** - @short return a reference to a static mutex - @descr These class is partially threadsafe (for de-/initialization only). - All access methods are'nt safe! - We create a static mutex only for one ime and use at different times. - - @seealso - - - @param - - @return A reference to a static mutex member. - - @onerror - - *//*-*****************************************************************************************************/ - - UNOTOOLS_DLLPRIVATE static MUTEX& GetOwnStaticMutex(); - - private: - - /*Attention - - Don't initialize these static member in these header! - a) Double dfined symbols will be detected ... - b) and unresolved externals exist at linking time. - Do it in your source only. - */ - - static SvtInternalOptions_Impl* m_pDataContainer ; /// impl. data container as dynamic pointer for smaller memory requirements! - static sal_Int32 m_nRefCount ; /// internal ref count mechanism - -}; // class SvtInternalOptions - -#endif // #ifndef INCLUDED_unotools_INTERNALOPTIONS_HXX - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/unotools/inc/unotools/itemholderbase.hxx b/unotools/inc/unotools/itemholderbase.hxx index dab45e6bac68..2efc282284f4 100644 --- a/unotools/inc/unotools/itemholderbase.hxx +++ b/unotools/inc/unotools/itemholderbase.hxx @@ -57,8 +57,6 @@ enum EItem E_HELPOPTIONS , // 2 E_HISTORYOPTIONS , // - E_INTERNALOPTIONS , // - E_JAVAOPTIONS , // E_LANGUAGEOPTIONS , // 2 diff --git a/unotools/source/config/internaloptions.cxx b/unotools/source/config/internaloptions.cxx deleted file mode 100644 index faa8252447a4..000000000000 --- a/unotools/source/config/internaloptions.cxx +++ /dev/null @@ -1,363 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#include <deque> - -#include <unotools/internaloptions.hxx> -#include <unotools/configmgr.hxx> -#include <unotools/configitem.hxx> -#include <tools/debug.hxx> -#include <com/sun/star/uno/Any.hxx> -#include <com/sun/star/uno/Sequence.hxx> -#include <com/sun/star/beans/PropertyValue.hpp> - -#include <rtl/logfile.hxx> -#include "itemholder1.hxx" - -//_________________________________________________________________________________________________________________ -// namespaces -//_________________________________________________________________________________________________________________ - -using namespace ::utl ; -using namespace ::rtl ; -using namespace ::osl ; -using namespace ::std ; -using namespace ::com::sun::star::uno ; -using namespace ::com::sun::star::beans ; - -#define ROOTNODE_INTERNAL OUString("Office.Common/Internal") -#define DEFAULT_SLOTCFG sal_False -#define DEFAULT_SENDCRASHMAIL sal_False -#define DEFAULT_USEMAILUI sal_True -#define DEFAULT_CURRENTTEMPURL OUString("") - -#define FIXPROPERTYNAME_SLOTCFG OUString("Slot") -#define FIXPROPERTYNAME_SENDCRASHMAIL OUString("SendCrashMail") -#define FIXPROPERTYNAME_USEMAILUI OUString("UseMailUI") -#define FIXPROPERTYNAME_CURRENTTEMPURL OUString("CurrentTempURL") - -#define FIXPROPERTYHANDLE_SLOTCFG 0 -#define FIXPROPERTYHANDLE_SENDCRASHMAIL 1 -#define FIXPROPERTYHANDLE_USEMAILUI 2 -#define FIXPROPERTYHANDLE_CURRENTTEMPURL 3 - -class SvtInternalOptions_Impl : public ConfigItem -{ - //------------------------------------------------------------------------------------------------------------- - // private member - //------------------------------------------------------------------------------------------------------------- - - private: - - sal_Bool m_bRemoveMenuEntryClose; - sal_Bool m_bRemoveMenuEntryBackToWebtop; - sal_Bool m_bRemoveMenuEntryNewWebtop; - sal_Bool m_bRemoveMenuEntryLogout; - sal_Bool m_bSlotCFG ; /// cache "Slot" of Internal section - sal_Bool m_bSendCrashMail ; /// cache "SendCrashMail" of Internal section - sal_Bool m_bUseMailUI; - OUString m_aCurrentTempURL ; - //------------------------------------------------------------------------------------------------------------- - // public methods - //------------------------------------------------------------------------------------------------------------- - - public: - - //--------------------------------------------------------------------------------------------------------- - // constructor / destructor - //--------------------------------------------------------------------------------------------------------- - - SvtInternalOptions_Impl(); - ~SvtInternalOptions_Impl(); - - //--------------------------------------------------------------------------------------------------------- - // overloaded methods of baseclass - //--------------------------------------------------------------------------------------------------------- - - /*-****************************************************************************************************//** - @short called for notify of configmanager - @descr These method is called from the ConfigManager before application ends or from the - PropertyChangeListener if the sub tree broadcasts changes. You must update your - internal values. - - @seealso baseclass ConfigItem - - @param "seqPropertyNames" is the list of properties which should be updated. - @return - - - @onerror - - *//*-*****************************************************************************************************/ - - virtual void Notify( const Sequence< OUString >& ) - { - DBG_ASSERT( sal_False, "SvtInternalOptions::Notify()\nNot used yet ... but called!?\n" ); - } - - /*-****************************************************************************************************//** - @short write changes to configuration - @descr These method writes the changed values into the sub tree - and should always called in our destructor to guarantee consistency of config data. - - @seealso baseclass ConfigItem - - @param - - @return - - - @onerror - - *//*-*****************************************************************************************************/ - - virtual void Commit(); - - //--------------------------------------------------------------------------------------------------------- - // public interface - //--------------------------------------------------------------------------------------------------------- - - /*-****************************************************************************************************//** - @short access method to get internal values - @descr These method give us a chance to regulate acces to ouer internal values. - It's not used in the moment - but it's possible for the feature! - - @seealso - - - @param - - @return - - - @onerror - - *//*-*****************************************************************************************************/ - - sal_Bool IsRemoveMenuEntryClose() const { return m_bRemoveMenuEntryClose; } - sal_Bool IsRemoveMenuEntryBackToWebtop() const { return m_bRemoveMenuEntryBackToWebtop; } - sal_Bool IsRemoveMenuEntryNewWebtop() const { return m_bRemoveMenuEntryNewWebtop; } - sal_Bool IsRemoveMenuEntryLogout() const { return m_bRemoveMenuEntryLogout; } - sal_Bool SlotCFGEnabled () const { return m_bSlotCFG; } - sal_Bool CrashMailEnabled () const { return m_bSendCrashMail; } - sal_Bool MailUIEnabled () const { return m_bUseMailUI; } - - OUString GetCurrentTempURL() const { return m_aCurrentTempURL; } - void SetCurrentTempURL( const OUString& aNewCurrentTempURL ); - //------------------------------------------------------------------------------------------------------------- - // private methods - //------------------------------------------------------------------------------------------------------------- - - private: - - /*-****************************************************************************************************//** - @short return list of fix key names of ouer configuration management which represent oue module tree - @descr These methods return a static const list of key names. We need it to get needed values from our - configuration management. We return well known key names only - because the "UserData" node - is handled in a special way! - - @seealso - - - @param - - @return A list of needed configuration keys is returned. - - @onerror - - *//*-*****************************************************************************************************/ - - Sequence< OUString > impl_GetPropertyNames(); -}; - -//***************************************************************************************************************** -// constructor -//***************************************************************************************************************** -SvtInternalOptions_Impl::SvtInternalOptions_Impl() - // Init baseclasses first - : ConfigItem ( ROOTNODE_INTERNAL, CONFIG_MODE_IMMEDIATE_UPDATE ) - // Init member then. - , m_bRemoveMenuEntryClose(sal_False) - , m_bRemoveMenuEntryBackToWebtop(sal_False) - , m_bRemoveMenuEntryNewWebtop(sal_False) - , m_bRemoveMenuEntryLogout(sal_False) - , m_bSlotCFG(DEFAULT_SLOTCFG) - , m_bSendCrashMail(DEFAULT_SENDCRASHMAIL) - , m_bUseMailUI(DEFAULT_USEMAILUI) - , m_aCurrentTempURL(DEFAULT_CURRENTTEMPURL) -{ - // Use our list of configuration keys to get his values. - // structure of internal section: (first 2 entries are fixed - all other are member of a set!) - // "Slot" - // "SendCrashMail" - // "RecoveryList/r1/URL" - // "RecoveryList/r1/Filter" - // "RecoveryList/r1/TempName" - // "RecoveryList/r2/URL" - // "RecoveryList/r2/Filter" - // "RecoveryList/r2/TempName" - // "RecoveryList/.." - Sequence< OUString > seqNames = impl_GetPropertyNames() ; - Sequence< Any > seqValues = GetProperties( seqNames ) ; - - // Safe impossible cases. - // We need values from ALL configuration keys. - // Follow assignment use order of values in relation to our list of key names! - DBG_ASSERT( !(seqNames.getLength()!=seqValues.getLength()), "SvtInternalOptions_Impl::SvtInternalOptions_Impl()\nI miss some values of configuration keys!\n" ); - - // Read fixed values first! - DBG_ASSERT(!seqValues[FIXPROPERTYHANDLE_SLOTCFG].hasValue() || (seqValues[FIXPROPERTYHANDLE_SLOTCFG].getValueTypeClass() == TypeClass_BOOLEAN), "SvtInternalOptions_Impl::SvtInternalOptions_Impl()\nWho has changed the value type of \"Office.Common\\Internal\\Slot\"?"); - DBG_ASSERT(!seqValues[FIXPROPERTYHANDLE_SENDCRASHMAIL].hasValue() || !(seqValues[FIXPROPERTYHANDLE_SENDCRASHMAIL].getValueTypeClass()!=TypeClass_BOOLEAN), "SvtInternalOptions_Impl::SvtInternalOptions_Impl()\nWho has changed the value type of \"Office.Common\\Internal\\SendCrashMail\"?"); - seqValues[FIXPROPERTYHANDLE_SLOTCFG] >>= m_bSlotCFG; - seqValues[FIXPROPERTYHANDLE_SENDCRASHMAIL] >>= m_bSendCrashMail; - seqValues[FIXPROPERTYHANDLE_USEMAILUI] >>= m_bUseMailUI; - seqValues[FIXPROPERTYHANDLE_CURRENTTEMPURL] >>= m_aCurrentTempURL; -} - -//***************************************************************************************************************** -// destructor -//***************************************************************************************************************** -SvtInternalOptions_Impl::~SvtInternalOptions_Impl() -{ - if( IsModified() == sal_True ) - { - Commit(); - } -} - -//***************************************************************************************************************** -// public method -//***************************************************************************************************************** -void SvtInternalOptions_Impl::Commit() -{ - // We have to write our current temp URL - Sequence< OUString > aNames( 1 ); - OUString* pNames = aNames.getArray(); - Sequence< Any > aValues( 1 ); - Any* pValues = aValues.getArray(); - - pNames[0] = FIXPROPERTYNAME_CURRENTTEMPURL; - pValues[0] <<= m_aCurrentTempURL; - - PutProperties( aNames, aValues ); -} - -//***************************************************************************************************************** -// public method -//***************************************************************************************************************** -void SvtInternalOptions_Impl::SetCurrentTempURL( const OUString& aNewCurrentTempURL ) -{ - m_aCurrentTempURL = aNewCurrentTempURL; - SetModified(); - Commit(); -} - -//***************************************************************************************************************** -// private method -//***************************************************************************************************************** -Sequence< OUString > SvtInternalOptions_Impl::impl_GetPropertyNames() -{ - Sequence< OUString > seqProperties(4); - - // Add names of fix properties to list. - seqProperties[FIXPROPERTYHANDLE_SLOTCFG ] = FIXPROPERTYNAME_SLOTCFG ; - seqProperties[FIXPROPERTYHANDLE_SENDCRASHMAIL ] = FIXPROPERTYNAME_SENDCRASHMAIL ; - seqProperties[FIXPROPERTYHANDLE_USEMAILUI ] = FIXPROPERTYNAME_USEMAILUI ; - seqProperties[FIXPROPERTYHANDLE_CURRENTTEMPURL ] = FIXPROPERTYNAME_CURRENTTEMPURL ; - // Return result. - return seqProperties; -} - -//***************************************************************************************************************** -// initialize static member -// DON'T DO IT IN YOUR HEADER! -// see definition for further informations -//***************************************************************************************************************** -SvtInternalOptions_Impl* SvtInternalOptions::m_pDataContainer = NULL ; -sal_Int32 SvtInternalOptions::m_nRefCount = 0 ; - -//***************************************************************************************************************** -// constructor -//***************************************************************************************************************** -SvtInternalOptions::SvtInternalOptions() -{ - // Global access, must be guarded (multithreading!). - MutexGuard aGuard( GetOwnStaticMutex() ); - // Increase ouer refcount ... - ++m_nRefCount; - // ... and initialize ouer data container only if it not already! - if( m_pDataContainer == NULL ) - { - RTL_LOGFILE_CONTEXT(aLog, "unotools ( ??? ) ::SvtInternalOptions_Impl::ctor()"); - m_pDataContainer = new SvtInternalOptions_Impl(); - - ItemHolder1::holdConfigItem(E_INTERNALOPTIONS); - } -} - -//***************************************************************************************************************** -// destructor -//***************************************************************************************************************** -SvtInternalOptions::~SvtInternalOptions() -{ - // Global access, must be guarded (multithreading!) - MutexGuard aGuard( GetOwnStaticMutex() ); - // Decrease ouer refcount. - --m_nRefCount; - // If last instance was deleted ... - // we must destroy ouer static data container! - if( m_nRefCount <= 0 ) - { - delete m_pDataContainer; - m_pDataContainer = NULL; - } -} - -//***************************************************************************************************************** -// public method -//***************************************************************************************************************** -sal_Bool SvtInternalOptions::SlotCFGEnabled() const -{ - MutexGuard aGuard( GetOwnStaticMutex() ); - return m_pDataContainer->SlotCFGEnabled(); -} - -//***************************************************************************************************************** -// public method -//***************************************************************************************************************** -sal_Bool SvtInternalOptions::MailUIEnabled() const -{ - MutexGuard aGuard( GetOwnStaticMutex() ); - return m_pDataContainer->MailUIEnabled(); -} - -OUString SvtInternalOptions::GetCurrentTempURL() const -{ - MutexGuard aGuard( GetOwnStaticMutex() ); - return m_pDataContainer->GetCurrentTempURL(); -} - -void SvtInternalOptions::SetCurrentTempURL( const OUString& aNewCurrentTempURL ) -{ - MutexGuard aGuard( GetOwnStaticMutex() ); - m_pDataContainer->SetCurrentTempURL( aNewCurrentTempURL ); -} - -namespace -{ - class theInternalOptionsMutex : public rtl::Static<osl::Mutex, theInternalOptionsMutex>{}; -} - -//***************************************************************************************************************** -// private method -//***************************************************************************************************************** -Mutex& SvtInternalOptions::GetOwnStaticMutex() -{ - return theInternalOptionsMutex::get(); -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/unotools/source/config/itemholder1.cxx b/unotools/source/config/itemholder1.cxx index 0bac77328ccb..8d042453a6c0 100644 --- a/unotools/source/config/itemholder1.cxx +++ b/unotools/source/config/itemholder1.cxx @@ -36,7 +36,6 @@ #include <unotools/fltrcfg.hxx> #include <unotools/fontoptions.hxx> #include <unotools/historyoptions.hxx> -#include <unotools/internaloptions.hxx> #include <unotools/lingucfg.hxx> #include <unotools/localisationoptions.hxx> #include <unotools/moduleoptions.hxx> @@ -187,10 +186,6 @@ void ItemHolder1::impl_newItem(TItemInfo& rItem) rItem.pItem = new SvtHistoryOptions(); break; - case E_INTERNALOPTIONS : - rItem.pItem = new SvtInternalOptions(); - break; - case E_JAVAOPTIONS : // no ref count rItem.pItem = new SvtJavaOptions(); break; |