76 std::unique_ptr< ScEditEngineDefaulter >
86 std::vector< std::vector<OUString> >
maTexts;
106 void UpdateLayoutData();
108 void UpdateOffsetX();
112 void SetFirstImportedLine( sal_Int32 nLine );
115 sal_Int32 GetNoScrollCol( sal_Int32 nPos )
const;
119 SAL_DLLPRIVATE
void InitColors();
121 SAL_DLLPRIVATE
void InitFonts();
123 SAL_DLLPRIVATE
void InitSizeData();
128 void InsertSplit( sal_Int32 nPos );
130 void RemoveSplit( sal_Int32 nPos );
132 void MoveSplit( sal_Int32 nPos, sal_Int32 nNewPos );
134 void RemoveAllSplits();
140 SAL_DLLPRIVATE
bool ImplInsertSplit( sal_Int32 nPos );
142 SAL_DLLPRIVATE
bool ImplRemoveSplit( sal_Int32 nPos );
144 SAL_DLLPRIVATE
void ImplClearSplits();
151 sal_uInt32 GetFirstVisColumn()
const;
153 sal_uInt32 GetLastVisColumn()
const;
156 bool IsValidColumn( sal_uInt32 nColIndex )
const;
158 bool IsVisibleColumn( sal_uInt32 nColIndex )
const;
161 sal_Int32 GetColumnX( sal_uInt32 nColIndex )
const;
163 sal_uInt32 GetColumnFromX( sal_Int32 nX )
const;
166 sal_Int32
GetColumnPos( sal_uInt32 nColIndex )
const {
return maSplits[ nColIndex ]; }
168 sal_uInt32 GetColumnFromPos( sal_Int32 nPos )
const;
170 sal_Int32 GetColumnWidth( sal_uInt32 nColIndex )
const;
177 sal_Int32 GetSelColumnType()
const;
179 void SetSelColumnType( sal_Int32
nType );
181 void SetTypeNames( std::vector<OUString>&& rTypeNames );
183 OUString GetColumnTypeName( sal_uInt32 nColIndex )
const;
192 SAL_DLLPRIVATE sal_Int32 GetColumnType( sal_uInt32 nColIndex )
const;
194 SAL_DLLPRIVATE
void SetColumnType( sal_uInt32 nColIndex, sal_Int32 nColType );
197 SAL_DLLPRIVATE
void ScrollVertRel(
ScMoveMode eDir );
199 SAL_DLLPRIVATE
void ExecutePopup(
const Point& rPos );
204 bool IsSelected( sal_uInt32 nColIndex )
const;
206 sal_uInt32 GetFirstSelected()
const;
208 sal_uInt32 GetNextSelected( sal_uInt32 nFromIndex )
const;
210 void Select( sal_uInt32 nColIndex,
bool bSelect =
true );
212 void ToggleSelect( sal_uInt32 nColIndex );
214 void SelectRange( sal_uInt32 nColIndex1, sal_uInt32 nColIndex2,
bool bSelect =
true );
216 void SelectAll(
bool bSelect =
true );
223 SAL_DLLPRIVATE
void MoveCursor( sal_uInt32 nColIndex );
225 SAL_DLLPRIVATE
void MoveCursorRel(
ScMoveMode eDir );
228 SAL_DLLPRIVATE
void ImplClearSelection();
231 SAL_DLLPRIVATE
void DoSelectAction( sal_uInt32 nColIndex, sal_uInt16 nModifier );
236 void ImplSetTextLineSep(
237 sal_Int32 nLine,
const OUString& rTextLine,
238 const OUString& rSepChars,
sal_Unicode cTextSep,
bool bMergeSep,
bool bRemoveSpace =
false );
240 void ImplSetTextLineFix( sal_Int32 nLine,
const OUString& rTextLine );
243 OUString GetCellText( sal_uInt32 nColIndex, sal_Int32 nLine )
const;
247 virtual void Resize()
override;
280 SAL_DLLPRIVATE
void ImplSetColumnClipRegion(
OutputDevice& rOutDev, sal_uInt32 nColIndex );
282 SAL_DLLPRIVATE
void ImplDrawColumnHeader(
OutputDevice& rOutDev, sal_uInt32 nColIndex,
Color aFillColor );
285 SAL_DLLPRIVATE
void ImplDrawCellText(
const Point& rPos,
const OUString& rText );
287 SAL_DLLPRIVATE
void ImplDrawFirstLineSep(
bool bSet );
289 SAL_DLLPRIVATE
void ImplDrawColumnBackgr( sal_uInt32 nColIndex );
291 SAL_DLLPRIVATE
void ImplDrawRowHeaders();
293 SAL_DLLPRIVATE
void ImplDrawBackgrDev();
296 SAL_DLLPRIVATE
void ImplDrawColumnSelection( sal_uInt32 nColIndex );
298 SAL_DLLPRIVATE
void ImplDrawGridDev();
301 SAL_DLLPRIVATE
void ImplDrawColumn( sal_uInt32 nColIndex );
304 SAL_DLLPRIVATE
void ImplDrawHorzScrolled( sal_Int32 nOldPos );
307 SAL_DLLPRIVATE
void ImplInvertCursor( sal_Int32 nPos );
312 virtual css::uno::Reference<css::accessibility::XAccessible>
CreateAccessible()
override;
Accessible base class used for CSV controls.
Base class for the CSV ruler and the data grid control.
virtual void GetFocus() override
sal_Int32 GetGridCursorPos() const
Returns the data grid cursor position (not column index!).
virtual void LoseFocus() override
A data grid control for the CSV import dialog.
Color maGridPBColor
Table grid color.
sal_Int32 mnFirstImpLine
2D-vector for cell texts.
sal_Int32 GetColumnPos(sal_uInt32 nColIndex) const
Returns start position of the column with the specified index.
vcl::Font maMonoFont
Font for column and row headers.
bool mbTracking
Current column of mouse tracking.
Color maHeaderGridColor
Background color for headers.
Size maWinSize
Monospace font for data cells.
vcl::Font maHeaderFont
For drawing cell texts.
ScCsvSplits maSplits
Paper size for edit engine.
sal_uInt32 mnMTCurrCol
Index of most recently selected column.
sal_uInt32 GetFocusColumn() const
Returns index of the focused column.
std::unique_ptr< weld::Menu > mxPopup
Data grid with selection and cursor.
ScCsvTableBox * GetTableBox()
Color maAppBackColor
Grid color for "first imported line" delimiter.
std::vector< OUString > maTypeNames
State of each column.
ScCsvColStateVec maColStates
Vector with split positions.
const ScCsvColStateVec & GetColumnStates() const
Returns the vector with the states of all columns.
sal_Int32 GetWidth() const
Returns the width of the control.
::svtools::ColorConfig * mpColorConfig
Popup menu for column types.
Color maSelectColor
Text color for headers.
VclPtr< VirtualDevice > mpGridDev
Grid background, headers, cell texts.
std::unique_ptr< ScEditEngineDefaulter > mpEditEngine
Header color of selected columns.
Color maBackColor
Application color configuration.
sal_uInt32 mnRecentSelCol
First imported line (0-based).
sal_uInt32 GetColumnCount() const
Returns the number of columns.
Color maHeaderTextColor
Grid color for headers.
VclPtr< VirtualDevice > mpBackgrDev
Grid Parent.
Color maGridColor
Cell background color.
bool mbMTSelecting
True if Mouse tracking.
Color maTextColor
Background color for unused area.
Size maEdEngSize
Size of the control.
Color maHeaderBackColor
Text color for data area.
std::vector< std::vector< OUString > > maTexts
UI names of data types.
sal_Int32 GetHeight() const
Returns the height of the control.
ScCsvTableBox * mpTableBox
A vector of column splits that supports inserting, removing and moving splits.
The control in the CSV import dialog that contains a ruler and a data grid to visualize and modify th...
constexpr tools::Long Height() const
constexpr tools::Long Width() const
virtual void ConfigurationChanged(ConfigurationBroadcaster *p, ConfigurationHints nHint)=0
ScMoveMode
Specifies which element should be used to perform an action.
const sal_Int32 CSV_TYPE_DEFAULT
Default column data type.
::std::vector< ScCsvColState > ScCsvColStateVec
const sal_uInt32 CSV_COLUMN_INVALID
const sal_uInt32 CSV_VEC_NOTFOUND
Constant for an invalid vector index.
This struct contains the state of one table column.
ScCsvColState(sal_Int32 nType=CSV_TYPE_DEFAULT)
bool mbColumnSelected
Data type.
A structure containing all layout data valid for both ruler and data grid (i.e.