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 );
Accessible base class used for CSV controls.
Data for a CSV control command.
sal_Int32 GetParam1() const
sal_Int32 mnParam1
The command.
void Set(ScCsvCmdType eType, sal_Int32 nParam1, sal_Int32 nParam2)
ScCsvCmdType GetType() const
sal_Int32 GetParam2() const
sal_Int32 mnParam2
First parameter.
ScCsvCmd()
Second parameter.
Base class for the CSV ruler and the data grid control.
sal_Int32 GetFirstVisPos() const
Returns the first visible position.
bool IsNoRepaint() const
Returns true, if controls will not repaint.
sal_Int32 GetPosCount() const
Returns the number of available positions.
bool mbValidGfx
Shared layout data.
sal_Int32 GetRulerCursorPos() const
Returns the ruler cursor position.
sal_Int32 GetGridCursorPos() const
Returns the data grid cursor position (not column index!).
void InvalidateGfx()
Sets the graphic invalid (next Redraw() will not use cached graphic).
bool IsRTL() const
Returns true, if the Right-to-Left layout mode is active.
sal_Int32 GetCharWidth() const
Returns the width of one character column.
void ValidateGfx()
Sets the graphic valid (next Redraw() will use cached graphic).
sal_Int32 GetLineHeight() const
Returns the height of one line.
ScCsvCmd maCmd
External command handler.
sal_Int32 GetFirstVisLine() const
Returns index of first visible line.
bool IsValidGfx() const
Returns true, if cached graphic is valid.
sal_Int32 GetHdrWidth() const
Returns the width of the header column.
Link< ScCsvControl &, void > maCmdHdl
sal_Int32 GetLineCount() const
Returns the number of data lines.
void SetCmdHdl(const Link< ScCsvControl &, void > &rHdl)
Sets a new command handler.
sal_Int32 GetHdrHeight() const
Returns the height of the header line.
rtl::Reference< ScAccessibleCsvControl > mxAccessible
Content of virtual devices valid?
const ScCsvLayoutData & mrData
Data of last command.
const ScCsvCmd & GetCmd() const
Returns data of the last command.
sal_Int32 GetLastVisPos() const
Returns the last visible position.
const ScCsvLayoutData & GetLayoutData() const
Returns a reference to the current layout data.
ScAccessibleCsvControl * GetAccessible()
ScMoveMode
Specifies which element should be used to perform an action.
@ MOVE_NEXTPAGE
Previous page relative to current context.
@ MOVE_LAST
First element in current context.
@ MOVE_PREVPAGE
Successor of current element in current context.
@ MOVE_NEXT
Predecessor of current element in current context.
@ MOVE_PREV
Last element in current context.
const sal_Int32 CSV_TYPE_DEFAULT
Default column data type.
::std::vector< ScCsvExpData > ScCsvExpDataVec
const sal_Int32 CSV_SCROLL_DIST
Minimum distance to border for auto scroll.
const sal_Int32 CSV_TYPE_NOSELECTION
No column selected.
const sal_uInt8 SC_COL_TEXT
const sal_Int32 CSV_MAXSTRLEN
Maximum length of a cell string.
const sal_Int32 CSV_PREVIEW_LINES
TODO make string array dynamic.
bool operator!=(const ScCsvLayoutData &rData1, const ScCsvLayoutData &rData2)
ScCsvDiff
Flags for comparison of old and new control layout data.
const sal_Int32 CSV_MAXCOLCOUNT
Maximum count of columns.
bool operator==(const ScCsvLayoutData &rData1, const ScCsvLayoutData &rData2)
const sal_uInt8 SC_COL_MDY
const sal_Int32 CSV_TYPE_MULTI
Multi selection with different types.
const sal_uInt8 SC_COL_YMD
const sal_Int32 CSV_MINCOLWIDTH
Minimum character count for a column in separators mode.
const sal_uInt8 SC_COL_STANDARD
const sal_uInt8 SC_COL_DMY
const sal_uInt8 SC_COL_ENGLISH
const sal_uInt16 CSV_HDR_TRANSPARENCY
Transparency for header color of selected columns.
ScCsvCmdType
Enumeration of possible commands to change any settings of the CSV controls.
@ CSVCMD_SETCOLUMNTYPE
Update cell texts with current split settings. [-].
@ CSVCMD_SETLINECOUNT
Change character pixel width. [width in pixel].
@ CSVCMD_SETFIRSTIMPORTLINE
Send selected column type to external controls. [-].
@ CSVCMD_SETHDRWIDTH
Change position offset (scroll pos). [position].
@ CSVCMD_SETLINEHEIGHT
Change height of top header line. [height in pixel].
@ CSVCMD_MOVEGRIDCURSOR
Move ruler cursor to new position. [position].
@ CSVCMD_SETPOSCOUNT
Repaint all controls. [-].
@ CSVCMD_REPAINT
No command. [-].
@ CSVCMD_EXPORTCOLUMNTYPE
Change data type of selected columns. [column type].
@ CSVCMD_MOVESPLIT
Inserts or removes a split. [position].
@ CSVCMD_UPDATECELLTEXTS
Recalculate splits and cell texts. [-].
@ CSVCMD_NEWCELLTEXTS
Move to make passed position visible (for mouse tracking). [position].
@ CSVCMD_SETPOSOFFSET
Change position/column count. [character count].
@ CSVCMD_REMOVESPLIT
Insert a split. [position].
@ CSVCMD_SETCHARWIDTH
Change width of the header column. [width in pixel].
@ CSVCMD_MAKEPOSVISIBLE
Move data grid cursor to new column. [position].
@ CSVCMD_INSERTSPLIT
Set number of first imported line. [line index].
@ CSVCMD_MOVERULERCURSOR
Change data line pixel height. [height in pixel}.
@ CSVCMD_SETHDRHEIGHT
Change first visible line. [line index].
@ CSVCMD_SETLINEOFFSET
Change number of data lines. [line count].
@ CSVCMD_TOGGLESPLIT
Remove a split. [position].
@ CSVCMD_REMOVEALLSPLITS
Move a split. [old position, new position].
const sal_uInt8 SC_COL_SKIP
const sal_Int32 CSV_POS_INVALID
Constant for an invalid ruler position.
Exported data of a column (data used in the dialog).
ScCsvExpData()
External type of the column.
sal_uInt8 mnType
Index of a column.
ScCsvExpData(sal_Int32 nIndex, sal_uInt8 nType)
A structure containing all layout data valid for both ruler and data grid (i.e.
ScCsvLayoutData()
true = application in RTL mode.
sal_Int32 mnPosCursor
Height of a data line.
sal_Int32 mnPosOffset
Number of positions.
sal_Int32 mnHdrWidth
Width of ruler and data grid.
ScCsvDiff GetDiff(const ScCsvLayoutData &rData) const
Returns differences to rData.
sal_Int32 mnLineOffset
Number of data lines.
bool mbAppRTL
>0 = no repaint.
sal_Int32 mnCharWidth
Width of the header column.
sal_Int32 mnWinHeight
Index of first visible line (0-based).
sal_Int32 mnHdrHeight
Height of entire data grid (incl. header).
sal_Int32 mnNoRepaint
Position of grid column cursor.
sal_Int32 mnLineCount
Pixel width of one character.
sal_Int32 mnWinWidth
Horizontal scroll offset.
sal_Int32 mnColCursor
Position of ruler cursor.
sal_Int32 mnLineHeight
Height of the header line.