QGIS API Documentation 3.41.0-Master (fda2aa46e9a)
Loading...
Searching...
No Matches
Public Slots | Public Member Functions | Static Public Member Functions | Protected Slots | Protected Member Functions | Protected Attributes | List of all members
QgsRuleBasedRendererWidget Class Reference

#include <qgsrulebasedrendererwidget.h>

Inheritance diagram for QgsRuleBasedRendererWidget:
Inheritance graph
[legend]

Public Slots

void addRule ()
 
void clearFeatureCounts ()
 
void countFeatures ()
 
void currentRuleChanged (const QModelIndex &current=QModelIndex(), const QModelIndex &previous=QModelIndex())
 
void editRule ()
 
void editRule (const QModelIndex &index)
 
void refineRuleCategories ()
 
void refineRuleRanges ()
 
void refineRuleScales ()
 
void removeRule ()
 
void restoreSectionWidths ()
 
void saveSectionWidth (int section, int oldSize, int newSize)
 
void selectedRulesChanged ()
 
void setRenderingOrder ()
 
- Public Slots inherited from QgsPanelWidget
void acceptPanel ()
 Accept the panel.
 
void openPanel (QgsPanelWidget *panel)
 Open a panel or dialog depending on dock mode setting If dock mode is true this method will emit the showPanel signal for connected slots to handle the open event.
 

Public Member Functions

 QgsRuleBasedRendererWidget (QgsVectorLayer *layer, QgsStyle *style, QgsFeatureRenderer *renderer)
 
 ~QgsRuleBasedRendererWidget () override
 
QgsFeatureRendererrenderer () override
 Returns pointer to the renderer (no transfer of ownership)
 
void setDockMode (bool dockMode) override
 Set the widget in dock mode which tells the widget to emit panel widgets and not open dialogs.
 
- Public Member Functions inherited from QgsRendererWidget
 QgsRendererWidget (QgsVectorLayer *layer, QgsStyle *style)
 
void applyChanges ()
 This method should be called whenever the renderer is actually set on the layer.
 
QgsSymbolWidgetContext context () const
 Returns the context in which the renderer widget is shown, e.g., the associated map canvas and expression contexts.
 
QgsExpressionContext createExpressionContext () const override
 This method needs to be reimplemented in all classes which implement this interface and return an expression context.
 
virtual void disableSymbolLevels ()
 Disables symbol level modification on the widget.
 
virtual void setContext (const QgsSymbolWidgetContext &context)
 Sets the context in which the renderer widget is shown, e.g., the associated map canvas and expression contexts.
 
void showSymbolLevelsDialog (QgsFeatureRenderer *r)
 Show a dialog with renderer's symbol level settings.
 
const QgsVectorLayervectorLayer () const
 Returns the vector layer associated with the widget.
 
- Public Member Functions inherited from QgsPanelWidget
 QgsPanelWidget (QWidget *parent=nullptr)
 Base class for any widget that can be shown as a inline panel.
 
virtual bool applySizeConstraintsToStack () const
 Returns true if the size constraints and hints for the panel widget should be applied to the parent QgsPanelWidgetStack which this panel is shown in.
 
bool autoDelete ()
 The the auto delete property on the widget.
 
void connectChildPanel (QgsPanelWidget *panel)
 Connect the given sub panel widgets showPanel signals to this current panels main showPanel event to bubble up to the user.
 
void connectChildPanels (const QList< QgsPanelWidget * > &panels)
 Connect the given sub panel widgets showPanel signals to this current panels main showPanel event to bubble up to the user.
 
bool dockMode ()
 Returns the dock mode state.
 
virtual QMenu * menuButtonMenu ()
 Returns the menu to use for the menu button for this panel, or nullptr if no menu button is required.
 
virtual QString menuButtonTooltip () const
 Returns the (translated) tooltip text to use for the menu button for this panel.
 
QString panelTitle ()
 The title of the panel.
 
void setAutoDelete (bool autoDelete)
 The the auto delete property on the widget.
 
void setPanelTitle (const QString &panelTitle)
 Set the title of the panel when shown in the interface.
 
- Public Member Functions inherited from QgsExpressionContextGenerator
virtual ~QgsExpressionContextGenerator ()=default
 

Static Public Member Functions

static QgsRendererWidgetcreate (QgsVectorLayer *layer, QgsStyle *style, QgsFeatureRenderer *renderer)
 
