LibreOffice Module sc (master) 1
|
#include <grouparealistener.hxx>
Public Member Functions | |
FormulaGroupAreaListener ()=delete | |
FormulaGroupAreaListener (const ScRange &rRange, const ScDocument &rDocument, const ScAddress &rTopCellPos, SCROW nGroupLen, bool bStartFixed, bool bEndFixed) | |
virtual | ~FormulaGroupAreaListener () override |
ScRange | getListeningRange () const |
virtual void | Notify (const SfxHint &rHint) override |
virtual void | Query (QueryBase &rQuery) const override |
void | collectFormulaCells (SCTAB nTab, SCCOL nCol, SCROW nRow1, SCROW nRow2, std::vector< ScFormulaCell * > &rCells) const |
Given the row span of changed cells within a single column, collect all formula cells that need to be notified of the change. More... | |
void | collectFormulaCells (SCROW nRow1, SCROW nRow2, std::vector< ScFormulaCell * > &rCells) const |
const ScFormulaCell * | getTopCell () const |
Public Member Functions inherited from SvtListener | |
SvtListener ()=default | |
SvtListener (const SvtListener &r)=default | |
virtual | ~SvtListener () COVERITY_NOEXCEPT_FALSE |
bool | StartListening (SvtBroadcaster &rBroadcaster) |
void | EndListening (SvtBroadcaster &rBroadcaster) |
void | EndListeningAll () |
void | CopyAllBroadcasters (const SvtListener &r) |
bool | HasBroadcaster () const |
virtual void | Notify (const SfxHint &rHint) |
virtual void | Query (QueryBase &rQuery) const |
Private Member Functions | |
void | notifyCellChange (const SfxHint &rHint, const ScAddress &rPos, SCROW nNumRows) |
void | notifyBulkChange (const BulkDataHint &rHint) |
Private Attributes | |
ScRange | maRange |
const ScDocument & | mrDocument |
const ScColumn * | mpColumn |
SCROW | mnTopCellRow |
SCROW | mnGroupLen |
bool | mbStartFixed |
bool | mbEndFixed |
Definition at line 26 of file grouparealistener.hxx.
|
delete |
sc::FormulaGroupAreaListener::FormulaGroupAreaListener | ( | const ScRange & | rRange, |
const ScDocument & | rDocument, | ||
const ScAddress & | rTopCellPos, | ||
SCROW | nGroupLen, | ||
bool | bStartFixed, | ||
bool | bEndFixed | ||
) |
Definition at line 83 of file grouparealistener.cxx.
References BCA_LISTEN_ALWAYS, ScAddress::Col(), ScTable::FetchColumn(), ScDocument::FetchTable(), ScRange::Format(), ScColumn::GetCol(), ScColumn::GetTab(), maRange, maRange, mnGroupLen, mnTopCellRow, mpColumn, mrDocument, Row, SAL_INFO, ScAddress::Tab(), and VALID.
|
overridevirtual |
Definition at line 104 of file grouparealistener.cxx.
References SAL_INFO.
void sc::FormulaGroupAreaListener::collectFormulaCells | ( | SCROW | nRow1, |
SCROW | nRow2, | ||
std::vector< ScFormulaCell * > & | rCells | ||
) | const |
Definition at line 184 of file grouparealistener.cxx.
References ScRange::aEnd, ScRange::aStart, BCA_LISTEN_ALWAYS, ScRange::Format(), ScColumn::GetCol(), ScColumn::GetFormulaCellBlockAddress(), ScColumn::GetTab(), o3tl::make_unsigned(), maRange, mbEndFixed, mbStartFixed, mnGroupLen, mnTopCellRow, mpColumn, mrDocument, ScAddress::Row(), SAL_INFO, SAL_WARN, and VALID.
void sc::FormulaGroupAreaListener::collectFormulaCells | ( | SCTAB | nTab, |
SCCOL | nCol, | ||
SCROW | nRow1, | ||
SCROW | nRow2, | ||
std::vector< ScFormulaCell * > & | rCells | ||
) | const |
Given the row span of changed cells within a single column, collect all formula cells that need to be notified of the change.
nTab | sheet position of the changed cell span. |
nCol | column position of the changed cell span. |
nRow1 | top row position of the changed cell span. |
nRow2 | bottom row position of the changed cell span. |
rCells | all formula cells that need to be notified are put into this container. |
Definition at line 168 of file grouparealistener.cxx.
References ScRange::aEnd, ScRange::aStart, ScAddress::Col(), collectFormulaCells(), maRange, PutInOrder(), and ScAddress::Tab().
Referenced by collectFormulaCells(), and notifyCellChange().
ScRange sc::FormulaGroupAreaListener::getListeningRange | ( | ) | const |
Definition at line 110 of file grouparealistener.cxx.
References ScRange::aEnd, ScAddress::IncRow(), maRange, mbEndFixed, and mnGroupLen.
Referenced by ScFormulaCellGroup::endAllGroupListening().
const ScFormulaCell * sc::FormulaGroupAreaListener::getTopCell | ( | ) | const |
Definition at line 334 of file grouparealistener.cxx.
References ScColumn::GetFormulaCellBlockAddress(), mnTopCellRow, mpColumn, and SAL_WARN_IF.
Referenced by Query().
|
overridevirtual |
Reimplemented from SvtListener.
Definition at line 118 of file grouparealistener.cxx.
References SfxHint::GetId(), ScHint::GetRowCount(), ScHint::GetStartAddress(), notifyBulkChange(), and notifyCellChange().
|
private |
Definition at line 151 of file grouparealistener.cxx.
References sc::ColumnSpanSet::executeColumnAction(), and sc::BulkDataHint::getSpans().
Referenced by Notify().
|
private |
Definition at line 342 of file grouparealistener.cxx.
References ScAddress::Col(), collectFormulaCells(), ScAddress::Row(), and ScAddress::Tab().
Referenced by Notify().
|
overridevirtual |
Reimplemented from SvtListener.
Definition at line 133 of file grouparealistener.cxx.
References sc::QueryRange::add(), ScRange::aEnd, ScFormulaCell::aPos, getTopCell(), ScAddress::IncRow(), mnGroupLen, and SC_LISTENER_QUERY_FORMULA_GROUP_RANGE.
|
private |
Definition at line 28 of file grouparealistener.hxx.
Referenced by collectFormulaCells(), FormulaGroupAreaListener(), and getListeningRange().
|
private |
Definition at line 34 of file grouparealistener.hxx.
Referenced by collectFormulaCells(), and getListeningRange().
|
private |
Definition at line 33 of file grouparealistener.hxx.
Referenced by collectFormulaCells().
|
private |
Definition at line 32 of file grouparealistener.hxx.
Referenced by collectFormulaCells(), FormulaGroupAreaListener(), getListeningRange(), and Query().
|
private |
Definition at line 31 of file grouparealistener.hxx.
Referenced by collectFormulaCells(), FormulaGroupAreaListener(), and getTopCell().
|
private |
Definition at line 30 of file grouparealistener.hxx.
Referenced by collectFormulaCells(), FormulaGroupAreaListener(), and getTopCell().
|
private |
Definition at line 29 of file grouparealistener.hxx.
Referenced by collectFormulaCells(), and FormulaGroupAreaListener().