Hi
Submitting a patch for review. This one moves the misplaced
Compatibility options from ScDocOptions to ScAppOptions. Please let me
know if you want me to improve some parts of it.
The rational behind this move, see:
http://lists.freedesktop.org/archives/libreoffice/2011-May/013087.html
See also:
http://lists.freedesktop.org/archives/libreoffice/2011-June/thread.html#14140
Once you are happy with it you can commit the patch under the terms of
MPL 1.1 / GPLv3+ / LGPLv3+ triple license.
Then I will do the same for the formula options.
/Albert
From 2c380b41279c9167f776b93c8396bb321d0d1592 Mon Sep 17 00:00:00 2001
From: Albert Thuswaldner <albert.thuswaldner@gmail.com>
Date: Sat, 25 Jun 2011 22:53:25 +0200
Subject: [PATCH] moved ScTpCompat from docoptions to appoptions
---
sc/inc/appoptio.hxx | 64 ++++++++++++++++++++++-
sc/inc/docoptio.hxx | 9 ---
sc/source/core/tool/appoptio.cxx | 85 +++++++++++++++++++++++--------
sc/source/core/tool/docoptio.cxx | 63 -----------------------
sc/source/ui/app/scmod.cxx | 4 --
sc/source/ui/inc/tpcompatibility.hxx | 6 +-
sc/source/ui/optdlg/tpcompatibility.cxx | 11 ++--
7 files changed, 133 insertions(+), 109 deletions(-)
diff --git a/sc/inc/appoptio.hxx b/sc/inc/appoptio.hxx
index e10b1e6..b770013 100644
--- a/sc/inc/appoptio.hxx
+++ b/sc/inc/appoptio.hxx
@@ -33,6 +33,7 @@
#include <svx/zoomitem.hxx>
#include <unotools/configitem.hxx>
#include "scdllapi.h"
+#include "scmod.hxx"
#include "global.hxx"
#include "optutil.hxx"
@@ -87,9 +88,12 @@ public:
void SetShowSharedDocumentWarning( sal_Bool bNew ) { mbShowSharedDocumentWarning =
bNew; }
sal_Bool GetShowSharedDocumentWarning() const { return
mbShowSharedDocumentWarning; }
+ ScOptionsUtil::KeyBindingType GetKeyBindingType() const { return eKeyBindingType; }
+ void SetKeyBindingType( ScOptionsUtil::KeyBindingType e ) { eKeyBindingType = e; }
-
- const ScAppOptions& operator= ( const ScAppOptions& rOpt );
+ inline const ScAppOptions& operator=( const ScAppOptions& rOpt );
+ inline int operator==( const ScAppOptions& rOpt ) const;
+ inline int operator!=( const ScAppOptions& rOpt ) const;
private:
SCTAB nTabCountInNewSpreadsheet;
@@ -110,8 +114,61 @@ private:
sal_Int32 nDefaultObjectSizeWidth;
sal_Int32 nDefaultObjectSizeHeight;
sal_Bool mbShowSharedDocumentWarning;
+ ScOptionsUtil::KeyBindingType eKeyBindingType;
};
+inline const ScAppOptions& ScAppOptions::operator=( const ScAppOptions& rCpy )
+{
+ nTabCountInNewSpreadsheet = rCpy.nTabCountInNewSpreadsheet;
+ eMetric = rCpy.eMetric;
+ eZoomType = rCpy.eZoomType;
+ bSynchronizeZoom = rCpy.bSynchronizeZoom;
+ nZoom = rCpy.nZoom;
+ SetLRUFuncList( rCpy.pLRUList, rCpy.nLRUFuncCount );
+ nStatusFunc = rCpy.nStatusFunc;
+ bAutoComplete = rCpy.bAutoComplete;
+ bDetectiveAuto = rCpy.bDetectiveAuto;
+ nTrackContentColor = rCpy.nTrackContentColor;
+ nTrackInsertColor = rCpy.nTrackInsertColor;
+ nTrackDeleteColor = rCpy.nTrackDeleteColor;
+ nTrackMoveColor = rCpy.nTrackMoveColor;
+ eLinkMode = rCpy.eLinkMode;
+ nDefaultObjectSizeWidth = rCpy.nDefaultObjectSizeWidth;
+ nDefaultObjectSizeHeight = rCpy.nDefaultObjectSizeHeight;
+ mbShowSharedDocumentWarning = rCpy.mbShowSharedDocumentWarning;
+ eKeyBindingType = rCpy.eKeyBindingType;
+
+ return *this;
+}
+
+inline int ScAppOptions::operator==( const ScAppOptions& rCpy ) const
+{
+ return {
+ rCpy.nTabCountInNewSpreadsheet == nTabCountInNewSpreadsheet
+ && rCpy.eMetric == eMetric
+ && rCpy.eZoomType == eZoomType
+ && rCpy.bSynchronizeZoom == bSynchronizeZoom
+ && rCpy.nZoom == nZoom
+ && rCpy.pLRUList == pLRUList
+ && rCpy.nStatusFunc == nStatusFunc
+ && rCpy.bAutoComplete == bAutoComplete
+ && rCpy.bDetectiveAuto == bDetectiveAuto
+ && rCpy.nTrackContentColor == nTrackContentColor
+ && rCpy.nTrackInsertColor == nTrackInsertColor
+ && rCpy.nTrackDeleteColor == nTrackDeleteColor
+ && rCpy.nTrackMoveColor == nTrackMoveColor
+ && rCpy.eLinkMode == eLinkMode
+ && rCpy.nDefaultObjectSizeWidth == nDefaultObjectSizeWidth
+ && rCpy.nDefaultObjectSizeHeight == nDefaultObjectSizeHeight
+ && rCpy.mbShowSharedDocumentWarning == mbShowSharedDocumentWarning
+ && rCpy.eKeyBindingType == eKeyBindingType
+ };
+}
+
+inline int ScAppOptions::operator!=( const ScAppOptions& rOpt ) const
+{
+ return !(operator==(rOpt));
+}
//==================================================================
// Config Item containing app options
@@ -128,6 +185,7 @@ class ScAppCfg : public ScAppOptions
ScLinkConfigItem aContentItem;
ScLinkConfigItem aSortListItem;
ScLinkConfigItem aMiscItem;
+ ScLinkConfigItem aCompatItem;
DECL_LINK( LayoutCommitHdl, void* );
DECL_LINK( InputCommitHdl, void* );
@@ -135,6 +193,7 @@ class ScAppCfg : public ScAppOptions
DECL_LINK( ContentCommitHdl, void* );
DECL_LINK( SortListCommitHdl, void* );
DECL_LINK( MiscCommitHdl, void* );
+ DECL_LINK( CompatCommitHdl, void* );
com::sun::star::uno::Sequence<rtl::OUString> GetLayoutPropertyNames();
com::sun::star::uno::Sequence<rtl::OUString> GetInputPropertyNames();
@@ -142,6 +201,7 @@ class ScAppCfg : public ScAppOptions
com::sun::star::uno::Sequence<rtl::OUString> GetContentPropertyNames();
com::sun::star::uno::Sequence<rtl::OUString> GetSortListPropertyNames();
com::sun::star::uno::Sequence<rtl::OUString> GetMiscPropertyNames();
+ com::sun::star::uno::Sequence<rtl::OUString> GetCompatPropertyNames();
public:
ScAppCfg();
diff --git a/sc/inc/docoptio.hxx b/sc/inc/docoptio.hxx
index de6b970..e5ab4ba 100644
--- a/sc/inc/docoptio.hxx
+++ b/sc/inc/docoptio.hxx
@@ -44,7 +44,6 @@ class SC_DLLPUBLIC ScDocOptions
sal_uInt16 nIterCount; // number
SCTAB nInitTabCount; // number of Tabs for new Spreadssheet doc
sal_uInt16 nPrecStandardFormat; // precision for standard format
- ScOptionsUtil::KeyBindingType eKeyBindingType;
sal_uInt16 nDay; // Null date:
sal_uInt16 nMonth;
sal_uInt16 nYear;
@@ -102,9 +101,6 @@ public:
sal_uInt16 GetStdPrecision() const { return nPrecStandardFormat; }
void SetStdPrecision( sal_uInt16 n ) { nPrecStandardFormat = n; }
- ScOptionsUtil::KeyBindingType GetKeyBindingType() const { return eKeyBindingType; }
- void SetKeyBindingType( ScOptionsUtil::KeyBindingType e ) { eKeyBindingType = e; }
-
sal_Bool IsCalcAsShown() const { return bCalcAsShown; }
void SetCalcAsShown( sal_Bool bVal ) { bCalcAsShown = bVal; }
@@ -141,7 +137,6 @@ inline const ScDocOptions& ScDocOptions::operator=( const ScDocOptions& rCpy )
nInitTabCount = rCpy.nInitTabCount;
fIterEps = rCpy.fIterEps;
nPrecStandardFormat = rCpy.nPrecStandardFormat;
- eKeyBindingType = rCpy.eKeyBindingType;
nDay = rCpy.nDay;
nMonth = rCpy.nMonth;
nYear = rCpy.nYear;
@@ -170,7 +165,6 @@ inline int ScDocOptions::operator==( const ScDocOptions& rOpt ) const
&& rOpt.nInitTabCount == nInitTabCount
&& rOpt.fIterEps == fIterEps
&& rOpt.nPrecStandardFormat == nPrecStandardFormat
- && rOpt.eKeyBindingType == eKeyBindingType
&& rOpt.nDay == nDay
&& rOpt.nMonth == nMonth
&& rOpt.nYear == nYear
@@ -226,19 +220,16 @@ class ScDocCfg : public ScDocOptions
ScLinkConfigItem aCalcItem;
ScLinkConfigItem aFormulaItem;
ScLinkConfigItem aLayoutItem;
- ScLinkConfigItem aCompatItem;
ScLinkConfigItem aDefaultsItem;
DECL_LINK( CalcCommitHdl, void* );
DECL_LINK( FormulaCommitHdl, void* );
DECL_LINK( LayoutCommitHdl, void* );
- DECL_LINK( CompatCommitHdl, void* );
DECL_LINK( DefaultsCommitHdl, void* );
com::sun::star::uno::Sequence<rtl::OUString> GetCalcPropertyNames();
com::sun::star::uno::Sequence<rtl::OUString> GetFormulaPropertyNames();
com::sun::star::uno::Sequence<rtl::OUString> GetLayoutPropertyNames();
- com::sun::star::uno::Sequence<rtl::OUString> GetCompatPropertyNames();
com::sun::star::uno::Sequence<rtl::OUString> GetDefaultsPropertyNames();
public:
diff --git a/sc/source/core/tool/appoptio.cxx b/sc/source/core/tool/appoptio.cxx
index 7541fb6..1412120 100644
--- a/sc/source/core/tool/appoptio.cxx
+++ b/sc/source/core/tool/appoptio.cxx
@@ -118,31 +118,13 @@ void ScAppOptions::SetDefaults()
nDefaultObjectSizeHeight = 5000;
mbShowSharedDocumentWarning = true;
+
+ eKeyBindingType = ScOptionsUtil::KEY_DEFAULT;
}
+
//------------------------------------------------------------------------
-const ScAppOptions& ScAppOptions::operator=( const ScAppOptions& rCpy )
-{
- nTabCountInNewSpreadsheet = rCpy.nTabCountInNewSpreadsheet;
- eMetric = rCpy.eMetric;
- eZoomType = rCpy.eZoomType;
- bSynchronizeZoom = rCpy.bSynchronizeZoom;
- nZoom = rCpy.nZoom;
- SetLRUFuncList( rCpy.pLRUList, rCpy.nLRUFuncCount );
- nStatusFunc = rCpy.nStatusFunc;
- bAutoComplete = rCpy.bAutoComplete;
- bDetectiveAuto = rCpy.bDetectiveAuto;
- nTrackContentColor = rCpy.nTrackContentColor;
- nTrackInsertColor = rCpy.nTrackInsertColor;
- nTrackDeleteColor = rCpy.nTrackDeleteColor;
- nTrackMoveColor = rCpy.nTrackMoveColor;
- eLinkMode = rCpy.eLinkMode;
- nDefaultObjectSizeWidth = rCpy.nDefaultObjectSizeWidth;
- nDefaultObjectSizeHeight = rCpy.nDefaultObjectSizeHeight;
- mbShowSharedDocumentWarning = rCpy.mbShowSharedDocumentWarning;
- return *this;
-}
//------------------------------------------------------------------------
@@ -291,6 +273,9 @@ void lcl_GetSortList( Any& rDest )
#define SCMISCOPT_SHOWSHAREDDOCWARN 2
#define SCMISCOPT_COUNT 3
+#define CFGPATH_COMPAT "Office.Calc/Compatibility"
+#define SCCOMPATOPT_KEY_BINDING 0
+#define SCCOMPATOPT_COUNT 1
Sequence<OUString> ScAppCfg::GetLayoutPropertyNames()
{
@@ -391,6 +376,19 @@ Sequence<OUString> ScAppCfg::GetMiscPropertyNames()
return aNames;
}
+Sequence<OUString> ScAppCfg::GetCompatPropertyNames()
+{
+ static const char* aPropNames[] =
+ {
+ "KeyBindings/BaseGroup" // SCCOMPATOPT_KEY_BINDING
+ };
+ Sequence<OUString> aNames(SCCOMPATOPT_COUNT);
+ OUString* pNames = aNames.getArray();
+ for (int i = 0; i < SCCOMPATOPT_COUNT; ++i)
+ pNames[i] = OUString::createFromAscii(aPropNames[i]);
+
+ return aNames;
+}
ScAppCfg::ScAppCfg() :
aLayoutItem( OUString(RTL_CONSTASCII_USTRINGPARAM( CFGPATH_LAYOUT )) ),
@@ -398,7 +396,8 @@ ScAppCfg::ScAppCfg() :
aRevisionItem( OUString(RTL_CONSTASCII_USTRINGPARAM( CFGPATH_REVISION )) ),
aContentItem( OUString(RTL_CONSTASCII_USTRINGPARAM( CFGPATH_CONTENT )) ),
aSortListItem( OUString(RTL_CONSTASCII_USTRINGPARAM( CFGPATH_SORTLIST )) ),
- aMiscItem( OUString(RTL_CONSTASCII_USTRINGPARAM( CFGPATH_MISC )) )
+ aMiscItem( OUString(RTL_CONSTASCII_USTRINGPARAM( CFGPATH_MISC )) ),
+ aCompatItem(OUString(RTL_CONSTASCII_USTRINGPARAM(CFGPATH_COMPAT)))
{
sal_Int32 nIntVal = 0;
@@ -576,6 +575,28 @@ ScAppCfg::ScAppCfg() :
}
}
aMiscItem.SetCommitLink( LINK( this, ScAppCfg, MiscCommitHdl ) );
+
+ aNames = GetCompatPropertyNames();
+ aValues = aCompatItem.GetProperties(aNames);
+ aCompatItem.EnableNotification(aNames);
+ pValues = aValues.getConstArray();
+ if (aValues.getLength() == aNames.getLength())
+ {
+ for (int nProp = 0; nProp < aNames.getLength(); ++nProp)
+ {
+ switch (nProp)
+ {
+ case SCCOMPATOPT_KEY_BINDING:
+ {
+ nIntVal = 0; // 0 = 'Default'
+ pValues[nProp] >>= nIntVal;
+ SetKeyBindingType(static_cast<ScOptionsUtil::KeyBindingType>(nIntVal));
+ }
+ break;
+ }
+ }
+ }
+ aCompatItem.SetCommitLink( LINK(this, ScAppCfg, CompatCommitHdl) );
}
IMPL_LINK( ScAppCfg, LayoutCommitHdl, void *, EMPTYARG )
@@ -731,6 +752,25 @@ IMPL_LINK( ScAppCfg, MiscCommitHdl, void *, EMPTYARG )
return 0;
}
+IMPL_LINK( ScAppCfg, CompatCommitHdl, void *, EMPTYARG )
+{
+ Sequence<OUString> aNames = GetCompatPropertyNames();
+ Sequence<Any> aValues(aNames.getLength());
+ Any* pValues = aValues.getArray();
+
+ for (int nProp = 0; nProp < aNames.getLength(); ++nProp)
+ {
+ switch(nProp)
+ {
+ case SCCOMPATOPT_KEY_BINDING:
+ pValues[nProp] <<= static_cast<sal_Int32>(GetKeyBindingType());
+ break;
+ }
+ }
+ aCompatItem.PutProperties(aNames, aValues);
+ return 0;
+}
+
void ScAppCfg::SetOptions( const ScAppOptions& rNew )
{
*(ScAppOptions*)this = rNew;
@@ -745,6 +785,7 @@ void ScAppCfg::OptionsChanged()
aContentItem.SetModified();
aSortListItem.SetModified();
aMiscItem.SetModified();
+ aCompatItem.SetModified();
}
diff --git a/sc/source/core/tool/docoptio.cxx b/sc/source/core/tool/docoptio.cxx
index 662d59c..6298799 100644
--- a/sc/source/core/tool/docoptio.cxx
+++ b/sc/source/core/tool/docoptio.cxx
@@ -93,7 +93,6 @@ ScDocOptions::ScDocOptions( const ScDocOptions& rCpy )
nIterCount( rCpy.nIterCount ),
nInitTabCount( rCpy.nInitTabCount ),
nPrecStandardFormat( rCpy.nPrecStandardFormat ),
- eKeyBindingType( rCpy.eKeyBindingType ),
nDay( rCpy.nDay ),
nMonth( rCpy.nMonth ),
nYear( rCpy.nYear ),
@@ -130,7 +129,6 @@ void ScDocOptions::ResetDocOptions()
nInitTabCount = 3;
fIterEps = 1.0E-3;
nPrecStandardFormat = SvNumberFormatter::UNLIMITED_PRECISION;
- eKeyBindingType = ScOptionsUtil::KEY_DEFAULT;
nDay = 30;
nMonth = 12;
nYear = 1899;
@@ -288,10 +286,6 @@ SfxPoolItem* ScTpCalcItem::Clone( SfxItemPool * ) const
#define SCDOCLAYOUTOPT_TABSTOP 0
#define SCDOCLAYOUTOPT_COUNT 1
-#define CFGPATH_COMPAT "Office.Calc/Compatibility"
-#define SCCOMPATOPT_KEY_BINDING 0
-#define SCCOMPATOPT_COUNT 1
-
#define CFGPATH_DEFAULTS "Office.Calc/Defaults"
#define SCDEFAULTSOPT_TAB_COUNT 0
#define SCDEFAULTSOPT_COUNT 1
@@ -358,20 +352,6 @@ Sequence<OUString> ScDocCfg::GetLayoutPropertyNames()
return aNames;
}
-Sequence<OUString> ScDocCfg::GetCompatPropertyNames()
-{
- static const char* aPropNames[] =
- {
- "KeyBindings/BaseGroup" // SCCOMPATOPT_KEY_BINDING
- };
- Sequence<OUString> aNames(SCCOMPATOPT_COUNT);
- OUString* pNames = aNames.getArray();
- for (int i = 0; i < SCCOMPATOPT_COUNT; ++i)
- pNames[i] = OUString::createFromAscii(aPropNames[i]);
-
- return aNames;
-}
-
Sequence<OUString> ScDocCfg::GetDefaultsPropertyNames()
{
static const char* aPropNames[] =
@@ -391,7 +371,6 @@ ScDocCfg::ScDocCfg() :
aCalcItem( OUString(RTL_CONSTASCII_USTRINGPARAM( CFGPATH_CALC )) ),
aFormulaItem(OUString(RTL_CONSTASCII_USTRINGPARAM(CFGPATH_FORMULA))),
aLayoutItem(OUString(RTL_CONSTASCII_USTRINGPARAM(CFGPATH_DOCLAYOUT))),
- aCompatItem(OUString(RTL_CONSTASCII_USTRINGPARAM(CFGPATH_COMPAT))),
aDefaultsItem(OUString(RTL_CONSTASCII_USTRINGPARAM(CFGPATH_DEFAULTS)))
{
sal_Int32 nIntVal = 0;
@@ -561,28 +540,6 @@ ScDocCfg::ScDocCfg() :
}
aLayoutItem.SetCommitLink( LINK( this, ScDocCfg, LayoutCommitHdl ) );
- aNames = GetCompatPropertyNames();
- aValues = aCompatItem.GetProperties(aNames);
- aCompatItem.EnableNotification(aNames);
- pValues = aValues.getConstArray();
- if (aValues.getLength() == aNames.getLength())
- {
- for (int nProp = 0; nProp < aNames.getLength(); ++nProp)
- {
- switch (nProp)
- {
- case SCCOMPATOPT_KEY_BINDING:
- {
- nIntVal = 0; // 0 = 'Default'
- pValues[nProp] >>= nIntVal;
- SetKeyBindingType(static_cast<ScOptionsUtil::KeyBindingType>(nIntVal));
- }
- break;
- }
- }
- }
- aCompatItem.SetCommitLink( LINK(this, ScDocCfg, CompatCommitHdl) );
-
aNames = GetDefaultsPropertyNames();
aValues = aDefaultsItem.GetProperties(aNames);
aDefaultsItem.EnableNotification(aNames);
@@ -728,25 +685,6 @@ IMPL_LINK( ScDocCfg, LayoutCommitHdl, void *, EMPTYARG )
return 0;
}
-IMPL_LINK( ScDocCfg, CompatCommitHdl, void *, EMPTYARG )
-{
- Sequence<OUString> aNames = GetCompatPropertyNames();
- Sequence<Any> aValues(aNames.getLength());
- Any* pValues = aValues.getArray();
-
- for (int nProp = 0; nProp < aNames.getLength(); ++nProp)
- {
- switch(nProp)
- {
- case SCCOMPATOPT_KEY_BINDING:
- pValues[nProp] <<= static_cast<sal_Int32>(GetKeyBindingType());
- break;
- }
- }
- aCompatItem.PutProperties(aNames, aValues);
- return 0;
-}
-
IMPL_LINK( ScDocCfg, DefaultsCommitHdl, void *, EMPTYARG )
{
Sequence<OUString> aNames = GetDefaultsPropertyNames();
@@ -773,7 +711,6 @@ void ScDocCfg::SetOptions( const ScDocOptions& rNew )
aCalcItem.SetModified();
aFormulaItem.SetModified();
aLayoutItem.SetModified();
- aCompatItem.SetModified();
aDefaultsItem.SetModified();
}
diff --git a/sc/source/ui/app/scmod.cxx b/sc/source/ui/app/scmod.cxx
index 75cca30..4b6e708 100644
--- a/sc/source/ui/app/scmod.cxx
+++ b/sc/source/ui/app/scmod.cxx
@@ -1081,10 +1081,6 @@ void ScModule::ModifyOptions( const SfxItemSet& rOptSet )
if ( pDoc )
{
const ScDocOptions& rOldOpt = pDoc->GetDocOptions();
- ScOptionsUtil::KeyBindingType eKeyOld = rOldOpt.GetKeyBindingType();
- ScOptionsUtil::KeyBindingType eKeyNew = rNewOpt.GetKeyBindingType();
- if (eKeyOld != eKeyNew)
- pDocSh->ResetKeyBindings(eKeyNew);
bRepaint = ( bRepaint || ( rOldOpt != rNewOpt ) );
bCalcAll = bRepaint &&
diff --git a/sc/source/ui/inc/tpcompatibility.hxx b/sc/source/ui/inc/tpcompatibility.hxx
index 91f7254..85060c3 100644
--- a/sc/source/ui/inc/tpcompatibility.hxx
+++ b/sc/source/ui/inc/tpcompatibility.hxx
@@ -35,7 +35,7 @@
#include <boost/shared_ptr.hpp>
-class ScDocOptions;
+class ScAppOptions;
class ScTpCompatOptions : public SfxTabPage
{
@@ -57,8 +57,8 @@ private:
FixedText maFtKeyBindings;
ListBox maLbKeyBindings;
- ::boost::shared_ptr<ScDocOptions> mpOldOptions;
- ::boost::shared_ptr<ScDocOptions> mpNewOptions;
+ ::boost::shared_ptr<ScAppOptions> mpOldOptions;
+ ::boost::shared_ptr<ScAppOptions> mpNewOptions;
};
#endif
diff --git a/sc/source/ui/optdlg/tpcompatibility.cxx b/sc/source/ui/optdlg/tpcompatibility.cxx
index 367180b..b91b826 100644
--- a/sc/source/ui/optdlg/tpcompatibility.cxx
+++ b/sc/source/ui/optdlg/tpcompatibility.cxx
@@ -31,10 +31,11 @@
#undef SC_DLLIMPLEMENTATION
+#include <scmod.hxx>
#include "tpcompatibility.hxx"
#include "optdlg.hrc"
#include "scresid.hxx"
-#include "docoptio.hxx"
+#include "appoptio.hxx"
ScTpCompatOptions::ScTpCompatOptions(Window *pParent, const SfxItemSet &rCoreAttrs) :
SfxTabPage(pParent, ScResId(RID_SCPAGE_COMPATIBILITY), rCoreAttrs),
@@ -44,10 +45,8 @@ ScTpCompatOptions::ScTpCompatOptions(Window *pParent, const SfxItemSet &rCoreAtt
{
FreeResource();
- const ScTpCalcItem& rItem = static_cast<const ScTpCalcItem&>(
- rCoreAttrs.Get(GetWhich(SID_SCDOCOPTIONS)));
- mpOldOptions.reset(new ScDocOptions(rItem.GetDocOptions()));
- mpNewOptions.reset(new ScDocOptions(rItem.GetDocOptions()));
+ mpOldOptions.reset(new ScAppOptions(SC_MOD()->GetAppOptions()) );
+ mpNewOptions.reset(new ScAppOptions(SC_MOD()->GetAppOptions()) );
}
ScTpCompatOptions::~ScTpCompatOptions()
@@ -77,7 +76,7 @@ sal_Bool ScTpCompatOptions::FillItemSet(SfxItemSet &rCoreAttrs)
if (*mpNewOptions != *mpOldOptions)
{
- rCoreAttrs.Put(ScTpCalcItem(GetWhich(SID_SCDOCOPTIONS), *mpNewOptions));
+ SC_MOD()->SetAppOptions(*mpNewOptions);
return true;
}
else
--
1.7.3.4
Context
- [Libreoffice] [PATCH] Moving misplaced Compatibility options from ScDocOptions to ScAppOptions · Albert Thuswaldner
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.