LibreOffice Module toolkit (master) 1
|
interface to implement by components rendering a ->TableControl More...
#include <tablerenderer.hxx>
Public Member Functions | |
virtual void | PaintHeaderArea (vcl::RenderContext &_rDevice, const tools::Rectangle &_rArea, bool _bIsColHeaderArea, bool _bIsRowHeaderArea, const StyleSettings &_rStyle)=0 |
paints a (part of) header area More... | |
virtual void | PaintColumnHeader (ColPos _nCol, vcl::RenderContext &_rDevice, const tools::Rectangle &_rArea, const StyleSettings &_rStyle)=0 |
paints the header for a given column More... | |
virtual void | PrepareRow (RowPos _nRow, bool i_hasControlFocus, bool _bSelected, vcl::RenderContext &_rDevice, const tools::Rectangle &_rRowArea, const StyleSettings &_rStyle)=0 |
prepares a row for painting More... | |
virtual void | PaintRowHeader (vcl::RenderContext &_rDevice, tools::Rectangle const &_rArea, StyleSettings const &_rStyle)=0 |
paints the header of a row More... | |
virtual void | PaintCell (ColPos const i_col, bool i_hasControlFocus, bool _bSelected, vcl::RenderContext &_rDevice, const tools::Rectangle &_rArea, const StyleSettings &_rStyle)=0 |
paints a certain cell More... | |
virtual void | ShowCellCursor (vcl::Window &_rView, const tools::Rectangle &_rCursorRect)=0 |
draws a cell cursor in the given rectangle More... | |
virtual void | HideCellCursor (vcl::Window &_rView)=0 |
hides the cell cursor previously drawn into the given rectangle More... | |
virtual bool | FitsIntoCell (css::uno::Any const &i_cellContent, OutputDevice &i_targetDevice, tools::Rectangle const &i_targetArea) const =0 |
checks whether a given cell content fits into a given target area on a given device. More... | |
virtual bool | GetFormattedCellString (css::uno::Any const &i_cellValue, OUString &o_cellString) const =0 |
attempts to format the content of the given cell as string More... | |
virtual | ~ITableRenderer () |
deletes the renderer instance More... | |
interface to implement by components rendering a ->TableControl
Definition at line 47 of file tablerenderer.hxx.
|
inlinevirtual |
deletes the renderer instance
Definition at line 241 of file tablerenderer.hxx.
|
pure virtual |
checks whether a given cell content fits into a given target area on a given device.
i_targetDevice | denotes the target device for the assumed rendering operation |
i_targetArea | denotes the area within the target device for the assumed rendering operation. |
Implemented in svt::table::GridTableRenderer.
|
pure virtual |
attempts to format the content of the given cell as string
i_cellValue | the value for which an attempt for a string conversion should be made |
o_cellString | the cell content, formatted as string |
Implemented in svt::table::GridTableRenderer.
|
pure virtual |
hides the cell cursor previously drawn into the given rectangle
The cell cursor is used to indicate the active/current cell of a table control.
Implemented in svt::table::GridTableRenderer.
|
pure virtual |
paints a certain cell
The row to be painted is denoted by the most recent call to ->PrepareRow.
_bSelected | <TRUE> if and only if the cell to be painted is selected currently. This is the case if either the row or the column of the cell is currently selected. Note that this flag is equal to the respective flag in the previous ->PrepareRow call, it's passed here for convenience only. |
i_hasControlFocus | <TRUE> if and only if the table control currently has the focus Note that this flag is equal to the respective flag in the previous ->PrepareRow call, it's passed here for convenience only. |
_rDevice | denotes the device to paint onto |
_rArea | the are into which the cell should be painted |
_rStyle | the style to be used for drawing |
Implemented in svt::table::GridTableRenderer.
|
pure virtual |
paints the header for a given column
_nCol | the index of the column to paint |
_rDevice | denotes the device to paint onto |
_rArea | the are into which the column header should be painted |
_rStyle | the style to be used for drawing |
Implemented in svt::table::GridTableRenderer.
|
pure virtual |
paints a (part of) header area
There are two header areas in a table control:
A header area is more than the union of the single column/row headers.
First, there might be less columns than fit into the view - in this case, right beside the right-most column, there's still room which belongs to the column header area, but is not occupied by any particular column header.
An equivalent statement holds for the row header area, if there are fewer rows than fit into the view.
Second, if the table control has both a row header and a column header, the intersection between those both belongs to both the column header area and the row header area, but not to any particular column or row header.
There are two flags specifying whether the to-be-painted area is part of the column and/or row header area.
Note that it's not possible for both ->_bIsColHeaderArea and ->_bIsRowHeaderArea to be <FALSE> at the same time.
_rDevice | the device to paint onto |
_rArea | the area to paint into |
_bIsColHeaderArea | <TRUE> if and only if ->_rArea is part of the column header area. |
_bIsRowHeaderArea | <TRUE> if and only if ->_rArea is part of the row header area. |
_rStyle | the style to be used for drawing |
Implemented in svt::table::GridTableRenderer.
|
pure virtual |
paints the header of a row
The row to be painted is denoted by the most recent call to ->PrepareRow.
_rDevice | denotes the device to paint onto |
_rArea | the are into which the row header should be painted |
_rStyle | the style to be used for drawing |
Implemented in svt::table::GridTableRenderer.
|
pure virtual |
prepares a row for painting
Painting a table means painting rows as necessary, in an increasing order. The assumption is that retrieving data for two different rows is (potentially) more expensive than retrieving data for two different columns. Thus, the renderer will get the chance to "seek" to a certain row, and then has to render all cells in this row, before another row is going to be painted.
_nRow | the row which is going to be painted. The renderer should at least remember this row, since subsequent calls to ->PaintRowHeader(), ->PaintCell(), and ->FinishRow() will not pass this parameter again. |
However, the renderer is also allowed to render any cell-independent content of this row.
i_hasControlFocus | <TRUE> if and only if the table control currently has the focus |
_bSelected | <TRUE> if and only if the row to be prepared is selected currently. |
_rDevice | denotes the device to paint onto |
_rRowArea | the are into which the row should be painted. This excludes the row header area, if applicable. |
_rStyle | the style to be used for drawing |
Implemented in svt::table::GridTableRenderer.
|
pure virtual |
draws a cell cursor in the given rectangle
The cell cursor is used to indicate the active/current cell of a table control.
Implemented in svt::table::GridTableRenderer.