Hi,
I have submitted a patch for review:
https://gerrit.libreoffice.org/3191
To pull it, you can do:
git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/91/3191/1
unotools: remove some unused items
Change-Id: I95bcac6a3ff8cf4644c9d1596c75cac2d9cd94fe
---
M officecfg/registry/schema/org/openoffice/Office/Common.xcs
M sfx2/source/appl/app.cxx
M unotools/Library_utl.mk
M unotools/Package_inc.mk
D unotools/inc/unotools/accelcfg.hxx
M unotools/inc/unotools/itemholderbase.hxx
D unotools/inc/unotools/workingsetoptions.hxx
M unotools/inc/unotools/xmlaccelcfg.hxx
D unotools/source/config/accelcfg.cxx
M unotools/source/config/itemholder1.cxx
D unotools/source/config/workingsetoptions.cxx
11 files changed, 11 insertions(+), 740 deletions(-)
diff --git a/officecfg/registry/schema/org/openoffice/Office/Common.xcs
b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
index 66e353c..f819ebe 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Common.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
@@ -3694,21 +3694,6 @@
</group>
</group>
</group>
- <group oor:name="WorkingSet">
- <info>
- <deprecated/>
- <desc>Lists open documents or windows.</desc>
- </info>
- <prop oor:name="WindowList" oor:type="oor:string-list">
- <!-- OldPath: SavedWorkingSet -->
- <!-- OldLocation: soffice.ini -->
- <!-- UIHints: Tools Options - General Save -->
- <info>
- <deprecated/>
- <desc>Lists open documents or windows.</desc>
- </info>
- </prop>
- </group>
<group oor:name="AddXMLToStorage">
<info>
<desc>Contains settings specifying if a XML package is added to the
diff --git a/sfx2/source/appl/app.cxx b/sfx2/source/appl/app.cxx
index 479f9d4..3b31dbd 100644
--- a/sfx2/source/appl/app.cxx
+++ b/sfx2/source/appl/app.cxx
@@ -113,7 +113,6 @@
#include <unotools/securityoptions.hxx>
#include <unotools/localisationoptions.hxx>
#include <unotools/fontoptions.hxx>
-#include <unotools/workingsetoptions.hxx>
#include <unotools/syslocaleoptions.hxx>
#include <unotools/syslocale.hxx>
#include <framework/addonsoptions.hxx>
diff --git a/unotools/Library_utl.mk b/unotools/Library_utl.mk
index d99c18b..dcef7a8 100644
--- a/unotools/Library_utl.mk
+++ b/unotools/Library_utl.mk
@@ -71,7 +71,6 @@
$(eval $(call gb_Library_add_exception_objects,utl,\
unotools/source/accessibility/accessiblerelationsethelper \
unotools/source/accessibility/accessiblestatesethelper \
- unotools/source/config/accelcfg \
unotools/source/config/bootstrap \
unotools/source/config/cmdoptions \
unotools/source/config/compatibility \
@@ -104,7 +103,6 @@
unotools/source/config/syslocaleoptions \
unotools/source/config/useroptions \
unotools/source/config/viewoptions \
- unotools/source/config/workingsetoptions \
unotools/source/config/xmlaccelcfg \
unotools/source/i18n/calendarwrapper \
unotools/source/i18n/caserotate \
diff --git a/unotools/Package_inc.mk b/unotools/Package_inc.mk
index 92ec12e..1a47ec1 100644
--- a/unotools/Package_inc.mk
+++ b/unotools/Package_inc.mk
@@ -27,7 +27,6 @@
$(eval $(call gb_Package_Package,unotools_inc,$(SRCDIR)/unotools/inc))
-$(eval $(call gb_Package_add_file,unotools_inc,inc/unotools/accelcfg.hxx,unotools/accelcfg.hxx))
$(eval $(call
gb_Package_add_file,unotools_inc,inc/unotools/accessiblerelationsethelper.hxx,unotools/accessiblerelationsethelper.hxx))
$(eval $(call
gb_Package_add_file,unotools_inc,inc/unotools/accessiblestatesethelper.hxx,unotools/accessiblestatesethelper.hxx))
$(eval $(call gb_Package_add_file,unotools_inc,inc/unotools/atom.hxx,unotools/atom.hxx))
@@ -96,7 +95,6 @@
$(eval $(call
gb_Package_add_file,unotools_inc,inc/unotools/unotoolsdllapi.h,unotools/unotoolsdllapi.h))
$(eval $(call
gb_Package_add_file,unotools_inc,inc/unotools/useroptions.hxx,unotools/useroptions.hxx))
$(eval $(call
gb_Package_add_file,unotools_inc,inc/unotools/viewoptions.hxx,unotools/viewoptions.hxx))
-$(eval $(call
gb_Package_add_file,unotools_inc,inc/unotools/workingsetoptions.hxx,unotools/workingsetoptions.hxx))
$(eval $(call
gb_Package_add_file,unotools_inc,inc/unotools/xmlaccelcfg.hxx,unotools/xmlaccelcfg.hxx))
# vim: set noet sw=4 ts=4:
diff --git a/unotools/inc/unotools/accelcfg.hxx b/unotools/inc/unotools/accelcfg.hxx
deleted file mode 100644
index c60a4f0..0000000
--- a/unotools/inc/unotools/accelcfg.hxx
+++ /dev/null
@@ -1,65 +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_ACCELCFG_HXX
-#define INCLUDED_unotools_ACCELCFG_HXX
-
-#include <com/sun/star/awt/KeyEvent.hpp>
-#include <unotools/options.hxx>
-
-#include <rtl/ustring.hxx>
-#include <tools/stream.hxx>
-
-struct SvtAcceleratorConfigItem
-{
- sal_uInt16 nCode;
- sal_uInt16 nModifier;
- OUString aCommand;
-};
-
-#include <list>
-typedef ::std::list < SvtAcceleratorConfigItem > SvtAcceleratorItemList;
-
-class SvStream;
-class KeyEvent;
-class String;
-class SvtAcceleratorConfig_Impl;
-
-class SvtAcceleratorConfiguration: public utl::detail::Options
-{
- SvtAcceleratorConfig_Impl* pImp;
-
-private:
-
-public:
- // get the global accelerators
- SvtAcceleratorConfiguration();
-
- // get special accelerators
- static String GetStreamName();
- static SvStream* GetDefaultStream( StreamMode );
-
- virtual ~SvtAcceleratorConfiguration();
-
- // save the configuration to a stream, f.e. into a document
- bool Commit( SvStream& rStream );
-};
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/unotools/inc/unotools/itemholderbase.hxx b/unotools/inc/unotools/itemholderbase.hxx
index 2efc282..831cba4 100644
--- a/unotools/inc/unotools/itemholderbase.hxx
+++ b/unotools/inc/unotools/itemholderbase.hxx
@@ -33,7 +33,6 @@
enum EItem
{
- E_ACCELCFG , //
E_ACCESSIBILITYOPTIONS , // 2
E_ADDXMLTOSTORAGEOPTIONS , //
E_APEARCFG , // 2
@@ -56,8 +55,6 @@
E_HELPOPTIONS , // 2
E_HISTORYOPTIONS , //
-
- E_JAVAOPTIONS , //
E_LANGUAGEOPTIONS , // 2
E_LINGUCFG , //
@@ -87,11 +84,7 @@
E_VIEWOPTIONS_DIALOG , //
E_VIEWOPTIONS_TABDIALOG , //
E_VIEWOPTIONS_TABPAGE , //
- E_VIEWOPTIONS_WINDOW , //
-
- E_WORKINGSETOPTIONS , //
-
- E_XMLACCELCFG //
+ E_VIEWOPTIONS_WINDOW //
};
struct TItemInfo
diff --git a/unotools/inc/unotools/workingsetoptions.hxx
b/unotools/inc/unotools/workingsetoptions.hxx
deleted file mode 100644
index c351da8..0000000
--- a/unotools/inc/unotools/workingsetoptions.hxx
+++ /dev/null
@@ -1,122 +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_WORKINGSETOPTIONS_HXX
-#define INCLUDED_unotools_WORKINGSETOPTIONS_HXX
-
-#include <sal/types.h>
-#include <osl/mutex.hxx>
-#include <com/sun/star/uno/Sequence.h>
-#include <rtl/ustring.hxx>
-#include <unotools/options.hxx>
-
-//_________________________________________________________________________________________________________________
-// forward declarations
-//_________________________________________________________________________________________________________________
-
-/*-************************************************************************************************************//**
- @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 SvtWorkingSetOptions_Impl;
-
-/*-************************************************************************************************************//**
- @short collect information about security features
- @descr -
-
- @implements -
- @base -
-
- @devstatus ready to use
-*//*-*************************************************************************************************************/
-
-class SAL_WARN_UNUSED SvtWorkingSetOptions : public utl::detail::Options
-{
-
//-------------------------------------------------------------------------------------------------------------
- // public methods
-
//-------------------------------------------------------------------------------------------------------------
-
- public:
-
-
//---------------------------------------------------------------------------------------------------------
- // constructor / destructor
-
//---------------------------------------------------------------------------------------------------------
-
-
/*-****************************************************************************************************//**
- @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 -
-
*//*-*****************************************************************************************************/
-
- SvtWorkingSetOptions();
- virtual ~SvtWorkingSetOptions();
-
-
//-------------------------------------------------------------------------------------------------------------
- // private methods
-
//-------------------------------------------------------------------------------------------------------------
-
-
/*-****************************************************************************************************//**
- @short return a reference to a static mutex
- @descr These class use his own static mutex to be threadsafe.
- 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 -
-
*//*-*****************************************************************************************************/
-
- static ::osl::Mutex& GetOwnStaticMutex();
-
-
//-------------------------------------------------------------------------------------------------------------
- // private member
-
//-------------------------------------------------------------------------------------------------------------
-
- 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 SvtWorkingSetOptions_Impl* m_pDataContainer ; /// impl. data container as
dynamic pointer for smaller memory requirements!
- static sal_Int32 m_nRefCount ; /// internal ref count
mechanism
-
-}; // class SvtWorkingSetOptions
-
-#endif // #ifndef INCLUDED_unotools_WORKINGSETOPTIONS_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/unotools/inc/unotools/xmlaccelcfg.hxx b/unotools/inc/unotools/xmlaccelcfg.hxx
index 8e2c698..48417b2 100644
--- a/unotools/inc/unotools/xmlaccelcfg.hxx
+++ b/unotools/inc/unotools/xmlaccelcfg.hxx
@@ -23,7 +23,16 @@
#include <com/sun/star/xml/sax/XDocumentHandler.hpp>
#include <cppuhelper/weak.hxx>
-#include <unotools/accelcfg.hxx>
+struct SvtAcceleratorConfigItem
+{
+ sal_uInt16 nCode;
+ sal_uInt16 nModifier;
+ OUString aCommand;
+};
+
+#include <list>
+typedef ::std::list < SvtAcceleratorConfigItem > SvtAcceleratorItemList;
+
class OReadAccelatorDocumentHandler : public ::com::sun::star::xml::sax::XDocumentHandler,
public ::cppu::OWeakObject
diff --git a/unotools/source/config/accelcfg.cxx b/unotools/source/config/accelcfg.cxx
deleted file mode 100644
index 9c48b7f..0000000
--- a/unotools/source/config/accelcfg.cxx
+++ /dev/null
@@ -1,202 +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 "rtl/instance.hxx"
-#include <com/sun/star/uno/Any.hxx>
-#include <com/sun/star/uno/Sequence.hxx>
-#include <com/sun/star/io/XActiveDataSource.hpp>
-#include <com/sun/star/io/XInputStream.hpp>
-#include <com/sun/star/io/XOutputStream.hpp>
-#include <com/sun/star/xml/sax/Parser.hpp>
-#include <com/sun/star/xml/sax/Writer.hpp>
-#include <unotools/configmgr.hxx>
-#include <unotools/configitem.hxx>
-
-#include <osl/mutex.hxx>
-#include <tools/string.hxx>
-#include <tools/urlobj.hxx>
-#include <unotools/streamwrap.hxx>
-#include <unotools/ucbstreamhelper.hxx>
-#include <comphelper/processfactory.hxx>
-
-#include <unotools/accelcfg.hxx>
-#include <unotools/xmlaccelcfg.hxx>
-#include <unotools/pathoptions.hxx>
-#include "itemholder1.hxx"
-
-
-using namespace utl;
-using namespace com::sun::star::uno;
-using namespace com::sun::star::io;
-using namespace com::sun::star::xml::sax;
-
-using ::rtl::OUString;
-
-
-static SvtAcceleratorConfig_Impl* pOptions = NULL;
-static sal_Int32 nRefCount = 0;
-
-class SvtAcceleratorConfig_Impl
-{
-public:
-
- SvtAcceleratorItemList aList;
- bool bModified;
-
- SvtAcceleratorConfig_Impl()
- : bModified( sal_False )
- {}
-
- SvtAcceleratorConfig_Impl( Reference< XInputStream >& xInputStream );
- bool Commit( Reference< XOutputStream >& xOutputStream );
-};
-
-// -----------------------------------------------------------------------
-
-SvtAcceleratorConfig_Impl::SvtAcceleratorConfig_Impl( Reference< XInputStream >& rInputStream )
- : bModified( false )
-{
- Reference< XParser > xParser = Parser::create( ::comphelper::getProcessComponentContext() );
-
- // connect stream to input stream to the parser
- InputSource aInputSource;
- aInputSource.aInputStream = rInputStream;
-
- // get filter
- Reference< XDocumentHandler > xFilter( new OReadAccelatorDocumentHandler( aList ));
-
- // connect parser and filter
- xParser->setDocumentHandler( xFilter );
- xParser->parseStream( aInputSource );
-}
-
-bool SvtAcceleratorConfig_Impl::Commit( Reference< XOutputStream >& rOutputStream )
-{
- Reference< XWriter > xWriter = Writer::create( ::comphelper::getProcessComponentContext() );
-
- xWriter->setOutputStream( rOutputStream );
- try
- {
- OWriteAccelatorDocumentHandler aWriteHandler( aList, Reference<XDocumentHandler>(xWriter,
UNO_QUERY_THROW) );
- aWriteHandler.WriteAcceleratorDocument();
- rOutputStream->flush();
- return true;
- }
- catch ( RuntimeException& )
- {
- }
- catch ( SAXException& )
- {
- }
- catch ( ::com::sun::star::io::IOException& )
- {
- }
-
- return false;
-}
-
-namespace
-{
- class LocalSingleton : public rtl::Static< osl::Mutex, LocalSingleton >
- {
- };
-}
-
-SvtAcceleratorConfiguration::SvtAcceleratorConfiguration()
-{
- // Global access, must be guarded (multithreading)
- ::osl::MutexGuard aGuard( LocalSingleton::get() );
- if ( !pOptions )
- {
- SvStream* pStream = GetDefaultStream( STREAM_STD_READ );
- ::utl::OInputStreamWrapper aHelper( *pStream );
- com::sun::star::uno::Reference < ::com::sun::star::io::XInputStream > xOut( &aHelper );
-
- try
- {
- pOptions = new SvtAcceleratorConfig_Impl( xOut );
- }
- catch ( RuntimeException& )
- {
- pOptions = new SvtAcceleratorConfig_Impl();
- }
- catch( SAXException& )
- {
- pOptions = new SvtAcceleratorConfig_Impl();
- }
- catch( ::com::sun::star::io::IOException& )
- {
- pOptions = new SvtAcceleratorConfig_Impl();
- }
-
- if (pOptions)
- ItemHolder1::holdConfigItem(E_ACCELCFG);
-
- delete pStream;
- }
-
- ++nRefCount;
- pImp = pOptions;
-}
-
-// -----------------------------------------------------------------------
-
-SvtAcceleratorConfiguration::~SvtAcceleratorConfiguration()
-{
- if ( pImp == pOptions )
- {
- // Global access, must be guarded (multithreading)
- ::osl::MutexGuard aGuard( LocalSingleton::get() );
- if ( !--nRefCount )
- {
- if ( pImp->bModified )
- {
- String aUserConfig = SvtPathOptions().GetUserConfigPath();
- INetURLObject aObj( aUserConfig );
- aObj.insertName( rtl::OUString("GlobalKeyBindings.xml") );
- SvStream* pStream = ::utl::UcbStreamHelper::CreateStream( aObj.GetMainURL(
INetURLObject::NO_DECODE ), STREAM_STD_READWRITE|STREAM_TRUNC );
- com::sun::star::uno::Reference < ::com::sun::star::io::XOutputStream > xOut( new
utl::OOutputStreamWrapper( *pStream ) );
- pImp->Commit( xOut );
- delete pStream;
- }
-
- DELETEZ( pOptions );
- }
- }
- else
- {
- delete pImp;
- }
-}
-
-String SvtAcceleratorConfiguration::GetStreamName()
-{
- return rtl::OUString("KeyBindings.xml");
-}
-
-SvStream* SvtAcceleratorConfiguration::GetDefaultStream( StreamMode nMode )
-{
- String aUserConfig = SvtPathOptions().GetUserConfigPath();
- INetURLObject aObj( aUserConfig );
- aObj.insertName( GetStreamName() );
- return ::utl::UcbStreamHelper::CreateStream( aObj.GetMainURL( INetURLObject::NO_DECODE ),
nMode );
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/unotools/source/config/itemholder1.cxx b/unotools/source/config/itemholder1.cxx
index 8d04245..8220c48 100644
--- a/unotools/source/config/itemholder1.cxx
+++ b/unotools/source/config/itemholder1.cxx
@@ -26,7 +26,6 @@
#include <unotools/misccfg.hxx>
#include <unotools/useroptions.hxx>
-#include <unotools/accelcfg.hxx>
#include <unotools/cmdoptions.hxx>
#include <unotools/compatibility.hxx>
#include <unotools/defaultoptions.hxx>
@@ -46,7 +45,6 @@
#include <unotools/searchopt.hxx>
#include <unotools/securityoptions.hxx>
#include <unotools/viewoptions.hxx>
-#include <unotools/workingsetoptions.hxx>
#include <unotools/xmlaccelcfg.hxx>
#include <unotools/options.hxx>
#include <unotools/syslocaleoptions.hxx>
@@ -146,10 +144,6 @@
{
switch(rItem.eItem)
{
- case E_ACCELCFG :
- rItem.pItem = new SvtAcceleratorConfiguration();
- break;
-
case E_CMDOPTIONS :
rItem.pItem = new SvtCommandOptions();
break;
@@ -184,10 +178,6 @@
case E_HISTORYOPTIONS :
rItem.pItem = new SvtHistoryOptions();
- break;
-
- case E_JAVAOPTIONS :
-// no ref count rItem.pItem = new SvtJavaOptions();
break;
case E_LINGUCFG :
@@ -244,14 +234,6 @@
case E_VIEWOPTIONS_WINDOW :
rItem.pItem = new SvtViewOptions(E_WINDOW, ::rtl::OUString());
- break;
-
- case E_WORKINGSETOPTIONS :
- rItem.pItem = new SvtWorkingSetOptions();
- break;
-
- case E_XMLACCELCFG :
- // ??? TODO
break;
case E_USEROPTIONS :
diff --git a/unotools/source/config/workingsetoptions.cxx
b/unotools/source/config/workingsetoptions.cxx
deleted file mode 100644
index 0ea5c47..0000000
--- a/unotools/source/config/workingsetoptions.cxx
+++ /dev/null
@@ -1,304 +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 <unotools/workingsetoptions.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 <itemholder1.hxx>
-
-//_________________________________________________________________________________________________________________
-// namespaces
-//_________________________________________________________________________________________________________________
-
-using namespace ::utl ;
-using namespace ::rtl ;
-using namespace ::osl ;
-using namespace ::com::sun::star::uno ;
-
-#define ROOTNODE_WORKINGSET OUString("Office.Common/WorkingSet")
-#define DEFAULT_WINDOWLIST Sequence< OUString >()
-
-#define PROPERTYNAME_WINDOWLIST OUString("WindowList")
-
-#define PROPERTYHANDLE_WINDOWLIST 0
-
-#define PROPERTYCOUNT 1
-
-//_________________________________________________________________________________________________________________
-// private declarations!
-//_________________________________________________________________________________________________________________
-
-class SvtWorkingSetOptions_Impl : public ConfigItem
-{
-
//-------------------------------------------------------------------------------------------------------------
- // public methods
-
//-------------------------------------------------------------------------------------------------------------
-
- public:
-
-
//---------------------------------------------------------------------------------------------------------
- // constructor / destructor
-
//---------------------------------------------------------------------------------------------------------
-
- SvtWorkingSetOptions_Impl();
- ~SvtWorkingSetOptions_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 >& seqPropertyNames );
-
-
/*-****************************************************************************************************//**
- @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();
-
-
//-------------------------------------------------------------------------------------------------------------
- // private methods
-
//-------------------------------------------------------------------------------------------------------------
-
- private:
-
-
/*-****************************************************************************************************//**
- @short return list of 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.
-
- @seealso -
-
- @param -
- @return A list of needed configuration keys is returned.
-
- @onerror -
-
*//*-*****************************************************************************************************/
-
- static Sequence< OUString > GetPropertyNames();
-
-
//-------------------------------------------------------------------------------------------------------------
- // private member
-
//-------------------------------------------------------------------------------------------------------------
-
- private:
-
- Sequence< OUString > m_seqWindowList ;
-};
-
-//*****************************************************************************************************************
-// constructor
-//*****************************************************************************************************************
-SvtWorkingSetOptions_Impl::SvtWorkingSetOptions_Impl()
- // Init baseclasses first
- : ConfigItem ( ROOTNODE_WORKINGSET )
- // Init member then.
- , m_seqWindowList ( DEFAULT_WINDOWLIST )
-{
- // Use our static list of configuration keys to get his values.
- Sequence< OUString > seqNames = 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()),
"SvtWorkingSetOptions_Impl::SvtWorkingSetOptions_Impl()\nI miss some values of configuration
keys!\n" );
-
- // Copy values from list in right order to ouer internal member.
- sal_Int32 nPropertyCount = seqValues.getLength();
- for( sal_Int32 nProperty=0; nProperty<nPropertyCount; ++nProperty )
- {
- // Safe impossible cases.
- // Check any for valid value.
- DBG_ASSERT( !(seqValues[nProperty].hasValue()==sal_False),
"SvtWorkingSetOptions_Impl::SvtWorkingSetOptions_Impl()\nInvalid property value detected!\n" );
- switch( nProperty )
- {
- case PROPERTYHANDLE_WINDOWLIST : {
-
DBG_ASSERT(!(seqValues[nProperty].getValueTypeClass()!=TypeClass_SEQUENCE),
"SvtWorkingSetOptions_Impl::SvtWorkingSetOptions_Impl()\nWho has changed the value type of
\"Office.Common\\WorkingSet\\WindowList\"?" );
- seqValues[nProperty] >>= m_seqWindowList;
- }
- break;
- }
- }
-
- // Enable notification mechanism of ouer baseclass.
- // We need it to get information about changes outside these class on ouer used configuration
keys!
- EnableNotification( seqNames );
-}
-
-//*****************************************************************************************************************
-// destructor
-//*****************************************************************************************************************
-SvtWorkingSetOptions_Impl::~SvtWorkingSetOptions_Impl()
-{
- // We must save our current values .. if user forget it!
- if( IsModified() == sal_True )
- {
- Commit();
- }
-}
-
-//*****************************************************************************************************************
-// public method
-//*****************************************************************************************************************
-void SvtWorkingSetOptions_Impl::Notify( const Sequence< OUString >& seqPropertyNames )
-{
- // Use given list of updated properties to get his values from configuration directly!
- Sequence< Any > seqValues = GetProperties( seqPropertyNames );
- // Safe impossible cases.
- // We need values from ALL notified configuration keys.
- DBG_ASSERT( !(seqPropertyNames.getLength()!=seqValues.getLength()),
"SvtWorkingSetOptions_Impl::Notify()\nI miss some values of configuration keys!\n" );
- // Step over list of property names and get right value from coreesponding value list to set
it on internal members!
- sal_Int32 nCount = seqPropertyNames.getLength();
- for( sal_Int32 nProperty=0; nProperty<nCount; ++nProperty )
- {
- if( seqPropertyNames[nProperty] == PROPERTYNAME_WINDOWLIST )
- {
- DBG_ASSERT(!(seqValues[nProperty].getValueTypeClass()!=TypeClass_SEQUENCE),
"SvtWorkingSetOptions_Impl::Notify()\nWho has changed the value type of
\"Office.Common\\WorkingSet\\WindowList\"?" );
- seqValues[nProperty] >>= m_seqWindowList;
- }
- #if OSL_DEBUG_LEVEL > 1
- else DBG_ASSERT( sal_False, "SvtWorkingSetOptions_Impl::Notify()\nUnknown property
detected ... I can't handle these!\n" );
- #endif
- }
-}
-
-//*****************************************************************************************************************
-// public method
-//*****************************************************************************************************************
-void SvtWorkingSetOptions_Impl::Commit()
-{
- // Get names of supported properties, create a list for values and copy current values to it.
- Sequence< OUString > seqNames = GetPropertyNames ();
- sal_Int32 nCount = seqNames.getLength();
- Sequence< Any > seqValues ( nCount );
- for( sal_Int32 nProperty=0; nProperty<nCount; ++nProperty )
- {
- switch( nProperty )
- {
- case PROPERTYHANDLE_WINDOWLIST : {
- seqValues[nProperty] <<= m_seqWindowList;
- }
- break;
- }
- }
- // Set properties in configuration.
- PutProperties( seqNames, seqValues );
-}
-
-//*****************************************************************************************************************
-// private method
-//*****************************************************************************************************************
-Sequence< OUString > SvtWorkingSetOptions_Impl::GetPropertyNames()
-{
- // Build list of configuration key names.
- const OUString pProperties[] =
- {
- PROPERTYNAME_WINDOWLIST ,
- };
- // Initialize return sequence with these list ...
- const Sequence< OUString > seqPropertyNames( pProperties, PROPERTYCOUNT );
- // ... and return it.
- return seqPropertyNames;
-}
-
-//*****************************************************************************************************************
-// initialize static member
-// DON'T DO IT IN YOUR HEADER!
-// see definition for further informations
-//*****************************************************************************************************************
-SvtWorkingSetOptions_Impl* SvtWorkingSetOptions::m_pDataContainer = NULL ;
-sal_Int32 SvtWorkingSetOptions::m_nRefCount = 0 ;
-
-//*****************************************************************************************************************
-// constructor
-//*****************************************************************************************************************
-SvtWorkingSetOptions::SvtWorkingSetOptions()
-{
- // Global access, must be guarded (multithreading!).
- MutexGuard aGuard( GetOwnStaticMutex() );
- // Increase ouer refcount ...
- ++m_nRefCount;
- // ... and initialize ouer data container only if it not already exist!
- if( m_pDataContainer == NULL )
- {
- m_pDataContainer = new SvtWorkingSetOptions_Impl;
- ItemHolder1::holdConfigItem(E_WORKINGSETOPTIONS);
- }
-}
-
-//*****************************************************************************************************************
-// destructor
-//*****************************************************************************************************************
-SvtWorkingSetOptions::~SvtWorkingSetOptions()
-{
- // 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;
- }
-}
-
-namespace
-{
- class theWorkingSetOptionsMutex : public rtl::Static<osl::Mutex, theWorkingSetOptionsMutex>{};
-}
-
-//*****************************************************************************************************************
-// private method
-//*****************************************************************************************************************
-Mutex& SvtWorkingSetOptions::GetOwnStaticMutex()
-{
- return theWorkingSetOptionsMutex::get();
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
--
To view, visit https://gerrit.libreoffice.org/3191
To unsubscribe, visit https://gerrit.libreoffice.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I95bcac6a3ff8cf4644c9d1596c75cac2d9cd94fe
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: master
Gerrit-Owner: Thomas Arnhold <thomas@arnhold.org>
Context
- [PATCH] unotools: remove some unused items · Thomas Arnhold (via Code Review)
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.