16#ifndef QGSSTYLEV2MANAGERDIALOG_H
17#define QGSSTYLEV2MANAGERDIALOG_H
20#include <QStandardItem>
24#include "ui_qgsstylemanagerdialogbase.h"
43 explicit QgsCheckableStyleModel(
QgsStyleModel *sourceModel, QObject *parent =
nullptr,
bool readOnly =
false );
44 explicit QgsCheckableStyleModel(
QgsStyle *style, QObject *parent =
nullptr,
bool readOnly =
false );
46 void setCheckable(
bool checkable );
47 void setCheckTag(
const QString &tag );
49 Qt::ItemFlags flags(
const QModelIndex &index )
const override;
50 QVariant data(
const QModelIndex &index,
int role )
const override;
51 bool setData(
const QModelIndex &index,
const QVariant &value,
int role = Qt::EditRole )
override;
56 bool mCheckable =
false;
58 bool mReadOnly =
false;
94 bool readOnly =
false );
112 static QString addColorRampStatic( QWidget *parent,
QgsStyle *style,
113 const QString &RampType = QString() );
120 void setFavoritesGroupVisible(
bool show );
127 void setSmartGroupsVisible(
bool show );
138 void setBaseStyleName(
const QString &name );
172 void exportItemsSVG();
180 void exportItemsPNG();
188 void exportSelectedItemsImages(
const QString &dir,
const QString &format, QSize size );
223 Q_DECL_DEPRECATED
void itemChanged( QStandardItem *item )
SIP_DEPRECATED;
228 void groupChanged(
const QModelIndex & );
233 void groupRenamed( QStandardItem *item );
253 void tagSymbolsAction();
258 void editSmartgroupAction();
263 Q_DECL_DEPRECATED
void regrouped( QStandardItem * )
SIP_DEPRECATED;
268 void filterSymbols(
const QString &filter );
271 void symbolSelected(
const QModelIndex & );
274 void selectedSymbolsChanged(
const QItemSelection &selected,
const QItemSelection &deselected );
277 void grouptreeContextMenu( QPoint );
280 void listitemsContextMenu( QPoint );
291 bool addColorRamp(
const QString &type = QString() );
294 void addFavoriteSelectedSymbols();
296 void removeFavoriteSelectedSymbols();
298 void tagSelectedSymbols(
bool newTag =
false );
300 void detagSelectedSymbols();
312 void populateGroups();
317 Q_DECL_DEPRECATED
void setSymbolsChecked( const QStringList & )
SIP_DEPRECATED;
324 Q_DECL_DEPRECATED
void populateSymbols( const QStringList &symbolNames,
bool checkable = false )
SIP_DEPRECATED;
331 Q_DECL_DEPRECATED
void populateColorRamps( const QStringList &colorRamps,
bool checkable = false )
SIP_DEPRECATED;
333 int currentItemType();
334 QString currentItemName();
337 bool addSymbol(
int symbolType = -1 );
340 bool editColorRamp();
353 void enableSymbolInputs(
bool );
355 void enableGroupInputs(
bool );
357 void enableItemsForGroupingMode(
bool );
360 void setBold( QStandardItem * );
364 void tabItemType_currentChanged(
int );
366 void copyItemsToDefault();
372 void setThumbnailSize(
int );
374 void currentStyleAboutToBeDestroyed();
380 void setCurrentStyle(
QgsStyle *style );
381 int selectedItemType();
386 bool allTypesSelected() const;
388 bool isReadOnly() const;
399 Name = Qt::UserRole + 1,
403 QList< ItemDetails > selectedItems();
408 static int copyItems(
const QList< ItemDetails > &items,
QgsStyle *src,
QgsStyle *dst,
409 QWidget *parentWidget, std::unique_ptr<QgsTemporaryCursorOverride> &cursorOverride,
410 bool isImport,
const QStringList &importTags,
bool addToFavorites,
bool ignoreSourceTags );
416 QgsCheckableStyleModel *mModel =
nullptr;
420 QString mStyleFilename;
422 bool mModified =
false;
425 bool mGroupingMode =
false;
428 QStringList mTagList;
430 QMenu *mShareMenu =
nullptr;
433 QMenu *mGroupMenu =
nullptr;
436 QMenu *mGroupListMenu =
nullptr;
439 QMenu *mGroupTreeContextMenu =
nullptr;
442 QMenu *mMenuBtnAddItemColorRamp =
nullptr;
445 QMenu *mMenuBtnAddItemAll =
nullptr;
448 QMenu *mMenuBtnAddItemLabelSettings =
nullptr;
451 QMenu *mMenuBtnAddItemLegendPatchShape =
nullptr;
454 QMenu *mMenuBtnAddItemSymbol3D =
nullptr;
456 QAction *mActionCopyToDefault =
nullptr;
458 QAction *mActionCopyItem =
nullptr;
459 QAction *mActionPasteItem =
nullptr;
460 QAction *mExportAction =
nullptr;
461 QAction *mImportAction =
nullptr;
463 int mBlockGroupUpdates = 0;
464 int mBlockStyleDatabaseChanges = 0;
466 bool mReadOnly =
false;
467 bool mFavoritesGroupVisible =
true;
468 bool mSmartGroupVisible =
true;
471 static QString sPreviousTag;
473 bool addTextFormat();
474 bool editTextFormat();
477 bool editLabelSettings();
480 bool editLegendPatchShape();
482 bool addSymbol3D(
const QString &type );
485 void addStyleDatabase(
bool createNew );
GeometryType
The geometry types are used to group Qgis::WkbType in a coarse way.
A bar for displaying non-blocking messages to the user.
List model representing the style databases associated with a QgsProject.
QgsSettingsTreeNode is a tree node for the settings tree to help organizing and introspecting the tre...
QgsSettingsTreeNode * createChildNode(const QString &key) SIP_THROW(QgsSettingsException)
Creates a normal tree node It will return the existing child node if it exists at the given key.
static QgsSettingsTreeNode * sTreeApp
A dialog allowing users to customize and populate a QgsStyle.
static const QgsSettingsEntryString * settingLastStyleDatabaseFolder
Last used folder for generic style database actions.
A QAbstractItemModel subclass for showing symbol and color ramp entities contained within a QgsStyle ...
A QSortFilterProxyModel subclass for showing filtered symbol and color ramps entries from a QgsStyle ...
StyleEntity
Enum for Entities involved in a style.
Temporarily sets a cursor override for the QApplication for the lifetime of the object.