QGIS API Documentation 3.43.0-Master (b60ef06885e)
qgsmaplayersavestyledialog.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsmaplayersavestyledialog.h
3 --------------------------------------
4 Date : September 2018
5 Copyright : (C) 2018 by Denis Rouzaud
6 Email : denis@opengis.ch
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 QGSMAPLAYERSAVESTYLEDIALOG_H
17#define QGSMAPLAYERSAVESTYLEDIALOG_H
18
19// We don't want to expose this in the public API
20#define SIP_NO_FILE
21
22#include <QDialog>
23#include "ui_qgsmaplayersavestyledialog.h"
24#include "qgsmaplayer.h"
26#include "qgis_gui.h"
27
29
43class GUI_EXPORT QgsMapLayerSaveStyleDialog : public QDialog, private Ui::QgsMapLayerSaveStyleDialog
44{
45 Q_OBJECT
46
47 public:
49 {
50 public:
52 QString name;
53 QString description;
55 };
56
60 explicit QgsMapLayerSaveStyleDialog( QgsMapLayer *layer, QWidget *parent = nullptr );
61
65 SaveToDbSettings saveToDbSettings() const;
66
70 QString outputFilePath() const;
71
75 QgsMapLayer::StyleCategories styleCategories() const;
76
80 QgsLayerPropertiesDialog::StyleType currentStyleType() const;
81
87 bool saveOnlyCurrentStyle() const;
88
94 void setSaveOnlyCurrentStyle( bool saveCurrentStyle );
95
99 const QListWidget *stylesWidget();
100
105 Qgis::SldExportOptions sldExportOptions() const;
106
107 public slots:
108 void accept() override;
109
110 private slots:
111 void updateSaveButtonState();
112 void showHelp();
113 void readUiFileContent( const QString &filePath );
114 void selectAll();
115 void deselectAll();
116 void invertSelection();
117
118 private:
119 void setupMultipleStyles();
120 void populateStyleComboBox();
121 QgsMapLayer *mLayer = nullptr;
123 QString mUiFileContent;
124 bool mSaveOnlyCurrentStyle = true;
125};
126
127#endif // QGSMAPLAYERSAVESTYLEDIALOG_H
QFlags< SldExportOption > SldExportOptions
Definition qgis.h:666
A dialog which allows saving map layer styles.
Base class for all map layer types.
Definition qgsmaplayer.h:77
QFlags< StyleCategory > StyleCategories