LibreOffice Module sc (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
sc::FormulaGroupAreaListener Class Referencefinal

#include <grouparealistener.hxx>

Inheritance diagram for sc::FormulaGroupAreaListener:
[legend]
Collaboration diagram for sc::FormulaGroupAreaListener:
[legend]

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
 
- 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)
 
const ScFormulaCellgetTopCell () const
 

Private Attributes

ScRange maRange
 
const ScDocumentmrDocument
 
const ScColumnmpColumn
 
SCROW mnTopCellRow
 
SCROW mnGroupLen
 
bool mbStartFixed
 
bool mbEndFixed
 

Detailed Description

Definition at line 26 of file grouparealistener.hxx.

Constructor & Destructor Documentation

◆ FormulaGroupAreaListener() [1/2]

sc::FormulaGroupAreaListener::FormulaGroupAreaListener ( )
delete

◆ FormulaGroupAreaListener() [2/2]

sc::FormulaGroupAreaListener::FormulaGroupAreaListener ( const ScRange rRange,
const ScDocument rDocument,
const ScAddress rTopCellPos,
SCROW  nGroupLen,
bool  bStartFixed,
bool  bEndFixed 
)

◆ ~FormulaGroupAreaListener()

sc::FormulaGroupAreaListener::~FormulaGroupAreaListener ( )
overridevirtual

Definition at line 104 of file grouparealistener.cxx.

References SAL_INFO.

Member Function Documentation

◆ collectFormulaCells() [1/2]

void sc::FormulaGroupAreaListener::collectFormulaCells ( SCROW  nRow1,
SCROW  nRow2,
std::vector< ScFormulaCell * > &  rCells 
) const

◆ collectFormulaCells() [2/2]

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.

Parameters
nTabsheet position of the changed cell span.
nColcolumn position of the changed cell span.
nRow1top row position of the changed cell span.
nRow2bottom row position of the changed cell span.
rCellsall 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().

◆ getListeningRange()

ScRange sc::FormulaGroupAreaListener::getListeningRange ( ) const

◆ getTopCell()

const ScFormulaCell * sc::FormulaGroupAreaListener::getTopCell ( ) const
private

Definition at line 334 of file grouparealistener.cxx.

References ScColumn::GetFormulaCellBlockAddress(), mnTopCellRow, mpColumn, and SAL_WARN_IF.

Referenced by Query().

◆ Notify()

void sc::FormulaGroupAreaListener::Notify ( const SfxHint rHint)
overridevirtual

◆ notifyBulkChange()

void sc::FormulaGroupAreaListener::notifyBulkChange ( const BulkDataHint rHint)
private

◆ notifyCellChange()

void sc::FormulaGroupAreaListener::notifyCellChange ( const SfxHint rHint,
const ScAddress rPos,
SCROW  nNumRows 
)
private

Definition at line 342 of file grouparealistener.cxx.

References ScAddress::Col(), collectFormulaCells(), ScAddress::Row(), and ScAddress::Tab().

Referenced by Notify().

◆ Query()

void sc::FormulaGroupAreaListener::Query ( QueryBase &  rQuery) const
overridevirtual

Member Data Documentation

◆ maRange

ScRange sc::FormulaGroupAreaListener::maRange
private

◆ mbEndFixed

bool sc::FormulaGroupAreaListener::mbEndFixed
private

Definition at line 34 of file grouparealistener.hxx.

Referenced by collectFormulaCells(), and getListeningRange().

◆ mbStartFixed

bool sc::FormulaGroupAreaListener::mbStartFixed
private

Definition at line 33 of file grouparealistener.hxx.

Referenced by collectFormulaCells().

◆ mnGroupLen

SCROW sc::FormulaGroupAreaListener::mnGroupLen
private

◆ mnTopCellRow

SCROW sc::FormulaGroupAreaListener::mnTopCellRow
private

Definition at line 31 of file grouparealistener.hxx.

Referenced by collectFormulaCells(), FormulaGroupAreaListener(), and getTopCell().

◆ mpColumn

const ScColumn* sc::FormulaGroupAreaListener::mpColumn
private

Definition at line 30 of file grouparealistener.hxx.

Referenced by collectFormulaCells(), FormulaGroupAreaListener(), and getTopCell().

◆ mrDocument

const ScDocument& sc::FormulaGroupAreaListener::mrDocument
private

Definition at line 29 of file grouparealistener.hxx.

Referenced by collectFormulaCells(), and FormulaGroupAreaListener().


The documentation for this class was generated from the following files: