Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
64223bda
Kaydet (Commit)
64223bda
authored
May 07, 2013
tarafından
Markus Mohrhard
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
remove one more use of inherited number formats
Change-Id: If12ca06b45821efe9e52555095a45ae3ce2d377a
üst
1a663077
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
3 additions
and
46 deletions
+3
-46
xetable.cxx
sc/source/filter/excel/xetable.cxx
+2
-44
xetable.hxx
sc/source/filter/inc/xetable.hxx
+1
-2
No files found.
sc/source/filter/excel/xetable.cxx
Dosyayı görüntüle @
64223bda
...
...
@@ -760,55 +760,13 @@ IMPL_FIXEDMEMPOOL_NEWDEL( XclExpFormulaCell )
XclExpFormulaCell
::
XclExpFormulaCell
(
const
XclExpRoot
&
rRoot
,
const
XclAddress
&
rXclPos
,
const
ScPatternAttr
*
pPattern
,
sal_uInt32
nForcedXFId
,
const
ScFormulaCell
&
rScFmlaCell
,
sal_uInt32
nForcedXFId
,
const
ScFormulaCell
&
rScFmlaCell
,
XclExpArrayBuffer
&
rArrayBfr
,
XclExpShrfmlaBuffer
&
rShrfmlaBfr
,
XclExpTableopBuffer
&
rTableopBfr
)
:
XclExpSingleCellBase
(
EXC_ID2_FORMULA
,
0
,
rXclPos
,
nForcedXFId
),
mrScFmlaCell
(
const_cast
<
ScFormulaCell
&
>
(
rScFmlaCell
)
)
{
// *** Find result number format overwriting cell number format *** -------
if
(
GetXFId
()
==
EXC_XFID_NOTFOUND
)
{
SvNumberFormatter
&
rFormatter
=
rRoot
.
GetFormatter
();
XclExpNumFmtBuffer
&
rNumFmtBfr
=
rRoot
.
GetNumFmtBuffer
();
// current cell number format
sal_uLong
nScNumFmt
=
pPattern
?
GETITEMVALUE
(
pPattern
->
GetItemSet
(),
SfxUInt32Item
,
ATTR_VALUE_FORMAT
,
sal_uLong
)
:
rNumFmtBfr
.
GetStandardFormat
();
// alternative number format passed to XF buffer
sal_uLong
nAltScNumFmt
=
NUMBERFORMAT_ENTRY_NOT_FOUND
;
/* Xcl doesn't know Boolean number formats, we write
"TRUE";"FALSE" (language dependent). Don't do it for automatic
formula formats, because Excel gets them right. */
/* #i8640# Don't set text format, if we have string results. */
short
nFormatType
=
mrScFmlaCell
.
GetFormatType
();
if
(
((
nScNumFmt
%
SV_COUNTRY_LANGUAGE_OFFSET
)
==
0
)
&&
(
nFormatType
!=
NUMBERFORMAT_LOGICAL
)
&&
(
nFormatType
!=
NUMBERFORMAT_TEXT
)
)
nAltScNumFmt
=
mrScFmlaCell
.
GetStandardFormat
(
rFormatter
,
nScNumFmt
);
/* If cell number format is Boolean and automatic formula
format is Boolean don't write that ugly special format. */
else
if
(
(
nFormatType
==
NUMBERFORMAT_LOGICAL
)
&&
(
rFormatter
.
GetType
(
nScNumFmt
)
==
NUMBERFORMAT_LOGICAL
)
)
nAltScNumFmt
=
rNumFmtBfr
.
GetStandardFormat
();
// #i41420# find script type according to result type (always latin for numeric results)
sal_Int16
nScript
=
ApiScriptType
::
LATIN
;
bool
bForceLineBreak
=
false
;
if
(
nFormatType
==
NUMBERFORMAT_TEXT
)
{
String
aResult
=
mrScFmlaCell
.
GetString
();
bForceLineBreak
=
mrScFmlaCell
.
IsMultilineResult
();
nScript
=
XclExpStringHelper
::
GetLeadingScriptType
(
rRoot
,
aResult
);
}
SetXFId
(
rRoot
.
GetXFBuffer
().
InsertWithNumFmt
(
pPattern
,
nScript
,
nAltScNumFmt
,
bForceLineBreak
)
);
}
// *** Convert the formula token array *** --------------------------------
ScAddress
aScPos
(
static_cast
<
SCCOL
>
(
rXclPos
.
mnCol
),
static_cast
<
SCROW
>
(
rXclPos
.
mnRow
),
rRoot
.
GetCurrScTab
()
);
...
...
@@ -2374,7 +2332,7 @@ XclExpCellTable::XclExpCellTable( const XclExpRoot& rRoot ) :
case
CELLTYPE_FORMULA
:
{
xCell
.
reset
(
new
XclExpFormulaCell
(
GetRoot
(),
aXclPos
,
pPattern
,
nMergeBaseXFId
,
GetRoot
(),
aXclPos
,
nMergeBaseXFId
,
*
rScCell
.
mpFormula
,
maArrayBfr
,
maShrfmlaBfr
,
maTableopBfr
));
}
break
;
...
...
sc/source/filter/inc/xetable.hxx
Dosyayı görüntüle @
64223bda
...
...
@@ -451,8 +451,7 @@ class XclExpFormulaCell : public XclExpSingleCellBase
public
:
explicit
XclExpFormulaCell
(
const
XclExpRoot
&
rRoot
,
const
XclAddress
&
rXclPos
,
const
ScPatternAttr
*
pPattern
,
sal_uInt32
nForcedXFId
,
const
ScFormulaCell
&
rScFmlaCell
,
sal_uInt32
nForcedXFId
,
const
ScFormulaCell
&
rScFmlaCell
,
XclExpArrayBuffer
&
rArrayBfr
,
XclExpShrfmlaBuffer
&
rShrfmlaBfr
,
XclExpTableopBuffer
&
rTableopBfr
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment