QGIS API Documentation 4.1.0-Master (60fea48833c)
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 "ui_qgshistorywidgetbase.h"
20
21#include "qgis.h"
22#include "qgis_gui.h"
24#include "qgspanelwidget.h"
25
26#include <QSortFilterProxyModel>
27
30class QgsMessageBar;
31
32#ifndef SIP_RUN
33
35class GUI_EXPORT QgsHistoryEntryProxyModel : public QSortFilterProxyModel
36{
37 Q_OBJECT
38 public:
39 QgsHistoryEntryProxyModel( QObject *parent = nullptr );
40
41 void setFilter( const QString &filter );
42 bool filterAcceptsRow( int source_row, const QModelIndex &source_parent ) const override;
43
44 private:
45 QString mFilter;
46};
48#endif
49
55class GUI_EXPORT QgsHistoryWidget : public QgsPanelWidget, private Ui::QgsHistoryWidgetBase
56{
57 Q_OBJECT
58
59 public:
71 const QString &providerId = QString(),
73 QgsHistoryProviderRegistry *registry = nullptr,
75 QWidget *parent = nullptr
76 );
77
78 private slots:
79
80 void currentItemChanged( const QModelIndex &selected, const QModelIndex &previous );
81 void nodeDoubleClicked( const QModelIndex &index );
82 void showNodeContextMenu( const QPoint &pos );
83 void urlClicked( const QUrl &url );
84
85 private:
86 QgsHistoryEntryModel *mModel = nullptr;
87 QgsHistoryEntryProxyModel *mProxyModel = nullptr;
89};
90
91#endif // QGSHISTORYWIDGET_H
@ LocalProfile
Local profile.
Definition qgis.h:3618
QFlags< HistoryProviderBackend > HistoryProviderBackends
Definition qgis.h:3622
An item model representing history entries in a hierarchical tree structure.
A registry for objects which track user history (i.e.
Contains settings which reflect the context in which a history widget is shown, e....
QgsHistoryWidget(const QString &providerId=QString(), Qgis::HistoryProviderBackends backends=Qgis::HistoryProviderBackend::LocalProfile, QgsHistoryProviderRegistry *registry=nullptr, const QgsHistoryWidgetContext &context=QgsHistoryWidgetContext(), QWidget *parent=nullptr)
Constructor for QgsHistoryWidget, with the specified parent widget.
A bar for displaying non-blocking messages to the user.
QgsPanelWidget(QWidget *parent=nullptr)
Base class for any widget that can be shown as an inline panel.