LibreOffice Module sc (master)  1
Public Types | Public Member Functions | Private Attributes | List of all members
sc::SingleColumnSpanSet Class Reference

Keep track of spans in a single column only. More...

#include <columnspanset.hxx>

Public Types

typedef mdds::flat_segment_tree< SCROW, bool > ColumnSpansType
 
typedef std::vector< RowSpanSpansType
 

Public Member Functions

 SingleColumnSpanSet ()
 
void scan (const ScColumn &rColumn)
 Scan an entire column and tag all non-empty cell positions. More...
 
void scan (const ScColumn &rColumn, SCROW nStart, SCROW nEnd)
 Scan a column between specified range, and tag all non-empty cell positions. More...
 
void scan (ColumnBlockConstPosition &rBlockPos, const ScColumn &rColumn, SCROW nStart, SCROW nEnd)
 
void scan (const ScMarkData &rMark, SCTAB nTab, SCCOL nCol)
 Scan all marked data and tag all marked segments in specified column. More...
 
void scan (const ScRangeList &rRanges, SCTAB nTab, SCCOL nCol)
 
void set (SCROW nRow1, SCROW nRow2, bool bVal)
 
void getRows (std::vector< SCROW > &rRows) const
 
void getSpans (SpansType &rSpans) const
 
void swap (SingleColumnSpanSet &r)
 
bool empty () const
 Whether there isn't any row tagged. More...
 

Private Attributes

ColumnSpansType maSpans
 

Detailed Description

Keep track of spans in a single column only.

Definition at line 110 of file columnspanset.hxx.

Member Typedef Documentation

typedef mdds::flat_segment_tree<SCROW, bool> sc::SingleColumnSpanSet::ColumnSpansType

Definition at line 113 of file columnspanset.hxx.

Definition at line 115 of file columnspanset.hxx.

Constructor & Destructor Documentation

sc::SingleColumnSpanSet::SingleColumnSpanSet ( )

Definition at line 243 of file columnspanset.cxx.

Member Function Documentation

bool sc::SingleColumnSpanSet::empty ( ) const

Whether there isn't any row tagged.

Definition at line 331 of file columnspanset.cxx.

References maSpans, and MAXROWCOUNT.

Referenced by ScColumn::UpdateSelectionFunction().

void sc::SingleColumnSpanSet::getRows ( std::vector< SCROW > &  rRows) const

Definition at line 305 of file columnspanset.cxx.

References getSpans().

Referenced by ScColumn::BroadcastRows(), and ScColumn::DeleteArea().

void sc::SingleColumnSpanSet::getSpans ( SpansType rSpans) const
void sc::SingleColumnSpanSet::scan ( const ScColumn rColumn)
void sc::SingleColumnSpanSet::scan ( const ScColumn rColumn,
SCROW  nStart,
SCROW  nEnd 
)

Scan a column between specified range, and tag all non-empty cell positions.

Definition at line 259 of file columnspanset.cxx.

References ScColumn::maCells, maSpans, and sc::ParseBlock().

void sc::SingleColumnSpanSet::scan ( ColumnBlockConstPosition rBlockPos,
const ScColumn rColumn,
SCROW  nStart,
SCROW  nEnd 
)
void sc::SingleColumnSpanSet::scan ( const ScMarkData rMark,
SCTAB  nTab,
SCCOL  nCol 
)

Scan all marked data and tag all marked segments in specified column.

Definition at line 274 of file columnspanset.cxx.

References ScMarkData::GetMarkedRangesForTab(), ScMarkData::GetTableSelect(), and scan().

void sc::SingleColumnSpanSet::scan ( const ScRangeList rRanges,
SCTAB  nTab,
SCCOL  nCol 
)
void sc::SingleColumnSpanSet::set ( SCROW  nRow1,
SCROW  nRow2,
bool  bVal 
)

Definition at line 300 of file columnspanset.cxx.

References maSpans.

Referenced by ScColumn::UpdateSelectionFunction().

void sc::SingleColumnSpanSet::swap ( SingleColumnSpanSet r)

Definition at line 326 of file columnspanset.cxx.

References maSpans.

Member Data Documentation

ColumnSpansType sc::SingleColumnSpanSet::maSpans
private

Definition at line 152 of file columnspanset.hxx.

Referenced by empty(), getSpans(), scan(), set(), and swap().


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