QGIS API Documentation  3.6.0-Noosa (5873452)
qgsstylegroupselectiondialog.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsstylegroupselectiondialog.h
3  ---------------------
4  begin : Oct 2015
5  copyright : (C) 2015 by Alessandro Pasotti
6  email : elpaso at itopen dot it
7 
8  ***************************************************************************
9  * *
10  * This program is free software; you can redistribute it and/or modify *
11  * it under the terms of the GNU General Public License as published by *
12  * the Free Software Foundation; either version 2 of the License, or *
13  * (at your option) any later version. *
14  * *
15  ***************************************************************************/
16 
17 #ifndef QGSSTYLEV2GROUPSELECTIONDIALOG_H
18 #define QGSSTYLEV2GROUPSELECTIONDIALOG_H
19 
20 #include <QDialog>
21 #include <QStandardItem>
22 #include "ui_qgsstylegroupselectiondialogbase.h"
23 #include "qgis_gui.h"
24 
25 
26 class QgsStyle;
27 
32 class GUI_EXPORT QgsStyleGroupSelectionDialog : public QDialog, private Ui::SymbolsGroupSelectionDialogBase
33 {
34  Q_OBJECT
35 
36  public:
37  QgsStyleGroupSelectionDialog( QgsStyle *style, QWidget *parent = nullptr );
39  void setBold( QStandardItem *item );
40 
41  signals:
43  void tagSelected( const QString &tagName );
45  void tagDeselected( const QString &tagName );
47  void smartgroupSelected( const QString &groupName );
49  void smartgroupDeselected( const QString &groupName );
51  void allDeselected();
53  void allSelected();
54 
55  private slots:
56  void groupTreeSelectionChanged( const QItemSelection &selected, const QItemSelection &deselected );
57 
58  private:
59 
64  void buildTagTree( QStandardItem *&parent );
65  QgsStyle *mStyle = nullptr;
66 
67 };
68 
69 #endif // QGSSTYLEV2GROUPSELECTIONDIALOG_H