QGIS API Documentation 3.41.0-Master (af5edcb665c)
|
A button for creating and modifying QgsSymbol settings. More...
#include <qgssymbolbutton.h>
Public Slots | |
void | copyColor () |
Copies the current symbol color to the clipboard. | |
void | copySymbol () |
Copies the current symbol to the clipboard. | |
void | pasteColor () |
Pastes a color from the clipboard to the symbol. | |
void | pasteSymbol () |
Pastes a symbol from the clipboard. | |
void | setColor (const QColor &color) |
Sets the current color for the symbol. | |
void | setShowNull (bool showNull) |
Sets whether a set to null (clear) option is shown in the button's drop-down menu. | |
void | setSymbol (QgsSymbol *symbol) |
Sets the symbol for the button. | |
void | setToDefaultSymbol () |
Sets symbol to the button's default symbol, if set. | |
void | setToNull () |
Sets symbol to to null. | |
Signals | |
void | changed () |
Emitted when the symbol's settings are changed. | |
Public Member Functions | |
QgsSymbolButton (QWidget *parent=nullptr, const QString &dialogTitle=QString()) | |
Construct a new symbol button. | |
~QgsSymbolButton () | |
template<class SymbolType > | |
SymbolType * | clonedSymbol () |
Returns a clone of the current symbol (as the specified template type) defined by the button. | |
const QgsSymbol * | defaultSymbol () const |
Returns the default symbol for the button, which is shown in the button's drop-down menu for the "default symbol" option. | |
QString | dialogTitle () const |
Returns the title for the symbol settings dialog window. | |
bool | isNull () const |
Returns true if the current symbol is null. | |
QgsVectorLayer * | layer () const |
Returns the layer associated with the widget. | |
QgsMapCanvas * | mapCanvas () const |
Returns the map canvas associated with the widget. | |
QgsMessageBar * | messageBar () const |
Returns the message bar associated with the widget. | |
QSize | minimumSizeHint () const override |
void | registerExpressionContextGenerator (QgsExpressionContextGenerator *generator) |
Register an expression context generator class that will be used to retrieve an expression context for the button when required. | |
void | setDefaultSymbol (QgsSymbol *symbol) |
Sets the default symbol for the button, which is shown in the button's drop-down menu for the "default symbol" option. | |
void | setDialogTitle (const QString &title) |
Sets the title for the symbol settings dialog window. | |
void | setLayer (QgsVectorLayer *layer) |
Sets a layer to associate with the widget. | |
void | setMapCanvas (QgsMapCanvas *canvas) |
Sets a map canvas to associate with the widget. | |
void | setMessageBar (QgsMessageBar *bar) |
Sets the message bar associated with the widget. | |
void | setSymbolType (Qgis::SymbolType type) |
Sets the symbol type which the button requires. | |
bool | showNull () const |
Returns whether the set to null (clear) option is shown in the button's drop-down menu. | |
QSize | sizeHint () const override |
QgsSymbol * | symbol () |
Returns the current symbol defined by the button. | |
Qgis::SymbolType | symbolType () const |
Returns the symbol type which the button requires. | |
Protected Member Functions | |
void | changeEvent (QEvent *e) override |
void | dragEnterEvent (QDragEnterEvent *e) override |
void | dragLeaveEvent (QDragLeaveEvent *e) override |
void | dropEvent (QDropEvent *e) override |
void | keyPressEvent (QKeyEvent *e) override |
void | mouseMoveEvent (QMouseEvent *e) override |
void | mousePressEvent (QMouseEvent *e) override |
void | mouseReleaseEvent (QMouseEvent *e) override |
void | resizeEvent (QResizeEvent *event) override |
void | showEvent (QShowEvent *e) override |
void | wheelEvent (QWheelEvent *event) override |
Properties | |
QString | dialogTitle |
A button for creating and modifying QgsSymbol settings.
The button shows a preview icon for the current symbol, and will open a detailed symbol editor dialog (or panel widget) when clicked.
Definition at line 44 of file qgssymbolbutton.h.
QgsSymbolButton::QgsSymbolButton | ( | QWidget * | parent = nullptr , |
const QString & | dialogTitle = QString() |
||
) |
Construct a new symbol button.
Use dialogTitle string to define the title to show in the symbol settings dialog.
Definition at line 42 of file qgssymbolbutton.cpp.
|
default |
|
signal |
Emitted when the symbol's settings are changed.
|
overrideprotected |
Definition at line 607 of file qgssymbolbutton.cpp.
|
inline |
Returns a clone of the current symbol (as the specified template type) defined by the button.
Definition at line 100 of file qgssymbolbutton.h.
|
slot |
Copies the current symbol color to the clipboard.
Definition at line 281 of file qgssymbolbutton.cpp.
|
slot |
Copies the current symbol to the clipboard.
Definition at line 269 of file qgssymbolbutton.cpp.
const QgsSymbol * QgsSymbolButton::defaultSymbol | ( | ) | const |
Returns the default symbol for the button, which is shown in the button's drop-down menu for the "default symbol" option.
nullptr
if the default symbol option is disabled. Definition at line 240 of file qgssymbolbutton.cpp.
QString QgsSymbolButton::dialogTitle | ( | ) | const |
Returns the title for the symbol settings dialog window.
Definition at line 806 of file qgssymbolbutton.cpp.
|
overrideprotected |
Definition at line 378 of file qgssymbolbutton.cpp.
|
overrideprotected |
Definition at line 394 of file qgssymbolbutton.cpp.
|
overrideprotected |
Definition at line 401 of file qgssymbolbutton.cpp.
bool QgsSymbolButton::isNull | ( | ) | const |
Returns true
if the current symbol is null.
Definition at line 826 of file qgssymbolbutton.cpp.
|
overrideprotected |
Definition at line 365 of file qgssymbolbutton.cpp.
QgsVectorLayer * QgsSymbolButton::layer | ( | ) | const |
Returns the layer associated with the widget.
Definition at line 220 of file qgssymbolbutton.cpp.
QgsMapCanvas * QgsSymbolButton::mapCanvas | ( | ) | const |
Returns the map canvas associated with the widget.
Definition at line 200 of file qgssymbolbutton.cpp.
QgsMessageBar * QgsSymbolButton::messageBar | ( | ) | const |
Returns the message bar associated with the widget.
Definition at line 215 of file qgssymbolbutton.cpp.
|
override |
Definition at line 96 of file qgssymbolbutton.cpp.
|
overrideprotected |
Definition at line 319 of file qgssymbolbutton.cpp.
|
overrideprotected |
Definition at line 298 of file qgssymbolbutton.cpp.
|
overrideprotected |
Definition at line 352 of file qgssymbolbutton.cpp.
|
slot |
Pastes a color from the clipboard to the symbol.
If clipboard does not contain a valid color or string representation of a color, then no change is applied.
Definition at line 286 of file qgssymbolbutton.cpp.
|
slot |
Pastes a symbol from the clipboard.
If clipboard does not contain a valid symbol then no change is applied.
Definition at line 274 of file qgssymbolbutton.cpp.
void QgsSymbolButton::registerExpressionContextGenerator | ( | QgsExpressionContextGenerator * | generator | ) |
Register an expression context generator class that will be used to retrieve an expression context for the button when required.
Definition at line 230 of file qgssymbolbutton.cpp.
|
overrideprotected |
Definition at line 622 of file qgssymbolbutton.cpp.
|
slot |
Sets the current color for the symbol.
Will emit a changed() signal if the color is different to the previous symbol color.
Definition at line 253 of file qgssymbolbutton.cpp.
void QgsSymbolButton::setDefaultSymbol | ( | QgsSymbol * | symbol | ) |
Sets the default symbol for the button, which is shown in the button's drop-down menu for the "default symbol" option.
symbol | default symbol for the button. Set to nullptr to disable the default symbol option. Ownership of symbol is transferred to the button. |
Definition at line 235 of file qgssymbolbutton.cpp.
void QgsSymbolButton::setDialogTitle | ( | const QString & | title | ) |
Sets the title for the symbol settings dialog window.
Definition at line 801 of file qgssymbolbutton.cpp.
void QgsSymbolButton::setLayer | ( | QgsVectorLayer * | layer | ) |
Sets a layer to associate with the widget.
This allows the widget to setup layer related settings within the symbol settings dialog, such as correctly populating data defined override buttons.
Definition at line 225 of file qgssymbolbutton.cpp.
void QgsSymbolButton::setMapCanvas | ( | QgsMapCanvas * | canvas | ) |
Sets a map canvas to associate with the widget.
This allows the widget to fetch current settings from the map canvas, such as current scale.
Definition at line 205 of file qgssymbolbutton.cpp.
void QgsSymbolButton::setMessageBar | ( | QgsMessageBar * | bar | ) |
Sets the message bar associated with the widget.
This allows the widget to push feedback messages to the appropriate message bar.
Definition at line 210 of file qgssymbolbutton.cpp.
|
slot |
Sets whether a set to null (clear) option is shown in the button's drop-down menu.
showNull | set to true to show a null option |
Definition at line 816 of file qgssymbolbutton.cpp.
|
slot |
Sets the symbol for the button.
Ownership of symbol is transferred to the button.
Definition at line 245 of file qgssymbolbutton.cpp.
void QgsSymbolButton::setSymbolType | ( | Qgis::SymbolType | type | ) |
Sets the symbol type which the button requires.
If the type differs from the current symbol type, the symbol will be reset to a default symbol style of the new type.
Definition at line 106 of file qgssymbolbutton.cpp.
|
slot |
Sets symbol to the button's default symbol, if set.
Definition at line 836 of file qgssymbolbutton.cpp.
|
slot |
|
overrideprotected |
Definition at line 616 of file qgssymbolbutton.cpp.
bool QgsSymbolButton::showNull | ( | ) | const |
Returns whether the set to null (clear) option is shown in the button's drop-down menu.
Definition at line 821 of file qgssymbolbutton.cpp.
|
override |
Definition at line 101 of file qgssymbolbutton.cpp.
QgsSymbol * QgsSymbolButton::symbol | ( | ) |
Returns the current symbol defined by the button.
Definition at line 811 of file qgssymbolbutton.cpp.
|
inline |
Returns the symbol type which the button requires.
Definition at line 73 of file qgssymbolbutton.h.
|
overrideprotected |
Definition at line 419 of file qgssymbolbutton.cpp.
|
readwrite |
Definition at line 48 of file qgssymbolbutton.h.