41class StartListeningContext;
42class EndListeningContext;
43struct RefUpdateContext;
44struct RefUpdateInsertTabContext;
45struct RefUpdateDeleteTabContext;
46struct RefUpdateMoveTabContext;
47class CompileFormulaContext;
48class UpdatedRangeNames;
100 void endAllGroupListening(
ScDocument& rDoc );
110 if( --
p->mnRefCount == 0 )
157 bool UpdateReferenceOnCopy(
163 SCROW nStartOffset,
SCROW nEndOffset,
bool bCalcDependencyOnly =
false);
165 bool& bDependencyComputed,
166 bool& bDependencyCheckFailed,
169 bool& bDependencyComputed,
170 bool& bDependencyCheckFailed);
171 bool InterpretInvariantFormulaGroup();
180 SCITP_CLOSE_ITERATION_CIRCLE
184 void HandleStuffAfterParallelCalculation(
ScInterpreter* pInterpreter);
219 const OUString& rFormula,
227 size_t GetHash()
const;
233 void SetDirty(
bool bDirtyFlag=
true );
236 void SetDirtyAfterLoad();
237 void ResetTableOpDirtyVar();
238 void SetTableOpDirty();
248 void SetNeedsListening(
bool bVar );
249 void SetNeedsDirty(
bool bVar );
250 void SetNeedNumberFormat(
bool bVal );
253 void Compile(
const OUString& rFormula,
259 void CompileTokenArray(
bool bNoListening =
false );
263 bool MarkUsedExternalReferences();
266 bool Interpret(
SCROW nStartOffset = -1,
SCROW nEndOffset = -1);
270 bool HasOneReference(
ScRange& r )
const;
279 bool HasRefListExpressibleAsOneReference(
ScRange& rRange)
const;
287 RelNameRef HasRelNameReference()
const;
289 bool UpdateReference(
302 bool UpdateReferenceOnShift(
308 bool UpdateReferenceOnMove(
311 void TransposeReference();
318 void UpdateInsertTabAbs(
SCTAB nTable);
321 bool TestTabRefAbs(
SCTAB nTable);
322 void UpdateCompile(
bool bForceIfNameInUse );
326 void SetChanged(
bool b);
329 bool IsEmptyDisplayedAsString();
331 bool IsValueNoError();
332 bool IsValueNoError()
const;
339 double GetRawValue()
const;
347 void GetResultDimensions(
SCSIZE& rCols,
SCSIZE& rRows );
351 bool GetErrorOrValue(
FormulaError& rErr,
double& rVal );
358 void SetCode( std::unique_ptr<ScTokenArray> pNew );
361 void SetRunning(
bool bVal );
376 void SetCompile(
bool bVal );
378 void SetMatColsRows(
SCCOL nCols,
SCROW nRows );
379 void GetMatColsRows(
SCCOL& nCols,
SCROW& nRows )
const;
382 void SetInChangeTrack(
bool bVal );
388 void SetHybridDouble(
double n );
400 void SetHybridEmptyDisplayedAsString();
405 void SetHybridFormula(
408 OUString GetHybridFormula()
const;
417 void SetResultDouble(
double n );
423 bool HasHybridStringResult()
const;
431 bool IsHyperLinkCell()
const;
432 std::unique_ptr<EditTextObject> CreateURLObject();
433 void GetURLResult( OUString& rURL, OUString& rCellText );
436 bool IsMultilineResult();
445 if (!IsDirtyOrInTableOpDirty())
454 if (NeedsInterpret())
480 CompareState CompareByTokenArray(
const ScFormulaCell& rOther )
const;
482 bool InterpretFormulaGroup(
SCROW nStartOffset = -1,
SCROW nEndOffset = -1);
491 bool IsShared()
const;
492 bool IsSharedTop()
const;
493 SCROW GetSharedTopRow()
const;
494 SCROW GetSharedLength()
const;
497 sal_Int32 GetWeight()
const;
502 void SyncSharedCode();
510#if DUMP_COLUMN_STORAGE
size_t SCSIZE
size_t typedef to be able to find places where code was changed from USHORT to size_t and is used to ...
bool IsInFormulaTree(const ScFormulaCell *pCell) const
bool IsInFormulaTrack(const ScFormulaCell *pCell) const
ScFormulaCell * pFormulaTree
bool IsInInterpreterTableOp() const
SC_DLLPUBLIC bool GetAutoCalc() const
bool IsThreadedGroupCalcInProgress() const
SC_DLLPUBLIC const ScDocOptions & GetDocOptions() const
ScFormulaCell * pFormulaTrack
Matrix data type that can store values of mixed types.
Keep track of all named expressions that have been updated during reference update.
@ Default
Default cell clone flags: do not start listening, do not adjust 3D refs to old position,...
void Notify(ScModelObj &rModelObj, const ScRangeList &rChangeRanges, const OUString &rType=OUString("cell-change"), const css::uno::Sequence< css::beans::PropertyValue > &rProperties=css::uno::Sequence< css::beans::PropertyValue >())
OUString GetString(int nId)
CAUTION! The following defines must be in the same namespace as the respective type.
css::uno::Reference< css::animations::XAnimationNode > Clone(const css::uno::Reference< css::animations::XAnimationNode > &xSourceNode, const SdPage *pSource=nullptr, const SdPage *pTarget=nullptr)
AreaListenerKey(const ScRange &rRange, bool bStartFixed, bool bEndFixed)
bool operator<(const AreaListenerKey &r) const
Context for reference update during shifting, moving or copying of cell ranges.
::boost::intrusive_ptr< ScFormulaCellGroup > ScFormulaCellGroupRef
::boost::intrusive_ptr< const ScMatrix > ScConstMatrixRef