37struct RefUpdateContext;
38struct RefUpdateInsertTabContext;
39struct RefUpdateDeleteTabContext;
40struct RefUpdateMoveTabContext;
41class CompileFormulaContext;
64 NAME_INVALID_CELL_REF,
65 NAME_INVALID_BAD_STRING
72 std::unique_ptr<ScTokenArray>
86 const OUString& rName,
87 const OUString& rSymbol,
92 const OUString& rName,
97 const OUString& rName,
163#if DEBUG_FORMULA_COMPILER
189 typedef ::std::map<OUString, std::unique_ptr<ScRangeData>>
DataType;
266 void erase(
const OUString& rName);
SC_DLLPUBLIC bool IsReference(ScRange &rRef) const
bool HasType(Type nType) const
const ScTokenArray * GetCode() const
void CompileUnresolvedXML(sc::CompileFormulaContext &rCxt)
void GetName(OUString &rName) const
bool HasPossibleAddressConflict() const
sal_uInt32 GetUnoType() const
std::unique_ptr< ScTokenArray > pCode
formula::FormulaGrammar::Grammar eTempGrammar
SC_DLLPUBLIC FormulaError GetErrCode() const
void UpdateInsertTab(sc::RefUpdateInsertTabContext &rCxt, SCTAB nLocalTab)
SC_DLLPUBLIC void GuessPosition()
void UpdateDeleteTab(sc::RefUpdateDeleteTabContext &rCxt, SCTAB nLocalTab)
static void MakeValidName(const ScDocument &rDoc, OUString &rName)
void SetIndex(sal_uInt16 nInd)
OUString maNewName
used for formulas after changing names in the dialog
void UpdateSymbol(OUStringBuffer &rBuffer, const ScAddress &)
void CompileRangeData(const OUString &rSymbol, bool bSetError)
void UpdateReference(sc::RefUpdateContext &rCxt, SCTAB nLocalTab)
SC_DLLPUBLIC ~ScRangeData()
SC_DLLPUBLIC bool IsValidReference(ScRange &rRef) const
SC_DLLPUBLIC void SetCode(const ScTokenArray &)
void SetNewName(const OUString &rNewName)
Does not change the name, but sets maNewName for formula update after dialog.
const ScAddress & GetPos() const
void UpdateTranspose(const ScRange &rSource, const ScAddress &rDest)
sal_uInt16 GetIndex() const
void UpdateGrow(const ScRange &rArea, SCCOL nGrowX, SCROW nGrowY)
static SC_DLLPUBLIC IsNameValidType IsNameValid(const OUString &rName, const ScDocument &rDoc)
bool IsRangeAtBlock(const ScRange &) const
SC_DLLPUBLIC OUString GetSymbol(const formula::FormulaGrammar::Grammar eGrammar=formula::FormulaGrammar::GRAM_DEFAULT) const
bool HasReferences() const
SC_DLLPUBLIC ScRangeData(ScDocument &rDoc, const OUString &rName, const OUString &rSymbol, const ScAddress &rAdr=ScAddress(), Type nType=Type::Name, const formula::FormulaGrammar::Grammar eGrammar=formula::FormulaGrammar::GRAM_DEFAULT)
const OUString & GetName() const
const OUString & GetUpperName() const
bool operator==(const ScRangeData &rData) const
void UpdateMoveTab(sc::RefUpdateMoveTabContext &rCxt, SCTAB nLocalTab)
void UpdateDeleteTab(sc::RefUpdateDeleteTabContext &rCxt, SCTAB nLocalTab=-1)
::std::map< OUString, std::unique_ptr< ScRangeData > > DataType
void CopyUsedNames(const SCTAB nLocalTab, const SCTAB nOldTab, const SCTAB nNewTab, const ScDocument &rOldDoc, ScDocument &rNewDoc, const bool bGlobalNamesToLocal) const
Copy names while copying a sheet if they reference the sheet to be copied.
SC_DLLPUBLIC ScRangeData * findByIndex(sal_uInt16 i) const
SC_DLLPUBLIC size_t index_size() const
void UpdateReference(sc::RefUpdateContext &rCxt, SCTAB nLocalTab=-1)
SC_DLLPUBLIC size_t size() const
void CompileUnresolvedXML(sc::CompileFormulaContext &rCxt)
Compile those names that couldn't be resolved during loading and inserting because they may have refe...
SC_DLLPUBLIC ScRangeData * findByUpperName(const OUString &rName)
std::vector< ScRangeData * > IndexDataType
void UpdateInsertTab(sc::RefUpdateInsertTabContext &rCxt, SCTAB nLocalTab=-1)
void UpdateMoveTab(sc::RefUpdateMoveTabContext &rCxt, SCTAB nLocalTab=-1)
IndexDataType maIndexToData
void erase(const ScRangeData &r)
bool mHasPossibleAddressConflictDirty
DataType::iterator iterator
SC_DLLPUBLIC const_iterator end() const
::std::map< SCTAB, const ScRangeName * > TabNameCopyMap
Map that stores non-managed pointers to ScRangeName instances.
bool hasPossibleAddressConflict() const
DataType::const_iterator const_iterator
SC_DLLPUBLIC const_iterator begin() const
SC_DLLPUBLIC bool insert(ScRangeData *p, bool bReuseFreeIndex=true)
Insert object into set.
bool mHasPossibleAddressConflict
void UpdateGrow(const ScRange &rArea, SCCOL nGrowX, SCROW nGrowY)
void UpdateTranspose(const ScRange &rSource, const ScAddress &rDest)
void checkHasPossibleAddressConflict() const
SC_DLLPUBLIC const ScRangeData * findByRange(const ScRange &rRange) const
bool operator==(const ScRangeName &r) const
CAUTION! The following defines must be in the same namespace as the respective type.
int ScRangeData_QsortNameCompare(const void *, const void *)
Context for reference update during shifting, moving or copying of cell ranges.