diff options
| author | 2018-07-27 23:51:12 -0400 | |
|---|---|---|
| committer | 2018-07-27 23:51:12 -0400 | |
| commit | feda8a7db8d1d7c5439aa8f8feef7cc0dd2b59a0 (patch) | |
| tree | 1e50f5f666f419143f510d5ded00fe2006b7bd85 /SQLiteStudio3/guiSQLiteStudio/dataview.h | |
| parent | d9aa870e5d509cc7309ab82dd102a937ab58613a (diff) | |
New upstream version 3.2.1+dfsg1upstream/3.2.1+dfsg1
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/dataview.h')
| -rw-r--r-- | SQLiteStudio3/guiSQLiteStudio/dataview.h | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/dataview.h b/SQLiteStudio3/guiSQLiteStudio/dataview.h index 73ccfe7..55c7895 100644 --- a/SQLiteStudio3/guiSQLiteStudio/dataview.h +++ b/SQLiteStudio3/guiSQLiteStudio/dataview.h @@ -15,6 +15,8 @@ class ExtLineEdit; class QLabel; class IntValidator; class WidgetCover; +class QScrollArea; +class QLineEdit; CFG_KEY_LIST(DataView, QObject::tr("Data view (both grid and form)"), CFG_KEY_ENTRY(REFRESH_DATA, Qt::Key_F5, QObject::tr("Refresh data")) @@ -46,6 +48,7 @@ class GUI_API_EXPORT DataView : public QTabWidget, public ExtActionContainer FILTER_STRING, FILTER_SQL, FILTER_REGEXP, + FILTER_PER_COLUMN, GRID_TOTAL_ROWS, SELECTIVE_COMMIT, SELECTIVE_ROLLBACK, @@ -123,6 +126,7 @@ class GUI_API_EXPORT DataView : public QTabWidget, public ExtActionContainer void initPageEdit(); void initWidgetCover(); void createContents(); + void createFilterPanel(); void goToFormRow(IndexModifier idxMod); void setNavigationState(bool enabled); void updateNavigationState(); @@ -133,15 +137,16 @@ class GUI_API_EXPORT DataView : public QTabWidget, public ExtActionContainer void updateCurrentFormViewRow(); void setFormViewEnabled(bool enabled); void readData(); - void updateFilterIcon(); void initFormViewForNewRow(); void formViewFocusFirstEditor(); + void recreateFilterInputs(); + void createFilteringActions(); - static FilterMode filterMode; static TabsPosition tabsPosition; static QHash<Action,QAction*> staticActions; static QHash<ActionGroup,QActionGroup*> staticActionGroups; + FilterMode filterMode = FilterMode::STRING; QToolBar* gridToolBar = nullptr; QToolBar* formToolBar = nullptr; SqlQueryView* gridView = nullptr; @@ -149,6 +154,9 @@ class GUI_API_EXPORT DataView : public QTabWidget, public ExtActionContainer FormView* formView = nullptr; QWidget* gridWidget = nullptr; QWidget* formWidget = nullptr; + QScrollArea* perColumnFilterArea = nullptr; + QWidget* perColumnWidget = nullptr; + QWidget* perColumnAreaParent = nullptr; ExtLineEdit* filterEdit = nullptr; QLabel* rowCountLabel = nullptr; QLabel* formViewRowCountLabel = nullptr; @@ -161,6 +169,10 @@ class GUI_API_EXPORT DataView : public QTabWidget, public ExtActionContainer bool uncommittedGrid = false; bool uncommittedForm = false; WidgetCover* widgetCover = nullptr; + QList<QLineEdit*> filterInputs; + QStringList filterValues; + QWidget* filterLeftSpacer = nullptr; + QWidget* filterRightSpacer = nullptr; signals: @@ -205,6 +217,9 @@ class GUI_API_EXPORT DataView : public QTabWidget, public ExtActionContainer void updateGridCommitCover(int value); void hideGridCommitCover(); void adjustColumnWidth(SqlQueryItem* item); + void syncFilterScrollPosition(); + void resizeFilter(int section, int oldSize, int newSize); + void togglePerColumnFiltering(); }; int qHash(DataView::ActionGroup action); |
