QGIS API Documentation 3.29.0-Master (ade4f0cf0f)
qgstableeditordialog.h
Go to the documentation of this file.
1/***************************************************************************
2 qgstableeditordialog.h
3 ---------------------
4 begin : January 2020
5 copyright : (C) 2020 by Nyall Dawson
6 email : nyall dot dawson at gmail dot com
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15#ifndef QGSTABLEEDITORDIALOG_H
16#define QGSTABLEEDITORDIALOG_H
17
18#include "qgis_gui.h"
19#include "qgstablecell.h"
20#include "ui_qgstableeditorbase.h"
21#include <QMainWindow>
22
24class QgsMessageBar;
25class QgsDockWidget;
29
41class GUI_EXPORT QgsTableEditorDialog : public QMainWindow, private Ui::QgsTableEditorBase
42{
43 Q_OBJECT
44 public:
45
49 QgsTableEditorDialog( QWidget *parent = nullptr );
50
56 void setTableContents( const QgsTableContents &contents );
57
65 bool setTableContentsFromClipboard();
66
72 QgsTableContents tableContents() const;
73
80 double tableRowHeight( int row );
81
88 double tableColumnWidth( int column );
89
98 void setTableRowHeight( int row, double height );
99
108 void setTableColumnWidth( int column, double width );
109
115 bool includeTableHeader() const;
116
122 void setIncludeTableHeader( bool included );
123
129 QVariantList tableHeaders() const;
130
136 void setTableHeaders( const QVariantList &headers );
137
143 void registerExpressionContextGenerator( QgsExpressionContextGenerator *generator );
144
145 signals:
146
151
155 void includeHeaderChanged( bool included );
156
157 protected:
158
159 void closeEvent( QCloseEvent * ) override;
160
161 private:
162 QgsTableEditorWidget *mTableWidget = nullptr;
163 QgsMessageBar *mMessageBar = nullptr;
164 QgsDockWidget *mPropertiesDock = nullptr;
165 QgsPanelWidgetStack *mPropertiesStack = nullptr;
166 QgsTableEditorFormattingWidget *mFormattingWidget = nullptr;
167 bool mBlockSignals = false;
168
169 void updateActionNamesFromSelection();
170};
171
172#endif // QGSTABLEEDITORSHEETWIDGET_H
QgsDockWidget subclass with more fine-grained control over how the widget is closed or opened.
Definition: qgsdockwidget.h:32
Abstract interface for generating an expression context.
A bar for displaying non-blocking messages to the user.
Definition: qgsmessagebar.h:61
A stack widget to manage panels in the interface.
A reusable window for editing simple spreadsheet-style tables.
void includeHeaderChanged(bool included)
Emitted whenever the "include table header" setting is changed.
void tableChanged()
Emitted whenever the table contents are changed.
A reusable widget for formatting the contents of a QgsTableCell.
A reusable widget for editing simple spreadsheet-style tables.
QVector< QgsTableRow > QgsTableContents
A set of table rows.
Definition: qgstablecell.h:220