QGIS API Documentation 3.41.0-Master (cea29feecf2)
Loading...
Searching...
No Matches
qgshistorywidget.h
Go to the documentation of this file.
1/***************************************************************************
2 qgshistorywidget.h
3 ------------------
4 Date : April 2023
5 Copyright : (C) 2023 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
16#ifndef QGSHISTORYWIDGET_H
17#define QGSHISTORYWIDGET_H
18
19#include "qgis.h"
20#include "qgis_gui.h"
21#include "ui_qgshistorywidgetbase.h"
22#include "qgspanelwidget.h"
24
25#include <QSortFilterProxyModel>
26
29class QgsMessageBar;
30
31#ifndef SIP_RUN
32
34class GUI_EXPORT QgsHistoryEntryProxyModel : public QSortFilterProxyModel
35{
36 Q_OBJECT
37 public:
38 QgsHistoryEntryProxyModel( QObject *parent = nullptr );
39
40 void setFilter( const QString &filter );
41 bool filterAcceptsRow( int source_row, const QModelIndex &source_parent ) const override;
42
43 private:
44 QString mFilter;
45};
47#endif
48
54class GUI_EXPORT QgsHistoryWidget : public QgsPanelWidget, private Ui::QgsHistoryWidgetBase
55{
56 Q_OBJECT
57
58 public:
69 QgsHistoryWidget( const QString &providerId = QString(), Qgis::HistoryProviderBackends backends = Qgis::HistoryProviderBackend::LocalProfile, QgsHistoryProviderRegistry *registry = nullptr, const QgsHistoryWidgetContext &context = QgsHistoryWidgetContext(), QWidget *parent = nullptr );
70
71 private slots:
72
73 void currentItemChanged( const QModelIndex &selected, const QModelIndex &previous );
74 void nodeDoubleClicked( const QModelIndex &index );
75 void showNodeContextMenu( const QPoint &pos );
76 void urlClicked( const QUrl &url );
77
78 private:
79 QgsHistoryEntryModel *mModel = nullptr;
80 QgsHistoryEntryProxyModel *mProxyModel = nullptr;
82};
83
84#endif // QGSHISTORYWIDGET_H
@ LocalProfile
Local profile.
QFlags< HistoryProviderBackend > HistoryProviderBackends
Definition qgis.h:3304
An item model representing history entries in a hierarchical tree structure.
The QgsHistoryProviderRegistry is a registry for objects which track user history (i....
Contains settings which reflect the context in which a history widget is shown, e....
A widget showing entries from a QgsHistoryProviderRegistry.
A bar for displaying non-blocking messages to the user.
Base class for any widget that can be shown as a inline panel.