Søren Thing Pedersen skrev:
Eike Rathke skrev:
Why initialize first and then immediately assign another value? I'd
write that as
BOOL bAssumeEnglishNumbers =
SC_MOD()->GetAppOptions().GetNumberRecognitionAssumeEnglish()
Hmm. What state will bAssumeEnglishNumbers take if the
Office.Calc.Misc.NumberRecognition.AssumeEnglish boolean is not even set
in calc.xcu?
Furthermore, a patched build for m128 seems to trigger document recovery
everytime Calc is closed as the last OOo application. Did I forget
anything? Any usual suspects?
Søren
diff -urN -r --exclude=CVS
ooo_SRC680_m128_src.orig/officecfg/registry/schema/org/openoffice/Office/Calc.xcs
ooo_SRC680_m128_src/officecfg/registry/schema/org/openoffice/Office/Calc.xcs
---
ooo_SRC680_m128_src.orig/officecfg/registry/schema/org/openoffice/Office/Calc.xcs
2005-09-08 17:11:22.000000000 +0200
+++
ooo_SRC680_m128_src/officecfg/registry/schema/org/openoffice/Office/Calc.xcs
2005-09-11 10:35:22.000000000 +0200
@@ -1336,6 +1336,18 @@
<value>5000</value>
</prop>
</group>
+ <group oor:name="NumberRecognition">
+ <info>
+ <desc>Contains setting for number
recognition.</desc>
+ </info>
+ <prop oor:name="AssumeEnglish"
oor:type="xs:boolean">
+ <info>
+ <desc>Specifies whether
imported or pasted numbers are recognized as English before current locale.
E.g. 1.000 is always recognized as 1 when setting is true.</desc>
+ <label>Assume English
Numbers</label>
+ </info>
+ <value>true</value>
+ </prop>
+ </group>
</group>
</component>
</oor:component-schema>
diff -urN -r --exclude=CVS ooo_SRC680_m128_src.orig/sc/inc/appoptio.hxx
ooo_SRC680_m128_src/sc/inc/appoptio.hxx
--- ooo_SRC680_m128_src.orig/sc/inc/appoptio.hxx 2005-09-08
19:22:24.000000000 +0200
+++ ooo_SRC680_m128_src/sc/inc/appoptio.hxx 2005-09-09 19:22:50.000000000
+0200
@@ -102,7 +102,9 @@
INT32 GetDefaultObjectSizeWidth() const {
return nDefaultObjectSizeWidth; }
void SetDefaultObjectSizeHeight(INT32 nNew) {
nDefaultObjectSizeHeight = nNew; }
INT32 GetDefaultObjectSizeHeight() const {
return nDefaultObjectSizeHeight; }
-
+ void SetNumberRecognitionAssumeEnglish( BOOL bNew ) {
bNumberRecognitionAssumeEnglish = bNew; }
+ BOOL GetNumberRecognitionAssumeEnglish() const
{ return bNumberRecognitionAssumeEnglish; }
+
const ScAppOptions& operator= ( const ScAppOptions& rOpt );
friend SvStream& operator>> ( SvStream& rStream,
ScAppOptions& rOpt );
@@ -124,6 +126,7 @@
ScLkUpdMode eLinkMode;
INT32 nDefaultObjectSizeWidth;
INT32 nDefaultObjectSizeHeight;
+ BOOL bNumberRecognitionAssumeEnglish;
};
diff -urN -r --exclude=CVS
ooo_SRC680_m128_src.orig/sc/source/core/tool/appoptio.cxx
ooo_SRC680_m128_src/sc/source/core/tool/appoptio.cxx
--- ooo_SRC680_m128_src.orig/sc/source/core/tool/appoptio.cxx 2005-09-08
20:38:46.000000000 +0200
+++ ooo_SRC680_m128_src/sc/source/core/tool/appoptio.cxx 2005-09-11
09:54:08.000000000 +0200
@@ -119,6 +119,7 @@
nDefaultObjectSizeWidth = 8000;
nDefaultObjectSizeHeight = 5000;
+ bNumberRecognitionAssumeEnglish = TRUE;
}
//------------------------------------------------------------------------
@@ -139,6 +140,7 @@
eLinkMode = rCpy.eLinkMode;
nDefaultObjectSizeWidth = rCpy.nDefaultObjectSizeWidth;
nDefaultObjectSizeHeight = rCpy.nDefaultObjectSizeHeight;
+ bNumberRecognitionAssumeEnglish = rCpy.bNumberRecognitionAssumeEnglish;
return *this;
}
@@ -397,7 +399,8 @@
#define SCMISCOPT_DEFOBJWIDTH 0
#define SCMISCOPT_DEFOBJHEIGHT 1
-#define SCMISCOPT_COUNT 2
+#define SCMISCOPT_ENGLISHNUMS 2
+#define SCMISCOPT_COUNT 3
Sequence<OUString> ScAppCfg::GetLayoutPropertyNames()
@@ -488,6 +491,7 @@
{
"DefaultObjectSize/Width", // SCMISCOPT_DEFOBJWIDTH
"DefaultObjectSize/Height" // SCMISCOPT_DEFOBJHEIGHT
+ "NumberRecognition/AssumeEnglish" // SCMISCOPT_ENGLISHNUMS
};
Sequence<OUString> aNames(SCMISCOPT_COUNT);
OUString* pNames = aNames.getArray();
@@ -671,6 +675,9 @@
case SCMISCOPT_DEFOBJHEIGHT:
if (pValues[nProp] >>= nIntVal)
SetDefaultObjectSizeHeight( nIntVal );
break;
+ case SCMISCOPT_ENGLISHNUMS:
+
SetNumberRecognitionAssumeEnglish( ScUnoHelpFunctions::GetBoolFromAny(
pValues[nProp] ) );
+ break;
}
}
}
@@ -830,6 +837,9 @@
case SCMISCOPT_DEFOBJHEIGHT:
pValues[nProp] <<= (sal_Int32)
GetDefaultObjectSizeHeight();
break;
+ case SCMISCOPT_ENGLISHNUMS:
+ ScUnoHelpFunctions::SetBoolInAny(
pValues[nProp], GetNumberRecognitionAssumeEnglish() );
+ break;
}
}
aMiscItem.PutProperties(aNames, aValues);
diff -urN -r --exclude=CVS
ooo_SRC680_m128_src.orig/sc/source/filter/rtf/eeimpars.cxx
ooo_SRC680_m128_src/sc/source/filter/rtf/eeimpars.cxx
--- ooo_SRC680_m128_src.orig/sc/source/filter/rtf/eeimpars.cxx 2005-09-08
21:44:20.000000000 +0200
+++ ooo_SRC680_m128_src/sc/source/filter/rtf/eeimpars.cxx 2005-09-09
19:41:00.000000000 +0200
@@ -79,6 +79,7 @@
#include "drwlayer.hxx"
#include "rangenam.hxx"
#include "progress.hxx"
+#include "scmod.hxx"
#include "globstr.hrc"
@@ -360,7 +361,10 @@
}
const sal_Unicode cDecSepEng = '.';
const sal_Unicode cThoSepEng = ',';
- if ( cDecSep != cDecSepEng
+ // Check option in
user/registry/data/org/openoffice/Office/Calc.xcu and disable assumption that
HTML and RTF is en_US if false: Workaround for issue 50670, issue 39898, issue
38494
+ BOOL bAssumeEnglishNumbers =
SC_MOD()->GetAppOptions().GetNumberRecognitionAssumeEnglish();
+
+ if ( bAssumeEnglishNumbers && cDecSep
!= cDecSepEng
&& aStr.GetTokenCount( cDecSepEng )
== 2 )
{ // evtl. englische Zahl wandeln
und im Deutschen
// den Numberformatter kein
Datum draus machen lassen..
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]