27 #include <document.hxx>
33 #include <tokenarray.hxx>
41 SAL_WARN_IF( pString ==
nullptr,
"sc.filter",
"PutFormString(): pString == NULL" );
106 const double pFacts[ 8 ] = {
120 fVal = pFacts[ ( nVal >> 1 ) & 0x0007 ];
121 fVal *=
static_cast<sal_Int16
>( nVal >> 4 );
124 fVal =
static_cast<sal_Int16
>( nVal >> 1 );
133 fValue = nValue >> 6;
134 temp = nValue & 0x0f;
137 if (nValue & 0x00000010)
138 fValue /= pow(
double(10), temp);
140 fValue *= pow(
double(10), temp);
143 if (nValue & 0x00000020)
165 OUString aFormString;
170 bool bDefault =
false;
174 nH = ( nFormat & 0xF0 ) / 16;
189 SvNumFormatType::SCIENTIFIC,
eLanguage );
247 eType = SvNumFormatType::DATE;
252 eType = SvNumFormatType::DATE;
259 eType = SvNumFormatType::DATE;
266 eType = SvNumFormatType::TEXT;
271 eType = SvNumFormatType::NUMBER;
272 aFormString =
"\"\"";
276 eType = SvNumFormatType::TIME;
281 eType = SvNumFormatType::TIME;
286 eType = SvNumFormatType::DATE;
291 eType = SvNumFormatType::DATE;
296 eType = SvNumFormatType::TIME;
301 eType = SvNumFormatType::TIME;
394 [&rRef](
const std::unique_ptr<LotusRange>& pRange) {
return rRef == *pRange; });
396 return (*pIter)->nId;
404 auto pLRTmp = pLR.get();
414 if( pLRTmp->IsSingle() )
441 Entry aInsert( rOrgName, rCRD );
470 std::vector<Entry>::const_iterator itr = std::find_if(
maEntries.begin(),
maEntries.end(),
471 [&aRef](
const Entry& rEntry) {
return aRef == rEntry.aStrHashEntry; });
474 rIndex = itr->nRelInd;
488 [&aRef](
const Entry& rEntry) {
return aRef == rEntry.aStrHashEntry; });
493 rIndex = itr->nAbsInd;
503 if( itr->bSingleRef )
507 pRef = &itr->aScComplexRefDataRel.Ref2;
511 pScTokenArray->AddDoubleReference( itr->aScComplexRefDataRel );
rtl_TextEncoding eCharset
formula::FormulaToken * AddDoubleReference(const ScComplexRefData &rRef)
std::unique_ptr< SvxHorJustifyItem > xAttrRepeat
SCCOL SanitizeCol(SCCOL nCol) const
Store parameters used in the ScDocument::SetString() method.
void setTextInput()
Call this whenever you need to unconditionally set input as text, no matter what the input is...
Single reference (one address) into the sheet.
std::vector< std::unique_ptr< LotusRange > > maRanges
std::unique_ptr< FormCache > xValueFormCache
void Copy(const LotusRange &)
ScAddress toAbs(const ScSheetLimits &rLimits, const ScAddress &rPos) const
void SetRelTab(SCTAB nVal)
LR_ID GetIndex(SCCOL nCol, SCROW nRow)
ScComplexRefData aComplRef
formula::FormulaToken * AddSingleReference(const ScSingleRefData &rRef)
ScSingleRefToken with ocPush.
void Add(const ScDocument &rDoc, const OUString &rName, const ScComplexRefData &rCRD)
void SetAbsRow(SCROW nVal)
void SetRowRel(bool bVal)
SC_DLLPUBLIC void ApplyAttr(SCCOL nCol, SCROW nRow, SCTAB nTab, const SfxPoolItem &rAttr)
bool FindAbs(std::u16string_view rRef, sal_uInt16 &rIndex)
void SetProtection(bool bProtect)
void Append(const ScDocument *pDoc, std::unique_ptr< LotusRange > pLR)
void SetTabRel(bool bVal)
std::unique_ptr< SvxHorJustifyItem > xAttrRight
std::unique_ptr< SvxHorJustifyItem > xAttrCenter
std::unique_ptr< SvxHorJustifyItem > xAttrLeft
SC_DLLPUBLIC bool SetString(SCCOL nCol, SCROW nRow, SCTAB nTab, const OUString &rString, const ScSetStringParam *pParam=nullptr)
SC_DLLPUBLIC SvNumberFormatter * GetFormatTable() const
void SetFlag3D(bool bVal)
void SetAbsCol(SCCOL nVal)
constexpr TypedWhichId< SfxUInt32Item > ATTR_VALUE_FORMAT(146)
static SC_DLLPUBLIC LanguageType eLnge
LotusRange(SCCOL nCol, SCROW nRow)
SCROW SanitizeRow(SCROW nRow) const
SCTAB SanitizeTab(SCTAB nTab)
#define SAL_WARN_IF(condition, area, stream)
std::unique_ptr< SvxHorJustifyItem > xAttrStandard
bool FindRel(const OUString &rRef, sal_uInt16 &rIndex)
RangeNameBufferWK3(const ScDocument &rDoc)
std::vector< Entry > maEntries
Complex reference (a range) into the sheet.
void SetColRel(bool bVal)
std::unique_ptr< ScTokenArray > pScTokenArray