- Static Public Member Functions inherited from QgsPanelWidget
static QgsPanelWidgetfindParentPanel (QWidget *widget)
 Traces through the parents of a widget to find if it is contained within a QgsPanelWidget widget.
 

Protected Slots

void copy () override
 
void paste () override
 
void pasteSymbolToSelection () override
 
- Protected Slots inherited from QgsRendererWidget
void changeSymbolAngle ()
 Change marker angles of selected symbols.
 
void changeSymbolColor ()
 Change color of selected symbols.
 
void changeSymbolOpacity ()
 Change opacity of selected symbols.
 
void changeSymbolSize ()
 Change marker sizes of selected symbols.
 
void changeSymbolUnit ()
 Change units mm/map units of selected symbols.
 
void changeSymbolWidth ()
 Change line widths of selected symbols.
 
void contextMenuViewCategories (QPoint p)
 
virtual void copy ()
 
virtual void paste ()
 
virtual void pasteSymbolToSelection ()
 Pastes the clipboard symbol over selected items.
 

Protected Member Functions

QgsRuleBasedRenderer::RulecurrentRule ()
 
void keyPressEvent (QKeyEvent *event) override
 
void refineRule (int type)
 
void refineRuleCategoriesGui ()
 Opens the dialog for refining a rule using categories.
 
void refineRuleRangesGui ()
 Opens the dialog for refining a rule using ranges.
 
void refineRuleScalesGui (const QModelIndexList &index)
 
void refreshSymbolView () override
 
QgsRuleBasedRenderer::RuleList selectedRules ()
 
QList< QgsSymbol * > selectedSymbols () override
 Subclasses may provide the capability of changing multiple symbols at once by implementing the following two methods and by connecting the slot contextMenuViewCategories(const QPoint&).
 
void setSymbolLevels (const QList< QgsLegendSymbolItem > &levels, bool enabled) override
 Sets the symbol levels for the renderer defined in the widget.
 
- Protected Member Functions inherited from QgsRendererWidget
QgsDataDefinedSizeLegendWidgetcreateDataDefinedSizeLegendWidget (const QgsMarkerSymbol *symbol, const QgsDataDefinedSizeLegend *ddsLegend)
 Creates widget to setup data-defined size legend.
 
void registerDataDefinedButton (QgsPropertyOverrideButton *button, QgsFeatureRenderer::Property key)
 Registers a data defined override button.
 
- Protected Member Functions inherited from QgsPanelWidget
void keyPressEvent (QKeyEvent *event) override
 Overridden key press event to handle the esc event on the widget.
 

Protected Attributes

QMenu * mContextMenu = nullptr
 
QgsRuleBasedRenderer::RuleList mCopyBuffer
 
QAction * mDeleteAction = nullptr
 
QgsRuleBasedRendererModelmModel = nullptr
 
QMenu * mRefineMenu = nullptr
 
std::unique_ptr< QgsRuleBasedRenderermRenderer
 
- Protected Attributes inherited from QgsRendererWidget
QMenu * contextMenu = nullptr
 
QgsSymbolWidgetContext mContext
 Context in which widget is shown.
 
QAction * mCopyAction = nullptr
 
QAction * mCopySymbolAction = nullptr
 Copy symbol action.
 
QgsVectorLayermLayer = nullptr
 
QAction * mPasteAction = nullptr
 
QAction * mPasteSymbolAction = nullptr
 Paste symbol action.
 
QgsStylemStyle = nullptr
 

Additional Inherited Members

- Signals inherited from QgsRendererWidget
void layerVariablesChanged ()
 Emitted when expression context variables on the associated vector layers have been changed.
 
Q_DECL_DEPRECATED void symbolLevelsChanged ()
 Emitted when the symbol levels settings have been changed.
 
- Signals inherited from QgsPanelWidget
void panelAccepted (QgsPanelWidget *panel)
 Emitted when the panel is accepted by the user.
 
void showPanel (QgsPanelWidget *panel)
 Emit when you require a panel to be show in the interface.
 
void widgetChanged ()
 Emitted when the widget state changes.
 

Detailed Description

Definition at line 118 of file qgsrulebasedrendererwidget.h.

Constructor & Destructor Documentation

◆ QgsRuleBasedRendererWidget()

