23#include "moc_qgsalignmentcombobox.cpp"
25using namespace Qt::StringLiterals;
32 connect(
this,
static_cast<void ( QComboBox::* )(
int )
>( &QComboBox::currentIndexChanged ),
this, [
this] {
40 mAlignments = alignments;
46 return static_cast<Qt::Alignment
>( currentData().toInt() );
51 const int index = findData( QVariant( alignment ) );
53 setCurrentIndex( index );
65 case Qt::AlignHCenter:
67 case Qt::AlignJustify:
69 case Qt::AlignAbsolute:
87 case Qt::AlignVCenter:
89 case Qt::AlignBaseline:
136 const int index = findData( QVariant( alignment ) );
139 if ( !text.isEmpty() )
140 setItemText( index, text );
141 if ( !icon.isNull() )
142 setItemIcon( index, icon );
146void QgsAlignmentComboBox::populate()
150 mBlockChanged =
true;
153 if ( mAlignments & Qt::AlignLeft )
155 if ( mAlignments & Qt::AlignHCenter )
157 if ( mAlignments & Qt::AlignRight )
159 if ( mAlignments & Qt::AlignJustify )
162 if ( mAlignments & Qt::AlignTop )
164 if ( mAlignments & Qt::AlignVCenter )
166 if ( mAlignments & Qt::AlignBottom )
169 const int index = findData( QVariant( prevAlign ) );
171 setCurrentIndex( index );
173 mBlockChanged =
false;
TextVerticalAlignment
Text vertical alignment.
@ VerticalCenter
Center align.
TextHorizontalAlignment
Text horizontal alignment.
QgsAlignmentComboBox(QWidget *parent=nullptr)
Constructor for QgsAlignmentComboBox, with the specified parent widget.
void changed()
Emitted when the alignment is changed.
Qgis::TextHorizontalAlignment horizontalAlignment() const
Returns the current alignment choice as a QGIS horizontal text alignment enum.
void setCurrentAlignment(Qt::Alignment alignment)
Sets the current alignment choice.
void customizeAlignmentDisplay(Qt::Alignment alignment, const QString &text=QString(), const QIcon &icon=QIcon())
Sets the text and icon to use for a particular alignment option, replacing the default text or icon.
Qgis::TextVerticalAlignment verticalAlignment() const
Returns the current alignment choice as a QGIS horizontal text alignment enum.
Qt::Alignment currentAlignment() const
Returns the current alignment choice.
void setAvailableAlignments(Qt::Alignment alignments)
Sets the available alignment choices shown in the combo box.
static QIcon getThemeIcon(const QString &name, const QColor &fillColor=QColor(), const QColor &strokeColor=QColor())
Helper to get a theme icon.