16#ifndef QGSRULEBASEDRENDERERWIDGET_H
17#define QGSRULEBASEDRENDERERWIDGET_H
28#include <QAbstractItemModel>
62 Qt::ItemFlags
flags(
const QModelIndex &
index )
const override;
63 QVariant
data(
const QModelIndex &
index,
int role = Qt::DisplayRole )
const override;
64 QVariant
headerData(
int section, Qt::Orientation orientation,
int role = Qt::DisplayRole )
const override;
65 int rowCount(
const QModelIndex &
parent = QModelIndex() )
const override;
66 int columnCount(
const QModelIndex & = QModelIndex() )
const override;
67 QModelIndex
index(
int row,
int column,
const QModelIndex &
parent = QModelIndex() )
const override;
68 QModelIndex
parent(
const QModelIndex &
index )
const override;
71 bool setData(
const QModelIndex &
index,
const QVariant &value,
int role = Qt::EditRole )
override;
76 QMimeData *
mimeData(
const QModelIndexList &indexes )
const override;
77 bool dropMimeData(
const QMimeData *
data, Qt::DropAction action,
int row,
int column,
const QModelIndex &
parent )
override;
79 bool removeRows(
int row,
int count,
const QModelIndex &
parent = QModelIndex() )
override;
115#include "ui_qgsrulebasedrendererwidget.h"
139 void editRule(
const QModelIndex &index );
144 void refineRuleScales();
145 void refineRuleCategories();
146 void refineRuleRanges();
148 void setRenderingOrder();
150 void currentRuleChanged(
const QModelIndex ¤t = QModelIndex(),
const QModelIndex &previous = QModelIndex() );
151 void selectedRulesChanged();
153 void saveSectionWidth(
int section,
int oldSize,
int newSize );
154 void restoreSectionWidths();
157 void refineRule(
int type );
159 void refineRuleCategoriesGui();
161 void refineRuleRangesGui();
162 void refineRuleScalesGui(
const QModelIndexList &index );
164 void setSymbolLevels(
const QList<QgsLegendSymbolItem> &levels,
bool enabled )
override;
168 QList<QgsSymbol *> selectedSymbols()
override;
170 void refreshSymbolView()
override;
171 void keyPressEvent( QKeyEvent *event )
override;
183 void copy()
override;
184 void paste()
override;
191 void liveUpdateRuleFromPanel();
192 void showContextMenu( QPoint p );
199#include "ui_qgsrendererrulepropsdialogbase.h"
239 void buildExpression();
250 void setDockMode(
bool dockMode )
override;
287 void buildExpression();
288 void accept()
override;
295 QDialogButtonBox *buttonBox =
nullptr;
Abstract base class for all 2D vector feature renderers.
QgsRuleBasedRenderer::Rule * rule()
QgsRendererRulePropsDialog(QgsRuleBasedRenderer::Rule *rule, QgsVectorLayer *layer, QgsStyle *style, QWidget *parent=nullptr, const QgsSymbolWidgetContext &context=QgsSymbolWidgetContext())
Constructor for QgsRendererRulePropsDialog.
Tree model for a rule-based renderer's rules.
QgsRuleBasedRenderer::Rule * ruleForIndex(const QModelIndex &index) const
bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override
QPointer< QScreen > mScreen
QModelIndex index(int row, int column, const QModelIndex &parent=QModelIndex()) const override
bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override
void updateRule(const QModelIndex &parent, int row)
void willAddRules(const QModelIndex &parent, int count)
Qt::ItemFlags flags(const QModelIndex &index) const override
int rowCount(const QModelIndex &parent=QModelIndex()) const override
void setSymbol(const QModelIndex &index, QgsSymbol *symbol)
Sets the symbol for the rule at the specified index.
void clearFeatureCounts()
QStringList mimeTypes() const override
void removeRule(const QModelIndex &index)
int columnCount(const QModelIndex &=QModelIndex()) const override
Qt::DropActions supportedDropActions() const override
QgsRuleBasedRendererModel(QgsRuleBasedRenderer *renderer, QObject *parent, QScreen *screen=nullptr)
Constructor for QgsRuleBasedRendererModel, for the specified renderer.
void setFeatureCounts(const QHash< QgsRuleBasedRenderer::Rule *, QgsRuleBasedRendererCount > &countMap)
QgsRuleBasedRenderer * mR
QModelIndex parent(const QModelIndex &index) const override
QHash< QgsRuleBasedRenderer::Rule *, QgsRuleBasedRendererCount > mFeatureCountMap
QMimeData * mimeData(const QModelIndexList &indexes) const override
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const override
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
void insertRule(const QModelIndex &parent, int before, QgsRuleBasedRenderer::Rule *newrule)
bool removeRows(int row, int count, const QModelIndex &parent=QModelIndex()) override
void finishedAddingRules()
Represents an individual rule for a rule-based renderer.
QList< QgsRuleBasedRenderer::Rule * > RuleList
A database of saved style entities, including symbols, color ramps, text formats and others.
Contains settings which reflect the context in which a symbol (or renderer) widget is shown,...
Abstract base class for all rendered symbols.
Represents a vector layer which manages a vector based dataset.
QHash< QgsRuleBasedRenderer::Rule *, int > duplicateCountMap