QgsRuleBasedRendererWidget::QgsRuleBasedRendererWidget ( QgsVectorLayer layer,
QgsStyle style,
QgsFeatureRenderer renderer 
)

Definition at line 54 of file qgsrulebasedrendererwidget.cpp.

◆ ~QgsRuleBasedRendererWidget()

QgsRuleBasedRendererWidget::~QgsRuleBasedRendererWidget ( )
override

Definition at line 138 of file qgsrulebasedrendererwidget.cpp.

Member Function Documentation

◆ addRule

void QgsRuleBasedRendererWidget::addRule ( )
slot

Definition at line 159 of file qgsrulebasedrendererwidget.cpp.

◆ clearFeatureCounts

void QgsRuleBasedRendererWidget::clearFeatureCounts ( )
inlineslot

Definition at line 139 of file qgsrulebasedrendererwidget.h.

◆ copy

void QgsRuleBasedRendererWidget::copy ( )
overrideprotectedslot

Definition at line 501 of file qgsrulebasedrendererwidget.cpp.

◆ countFeatures

void QgsRuleBasedRendererWidget::countFeatures ( )
slot

Definition at line 615 of file qgsrulebasedrendererwidget.cpp.

◆ create()

QgsRendererWidget * QgsRuleBasedRendererWidget::create ( QgsVectorLayer layer,
QgsStyle style,
QgsFeatureRenderer renderer 
)
static

Definition at line 49 of file qgsrulebasedrendererwidget.cpp.

◆ currentRule()

QgsRuleBasedRenderer::Rule * QgsRuleBasedRendererWidget::currentRule ( )
protected

Definition at line 184 of file qgsrulebasedrendererwidget.cpp.

◆ currentRuleChanged

void QgsRuleBasedRendererWidget::currentRuleChanged ( const QModelIndex &  current = QModelIndex(),
const QModelIndex &  previous = QModelIndex() 
)
slot

Definition at line 241 of file qgsrulebasedrendererwidget.cpp.

◆ editRule [1/2]

void QgsRuleBasedRendererWidget::editRule ( )
slot

Definition at line 193 of file qgsrulebasedrendererwidget.cpp.

◆ editRule [2/2]

void QgsRuleBasedRendererWidget::editRule ( const QModelIndex &  index)
slot

Definition at line 198 of file qgsrulebasedrendererwidget.cpp.

◆ keyPressEvent()

void QgsRuleBasedRendererWidget::keyPressEvent ( QKeyEvent *  event)
overrideprotected

Definition at line 426 of file qgsrulebasedrendererwidget.cpp.

◆ paste

void QgsRuleBasedRendererWidget::paste ( )
overrideprotectedslot

Definition at line 513 of file qgsrulebasedrendererwidget.cpp.

◆ pasteSymbolToSelection

void QgsRuleBasedRendererWidget::pasteSymbolToSelection ( )
overrideprotectedslot

Definition at line 525 of file qgsrulebasedrendererwidget.cpp.

◆ refineRule()

void QgsRuleBasedRendererWidget::refineRule ( int  type)
protected

Definition at line 257 of file qgsrulebasedrendererwidget.cpp.

◆ refineRuleCategories

void QgsRuleBasedRendererWidget::refineRuleCategories ( )
slot

Definition at line 280 of file qgsrulebasedrendererwidget.cpp.

◆ refineRuleCategoriesGui()

void QgsRuleBasedRendererWidget::refineRuleCategoriesGui ( )
protected

Opens the dialog for refining a rule using categories.

Definition at line 295 of file qgsrulebasedrendererwidget.cpp.

◆ refineRuleRanges

void QgsRuleBasedRendererWidget::refineRuleRanges ( )
slot

Definition at line 285 of file qgsrulebasedrendererwidget.cpp.

◆ refineRuleRangesGui()

void QgsRuleBasedRendererWidget::refineRuleRangesGui ( )
protected

Opens the dialog for refining a rule using ranges.

Definition at line 304 of file qgsrulebasedrendererwidget.cpp.

◆ refineRuleScales

void QgsRuleBasedRendererWidget::refineRuleScales ( )
slot

Definition at line 290 of file qgsrulebasedrendererwidget.cpp.

◆ refineRuleScalesGui()

void QgsRuleBasedRendererWidget::refineRuleScalesGui ( const QModelIndexList &  index)
protected

Definition at line 313 of file qgsrulebasedrendererwidget.cpp.

