QGIS API Documentation 3.29.0-Master (da8bb1db43)
qgssearchwidgettoolbutton.h
Go to the documentation of this file.
1/***************************************************************************
2 qgssearchwidgettoolbutton.h
3 ---------------------------
4 Date : May 2016
5 Copyright : (C) 2016 Nyall Dawson
6 Email : nyall dot dawson at gmail.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 QGSSEARCHWIDGETTOOLBUTTON_H
17#define QGSSEARCHWIDGETTOOLBUTTON_H
18
20#include "qgis_sip.h"
21#include <QToolButton>
22#include "qgis_gui.h"
23
24#ifdef SIP_RUN
25% ModuleHeaderCode
27% End
28#endif
29
38class GUI_EXPORT QgsSearchWidgetToolButton : public QToolButton
39{
40
41#ifdef SIP_RUN
43 if ( qobject_cast<QgsSearchWidgetToolButton *>( sipCpp ) )
44 sipType = sipType_QgsSearchWidgetToolButton;
45 else
46 sipType = nullptr;
48#endif
49
50 Q_OBJECT
51
52 public:
53
58 explicit QgsSearchWidgetToolButton( QWidget *parent SIP_TRANSFERTHIS = nullptr );
59
69 void setAvailableFlags( QgsSearchWidgetWrapper::FilterFlags flags );
70
77 void setDefaultFlags( QgsSearchWidgetWrapper::FilterFlags flags );
78
84 QgsSearchWidgetWrapper::FilterFlags availableFlags() const { return mAvailableFilterFlags; }
85
95 void setActiveFlags( QgsSearchWidgetWrapper::FilterFlags flags );
96
106 void toggleFlag( QgsSearchWidgetWrapper::FilterFlag flag );
107
114 QgsSearchWidgetWrapper::FilterFlags activeFlags() const { return mFilterFlags; }
115
121 bool isActive() const;
122
123 public slots:
124
130 void setInactive();
131
137 void setActive();
138
139 signals:
140
145 void activeFlagsChanged( QgsSearchWidgetWrapper::FilterFlags flags );
146
147 private slots:
148
149 void aboutToShowMenu();
150
151 void actionSelected();
152
153 void searchWidgetValueChanged();
154
155 private:
156
157 QgsSearchWidgetWrapper::FilterFlags mAvailableFilterFlags;
158 QgsSearchWidgetWrapper::FilterFlags mDefaultFilterFlags;
159 QgsSearchWidgetWrapper::FilterFlags mFilterFlags;
160 QMenu *mMenu = nullptr;
161
162 void updateState();
163
164};
165
166#endif // QGSSEARCHWIDGETTOOLBUTTON_H
A tool button widget which is displayed next to search widgets in forms, and allows for controlling h...
QgsSearchWidgetWrapper::FilterFlags activeFlags() const
Returns the active filter flags shown in the widget.
void activeFlagsChanged(QgsSearchWidgetWrapper::FilterFlags flags)
Emitted when the active flags selected in the widget is changed.
QgsSearchWidgetWrapper::FilterFlags availableFlags() const
Returns the available filter flags shown in the widget.
FilterFlag
Flags which indicate what types of filtering and searching is possible using the widget.
#define SIP_CONVERT_TO_SUBCLASS_CODE(code)
Definition: qgis_sip.h:186
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:53
#define SIP_END
Definition: qgis_sip.h:203