QGIS API Documentation 3.36.0-Maidenhead (09951dc0acf)
|
A button for customizing QgsTextFormat settings. More...
#include <qgsfontbutton.h>
Public Types | |
enum | Mode { ModeTextRenderer , ModeQFont } |
Available button modes. More... | |
Public Slots | |
void | copyColor () |
Copies the current text color to the clipboard. | |
void | copyFormat () |
Copies the current text format to the clipboard. | |
void | pasteColor () |
Pastes a color from the clipboard to the text format. | |
void | pasteFormat () |
Pastes a format from the clipboard. | |
void | setColor (const QColor &color) |
Sets the current color for the text. | |
void | setCurrentFont (const QFont &font) |
Sets the current text font to show in the widget. | |
void | setTextFormat (const QgsTextFormat &format) |
Sets the current text format to show in the widget. | |
void | setToNullFormat () |
Sets the text format to a null (invalid) QgsTextFormat. | |
Signals | |
void | changed () |
Emitted when the widget's text format settings are changed. | |
Public Member Functions | |
QgsFontButton (QWidget *parent=nullptr, const QString &dialogTitle=QString()) | |
Construct a new font button. | |
QFont | currentFont () const |
Returns the current QFont set by the widget. | |
QString | dialogTitle () const |
Returns the title for the text settings dialog window. | |
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 |
QgsFontButton::Mode | mode () const |
Returns the current button mode. | |
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 | setDialogTitle (const QString &title) |
Sets the title for the text 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 | setMode (Mode mode) |
Sets the current button mode. | |
void | setNoFormatString (const QString &string) |
Sets the string to use for the "null format" option in the button's drop-down menu. | |
void | setShowNullFormat (const bool show) |
Sets whether the "null format" option should be shown in the button's drop-down menu. | |
bool | showNullFormat () const |
Returns whether the "null format" option will be shown in the button's drop-down menu. | |
QSize | sizeHint () const override |
QgsTextFormat | textFormat () const |
Returns the current text formatting set by the widget. | |
Protected Member Functions | |
void | changeEvent (QEvent *e) override |
void | dragEnterEvent (QDragEnterEvent *e) override |
void | dragLeaveEvent (QDragLeaveEvent *e) override |
void | dropEvent (QDropEvent *e) override |
bool | event (QEvent *e) override |
void | mouseMoveEvent (QMouseEvent *e) override |
void | mousePressEvent (QMouseEvent *e) override |
void | resizeEvent (QResizeEvent *event) override |
void | showEvent (QShowEvent *e) override |
void | wheelEvent (QWheelEvent *event) override |
Properties | |
QFont | currentFont |
QString | dialogTitle |
Mode | mode |
QgsTextFormat | textFormat |
A button for customizing QgsTextFormat settings.
The button will open a detailed text format settings dialog when clicked. An attached drop-down menu allows for copying and pasting text styles, picking colors for the text, and for dropping colors from other color widgets.
The button can be used in two different modes(). The default behavior is to include all settings used for configuring QgsTextFormat/QgsTextRenderer classes. A cut down mode (without settings for color) is also available when the resultant font is used only in a QFont object.
Definition at line 47 of file qgsfontbutton.h.
enum QgsFontButton::Mode |
Available button modes.
Enumerator | |
---|---|
ModeTextRenderer | Configure font settings for use with QgsTextRenderer. |
ModeQFont | Configure font settings for use with QFont objects. |
Definition at line 59 of file qgsfontbutton.h.
QgsFontButton::QgsFontButton | ( | QWidget * | parent = nullptr , |
const QString & | dialogTitle = QString() |
||
) |
Construct a new font button.
Use parent to attach a parent QWidget to the dialog. Use dialogTitle string to define the title to show in the text settings dialog.
Definition at line 38 of file qgsfontbutton.cpp.
|
signal |
Emitted when the widget's text format settings are changed.
|
overrideprotected |
Definition at line 807 of file qgsfontbutton.cpp.
|
slot |
Copies the current text color to the clipboard.
This is only used when mode() is ModeTextRenderer.
Definition at line 962 of file qgsfontbutton.cpp.
|
slot |
Copies the current text format to the clipboard.
Definition at line 190 of file qgsfontbutton.cpp.
QFont QgsFontButton::currentFont | ( | ) | const |
Returns the current QFont set by the widget.
This is only used when mode() is ModeQFont.
Definition at line 755 of file qgsfontbutton.cpp.
QString QgsFontButton::dialogTitle | ( | ) | const |
Returns the title for the text settings dialog window.
Definition at line 985 of file qgsfontbutton.cpp.
|
overrideprotected |
Definition at line 308 of file qgsfontbutton.cpp.
|
overrideprotected |
Definition at line 336 of file qgsfontbutton.cpp.
|
overrideprotected |
Definition at line 343 of file qgsfontbutton.cpp.
|
overrideprotected |
Definition at line 220 of file qgsfontbutton.cpp.
QgsVectorLayer * QgsFontButton::layer | ( | ) | const |
Returns the layer associated with the widget.
Definition at line 760 of file qgsfontbutton.cpp.
QgsMapCanvas * QgsFontButton::mapCanvas | ( | ) | const |
Returns the map canvas associated with the widget.
Definition at line 134 of file qgsfontbutton.cpp.
QgsMessageBar * QgsFontButton::messageBar | ( | ) | const |
Returns the message bar associated with the widget.
Definition at line 149 of file qgsfontbutton.cpp.
|
override |
Definition at line 64 of file qgsfontbutton.cpp.
QgsFontButton::Mode QgsFontButton::mode | ( | ) | const |
Returns the current button mode.
Definition at line 782 of file qgsfontbutton.cpp.
|
overrideprotected |
Definition at line 257 of file qgsfontbutton.cpp.
|
overrideprotected |
Definition at line 243 of file qgsfontbutton.cpp.
|
slot |
Pastes a color from the clipboard to the text format.
If clipboard does not contain a valid color or string representation of a color, then no change is applied. This is only used when mode() is ModeTextRenderer.
Definition at line 968 of file qgsfontbutton.cpp.
|
slot |
Pastes a format from the clipboard.
If clipboard does not contain a valid format then no change is applied.
Definition at line 204 of file qgsfontbutton.cpp.
void QgsFontButton::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 770 of file qgsfontbutton.cpp.
|
overrideprotected |
Definition at line 822 of file qgsfontbutton.cpp.
|
slot |
Sets the current color for the text.
Will emit a changed signal if the color is different to the previous text color. This is only used when mode() is ModeTextRenderer.
Definition at line 174 of file qgsfontbutton.cpp.
|
slot |
Sets the current text font to show in the widget.
This is only used when mode() is ModeQFont.
Definition at line 775 of file qgsfontbutton.cpp.
void QgsFontButton::setDialogTitle | ( | const QString & | title | ) |
Sets the title for the text settings dialog window.
Definition at line 980 of file qgsfontbutton.cpp.
void QgsFontButton::setLayer | ( | QgsVectorLayer * | layer | ) |
Sets a layer to associate with the widget.
This allows the widget to setup layer related settings within the text settings dialog, such as correctly populating data defined override buttons.
Definition at line 765 of file qgsfontbutton.cpp.
void QgsFontButton::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 139 of file qgsfontbutton.cpp.
void QgsFontButton::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 144 of file qgsfontbutton.cpp.
void QgsFontButton::setMode | ( | Mode | mode | ) |
Sets the current button mode.
This can be used to toggle between the full capabilities of the button (for configuring QgsTextFormat/QgsTextRenderer objects) and a cut-back version for configuring QFont object properties (i.e. with no color settings or the other advanced options QgsTextFormat allows).
Definition at line 787 of file qgsfontbutton.cpp.
|
inline |
Sets the string to use for the "null format" option in the button's drop-down menu.
true
.Definition at line 192 of file qgsfontbutton.h.
|
inline |
Sets whether the "null format" option should be shown in the button's drop-down menu.
This option is only used for buttons set to the ModeTextRenderer mode().
If selected, the "null format" option sets the button's format to an invalid QgsTextFormat. This can be used to represent a "use default format" state for the button.
By default this option is not shown.
Definition at line 182 of file qgsfontbutton.h.
|
slot |
Sets the current text format to show in the widget.
This is only used when mode() is ModeTextRenderer.
Definition at line 154 of file qgsfontbutton.cpp.
|
slot |
Sets the text format to a null (invalid) QgsTextFormat.
This is only used when mode() is ModeTextRenderer.
Definition at line 167 of file qgsfontbutton.cpp.
|
overrideprotected |
Definition at line 816 of file qgsfontbutton.cpp.
|
inline |
Returns whether the "null format" option will be shown in the button's drop-down menu.
This option is only used for buttons set to the ModeTextRenderer mode().
If selected, the "null format" option sets the button's format to an invalid QgsTextFormat. This can be used to represent a "use default format" state for the button.
By default this option is not shown.
Definition at line 206 of file qgsfontbutton.h.
|
override |
Definition at line 69 of file qgsfontbutton.cpp.
|
inline |
Returns the current text formatting set by the widget.
This is only used when mode() is ModeTextRenderer.
Definition at line 137 of file qgsfontbutton.h.
|
overrideprotected |
Definition at line 380 of file qgsfontbutton.cpp.
|
readwrite |
Definition at line 53 of file qgsfontbutton.h.
|
readwrite |
Definition at line 52 of file qgsfontbutton.h.
|
readwrite |
Definition at line 51 of file qgsfontbutton.h.
|
readwrite |
Definition at line 54 of file qgsfontbutton.h.