◆ refreshSymbolView()

void QgsRuleBasedRendererWidget::refreshSymbolView ( )
overrideprotectedvirtual

Reimplemented from QgsRendererWidget.

Definition at line 414 of file qgsrulebasedrendererwidget.cpp.

◆ removeRule

void QgsRuleBasedRendererWidget::removeRule ( )
slot

Definition at line 225 of file qgsrulebasedrendererwidget.cpp.

◆ renderer()

QgsFeatureRenderer * QgsRuleBasedRendererWidget::renderer ( )
overridevirtual

Returns pointer to the renderer (no transfer of ownership)

Implements QgsRendererWidget.

Definition at line 143 of file qgsrulebasedrendererwidget.cpp.

◆ restoreSectionWidths

void QgsRuleBasedRendererWidget::restoreSectionWidths ( )
slot

Definition at line 488 of file qgsrulebasedrendererwidget.cpp.

◆ saveSectionWidth

void QgsRuleBasedRendererWidget::saveSectionWidth ( int  section,
int  oldSize,
int  newSize 
)
slot

Definition at line 477 of file qgsrulebasedrendererwidget.cpp.

◆ selectedRules()

QgsRuleBasedRenderer::RuleList QgsRuleBasedRendererWidget::selectedRules ( )
protected

Definition at line 396 of file qgsrulebasedrendererwidget.cpp.

◆ selectedRulesChanged

void QgsRuleBasedRendererWidget::selectedRulesChanged ( )
slot

Definition at line 708 of file qgsrulebasedrendererwidget.cpp.

◆ selectedSymbols()

QList< QgsSymbol * > QgsRuleBasedRendererWidget::selectedSymbols ( )
overrideprotectedvirtual

Subclasses may provide the capability of changing multiple symbols at once by implementing the following two methods and by connecting the slot contextMenuViewCategories(const QPoint&).

Reimplemented from QgsRendererWidget.

Definition at line 371 of file qgsrulebasedrendererwidget.cpp.

◆ setDockMode()

void QgsRuleBasedRendererWidget::setDockMode ( bool  dockMode)
overridevirtual

Set the widget in dock mode which tells the widget to emit panel widgets and not open dialogs.

Parameters
dockModetrue to enable dock mode.

Reimplemented from QgsRendererWidget.

Definition at line 148 of file qgsrulebasedrendererwidget.cpp.

◆ setRenderingOrder

void QgsRuleBasedRendererWidget::setRenderingOrder ( )
slot

Definition at line 452 of file qgsrulebasedrendererwidget.cpp.

◆ setSymbolLevels()

void QgsRuleBasedRendererWidget::setSymbolLevels ( const QList< QgsLegendSymbolItem > &  levels,
bool  enabled 
)
overrideprotectedvirtual

Sets the symbol levels for the renderer defined in the widget.

The levels argument defines the updated list of symbols with rendering passes set.

The enabled arguments specifies if symbol levels should be enabled for the renderer.

Since
QGIS 3.20

Reimplemented from QgsRendererWidget.

Definition at line 354 of file qgsrulebasedrendererwidget.cpp.

Member Data Documentation

◆ mContextMenu

QMenu* QgsRuleBasedRendererWidget::mContextMenu = nullptr
protected

Definition at line 177 of file qgsrulebasedrendererwidget.h.

◆ mCopyBuffer

QgsRuleBasedRenderer::RuleList QgsRuleBasedRendererWidget::mCopyBuffer
protected

Definition at line 176 of file qgsrulebasedrendererwidget.h.

◆ mDeleteAction

QAction* QgsRuleBasedRendererWidget::mDeleteAction = nullptr
protected

Definition at line 174 of file qgsrulebasedrendererwidget.h.

◆ mModel

QgsRuleBasedRendererModel* QgsRuleBasedRendererWidget::mModel = nullptr
protected

Definition at line 171 of file qgsrulebasedrendererwidget.h.

◆ mRefineMenu

QMenu* QgsRuleBasedRendererWidget::mRefineMenu = nullptr
protected

Definition at line 173 of file qgsrulebasedrendererwidget.h.

◆ mRenderer

std::unique_ptr< QgsRuleBasedRenderer > QgsRuleBasedRendererWidget::mRenderer
protected

Definition at line 170 of file qgsrulebasedrendererwidget.h.


The documentation for this class was generated from the following files: