26 #include <rtl/ref.hxx>
70 mnIndex( nIndex ), mnType( nType ) {}
150 return !(rData1 == rData2);
209 inline void Set(
ScCsvCmdType eType, sal_Int32 nParam1, sal_Int32 nParam2 );
244 void AccSendFocusEvent(
bool bFocused );
246 void AccSendCaretEvent();
248 void AccSendVisibleEvent();
250 void AccSendSelectionEvent();
252 void AccSendTableUpdateEvent( sal_uInt32 nFirstColumn, sal_uInt32 nLastColumn,
bool bAllRows =
true );
254 void AccSendInsertColumnEvent( sal_uInt32 nFirstColumn, sal_uInt32 nLastColumn );
256 void AccSendRemoveColumnEvent( sal_uInt32 nFirstColumn, sal_uInt32 nLastColumn );
271 void Repaint(
bool bInvalidate =
false );
273 void DisableRepaint();
275 void EnableRepaint();
302 sal_Int32 GetVisPosCount()
const;
306 sal_Int32
GetLastVisPos()
const {
return GetFirstVisPos() + GetVisPosCount(); }
308 sal_Int32 GetMaxPosOffset()
const;
311 bool IsValidSplitPos( sal_Int32 nPos )
const;
313 bool IsVisibleSplitPos( sal_Int32 nPos )
const;
320 sal_Int32 GetHdrX()
const;
322 sal_Int32 GetFirstX()
const;
324 sal_Int32 GetLastX()
const;
326 sal_Int32 GetX( sal_Int32 nPos )
const;
328 sal_Int32 GetPosFromX( sal_Int32 nX )
const;
333 sal_Int32 GetVisLineCount()
const;
337 sal_Int32 GetLastVisLine()
const;
339 sal_Int32 GetMaxLineOffset()
const;
342 bool IsValidLine( sal_Int32 nLine )
const;
344 bool IsVisibleLine( sal_Int32 nLine )
const;
351 sal_Int32 GetY( sal_Int32 nLine )
const;
353 sal_Int32 GetLineFromY( sal_Int32 nY )
const;
367 static ScMoveMode GetHorzDirection( sal_uInt16 nCode,
bool bHomeEnd );
370 static ScMoveMode GetVertDirection( sal_uInt16 nCode,
bool bHomeEnd );
ScCsvDiff GetDiff(const ScCsvLayoutData &rData) const
Returns differences to rData.
Change data line pixel height. [height in pixel}.
ScCsvCmdType
Enumeration of possible commands to change any settings of the CSV controls.
Repaint all controls. [-].
sal_Int32 mnPosOffset
Number of positions.
sal_Int32 mnWinHeight
Index of first visible line (0-based).
const sal_uInt8 SC_COL_STANDARD
sal_Int32 GetParam2() const
const sal_uInt8 SC_COL_TEXT
const sal_Int32 CSV_POS_INVALID
Constant for an invalid ruler position.
sal_Int32 GetPosCount() const
Returns the number of available positions.
const ScCsvLayoutData & GetLayoutData() const
Returns a reference to the current layout data.
sal_uInt8 mnType
Index of a column.
ScMoveMode
Specifies which element should be used to perform an action.
bool mbAppRTL
>0 = no repaint.
sal_Int32 GetLineHeight() const
Returns the height of one line.
Set number of first imported line. [line index].
Change position/column count. [character count].
Update cell texts with current split settings. [-].
const ScCsvLayoutData & mrData
Data of last command.
bool IsValidGfx() const
Returns true, if cached graphic is valid.
sal_Int32 mnCharWidth
Width of the header column.
sal_Int32 mnWinWidth
Horizontal scroll offset.
sal_Int32 GetHdrHeight() const
Returns the height of the header line.
void Set(ScCsvCmdType eType, sal_Int32 nParam1, sal_Int32 nParam2)
ScCsvLayoutData()
true = application in RTL mode.
Data for a CSV control command.
Change width of the header column. [width in pixel].
Change height of top header line. [height in pixel].
Base class for the CSV ruler and the data grid control.
Accessible base class used for CSV controls.
const sal_Int32 CSV_MAXSTRLEN
Maximum length of a cell string.
Move ruler cursor to new position. [position].
Predecessor of current element in current context.
bool IsNoRepaint() const
Returns true, if controls will not repaint.
Link< ScCsvControl &, void > maCmdHdl
const sal_Int32 CSV_SCROLL_DIST
Minimum distance to border for auto scroll.
sal_Int32 GetCharWidth() const
Returns the width of one character column.
Exported data of a column (data used in the dialog).
ScAccessibleCsvControl * GetAccessible()
const ScCsvCmd & GetCmd() const
Returns data of the last command.
Inserts or removes a split. [position].
bool IsRTL() const
Returns true, if the Right-to-Left layout mode is active.
const sal_Int32 CSV_TYPE_NOSELECTION
No column selected.
ScCsvExpData()
External type of the column.
const sal_Int32 CSV_MINCOLWIDTH
Minimum character count for a column in separators mode.
sal_Int32 mnHdrWidth
Width of ruler and data grid.
Change number of data lines. [line count].
Remove a split. [position].
sal_Int32 mnLineCount
Pixel width of one character.
Send selected column type to external controls. [-].
sal_Int32 GetLastVisPos() const
Returns the last visible position.
sal_Int32 mnColCursor
Position of ruler cursor.
sal_Int32 GetLineCount() const
Returns the number of data lines.
void SetCmdHdl(const Link< ScCsvControl &, void > &rHdl)
Sets a new command handler.
bool mbValidGfx
Shared layout data.
Last element in current context.
Successor of current element in current context.
ScCsvCmd()
Second parameter.
Move data grid cursor to new column. [position].
sal_Int32 GetFirstVisLine() const
Returns index of first visible line.
sal_Int32 mnNoRepaint
Position of grid column cursor.
rtl::Reference< ScAccessibleCsvControl > mxAccessible
Content of virtual devices valid?
sal_Int32 mnLineHeight
Height of the header line.
Change data type of selected columns. [column type].
sal_Int32 mnHdrHeight
Height of entire data grid (incl. header).
void ValidateGfx()
Sets the graphic valid (next Redraw() will use cached graphic).
ScCsvCmd maCmd
External command handler.
First element in current context.
const sal_Int32 CSV_TYPE_DEFAULT
Default column data type.
sal_Int32 mnPosCursor
Height of a data line.
bool operator!=(const ScCsvLayoutData &rData1, const ScCsvLayoutData &rData2)
Change position offset (scroll pos). [position].
const sal_uInt16 CSV_HDR_TRANSPARENCY
Transparency for header color of selected columns.
Move to make passed position visible (for mouse tracking). [position].
sal_Int32 mnLineOffset
Number of data lines.
Change first visible line. [line index].
sal_Int32 GetRulerCursorPos() const
Returns the ruler cursor position.
const sal_Int32 CSV_TYPE_MULTI
Multi selection with different types.
const sal_uInt8 SC_COL_MDY
const sal_uInt8 SC_COL_ENGLISH
sal_Int32 GetHdrWidth() const
Returns the width of the header column.
ScCsvExpData(sal_Int32 nIndex, sal_uInt8 nType)
ScCsvDiff
Flags for comparison of old and new control layout data.
Previous page relative to current context.
Change character pixel width. [width in pixel].
void InvalidateGfx()
Sets the graphic invalid (next Redraw() will not use cached graphic).
sal_Int32 mnParam1
The command.
const sal_Int32 CSV_MAXCOLCOUNT
Maximum count of columns.
sal_Int32 GetParam1() const
Insert a split. [position].
const sal_uInt8 SC_COL_DMY
ScCsvCmdType GetType() const
::std::vector< ScCsvExpData > ScCsvExpDataVec
bool operator==(const ScCsvLayoutData &rData1, const ScCsvLayoutData &rData2)
Move a split. [old position, new position].
const sal_uInt8 SC_COL_SKIP
Recalculate splits and cell texts. [-].
sal_Int32 GetFirstVisPos() const
Returns the first visible position.
sal_Int32 GetGridCursorPos() const
Returns the data grid cursor position (not column index!).
const sal_Int32 CSV_PREVIEW_LINES
TODO make string array dynamic.
sal_Int32 mnParam2
First parameter.
const sal_uInt8 SC_COL_YMD
A structure containing all layout data valid for both ruler and data grid (i.e.