28 typedef std::map<SCROW, std::unique_ptr<ScAddress>>
RowMap;
36 std::unique_ptr<std::unique_ptr<ScAddress>[]>
ppData;
59 {
return nCol < nColCount && nRow <
nRowCount; }
62 {
return static_cast<sal_uInt64
>(nCol) * nRowCount + nRow; }
66 if ( nIndex < nCount )
67 return ppData[ nIndex ].get();
74 if (
IsValid( nChartCol, nChartRow ) )
75 return ppData[
GetIndex( nChartCol, nChartRow ) ].get();
80 if ( nChartCol < nColCount )
81 return ppColHeader[ nChartCol ].get();
86 if ( nChartRow < nRowCount )
87 return ppRowHeader[ nChartRow ].get();
131 void SetHeaders(
bool bCol,
bool bRow) { bColHeaders=bCol; bRowHeaders=bRow; }
const ScAddress * GetRowHeaderPosition(SCROW nChartRow) const
const ScRangeListRef & GetRangeList() const
std::unique_ptr< std::unique_ptr< ScAddress >[]> ppColHeader
SCCOL GetColCount() const
deletes all ScAddress*
ScRangeListRef aRangeListRef
ScChartPositioner(ScDocument &rDoc, SCTAB nTab, SCCOL nStartColP, SCROW nStartRowP, SCCOL nEndColP, SCROW nEndRowP)
void SetRangeList(const ScRange &rNew)
ScChartPositionMap(SCCOL nChartCols, SCROW nChartRows, SCCOL nColAdd, SCROW nRowAdd, ColumnMap &rCols)
bool HasRowHeaders() const
std::unique_ptr< ScChartPositionMap > pPositionMap
std::map< SCCOL, RowMap > ColumnMap
void CheckColRowHeaders()
std::unique_ptr< std::unique_ptr< ScAddress >[]> ppData
const ScAddress * GetColHeaderPosition(SCCOL nChartCol) const
std::map< SCROW, std::unique_ptr< ScAddress > > RowMap
SCROW GetRowCount() const
const ScAddress * GetPosition(sal_uInt64 nIndex) const
void SetHeaders(bool bCol, bool bRow)
ScChartPositionMap & operator=(const ScChartPositionMap &)=delete
bool HasColHeaders() const
const ScAddress * GetPosition(SCCOL nChartCol, SCROW nChartRow) const
might be NULL indicating "no value"
sal_uInt64 GetIndex(SCCOL nCol, SCROW nRow) const
std::unique_ptr< std::unique_ptr< ScAddress >[]> ppRowHeader
bool IsValid(SCCOL nCol, SCROW nRow) const
const ScChartPositionMap * GetPositionMap()