From ff3c3321da7e7cc94eea7a7fa1a5524448c9064c Mon Sep 17 00:00:00 2001 From: Uwe Rathmann Date: Tue, 8 Mar 2022 16:15:37 +0100 Subject: [PATCH] QskDialogButton::resetButton --- src/dialogs/QskDialogButton.cpp | 22 ++++++++++------------ src/dialogs/QskDialogButton.h | 2 ++ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/dialogs/QskDialogButton.cpp b/src/dialogs/QskDialogButton.cpp index b1db39f8..c0294aae 100644 --- a/src/dialogs/QskDialogButton.cpp +++ b/src/dialogs/QskDialogButton.cpp @@ -11,21 +11,12 @@ QSK_SUBCONTROL( QskDialogButton, Panel ) QSK_SUBCONTROL( QskDialogButton, Text ) QSK_SUBCONTROL( QskDialogButton, Graphic ) -static QString qskButtonText( - const QskDialogButton* button, QskDialog::Action action ) -{ - if ( const auto skin = button->effectiveSkin() ) - return skin->dialogButtonText( action ); - - return QString(); -} - QskDialogButton::QskDialogButton( QskDialog::Action action, QQuickItem* parent ) : QskPushButton( parent ) , m_action( action ) { - setText( qskButtonText( this, m_action ) ); + resetButton(); } QskDialogButton::QskDialogButton( QQuickItem* parent ) @@ -57,7 +48,7 @@ void QskDialogButton::setAction( QskDialog::Action action ) if ( action != m_action ) { m_action = action; - setText( qskButtonText( this, action ) ); + resetButton(); Q_EMIT actionChanged(); } @@ -74,10 +65,17 @@ void QskDialogButton::changeEvent( QEvent* event ) { case QEvent::LocaleChange: case QEvent::StyleChange: - setText( qskButtonText( this, m_action ) ); + resetButton(); + break; } Inherited::changeEvent( event ); } +void QskDialogButton::resetButton() +{ + if ( const auto skin = effectiveSkin() ) + setText( skin->dialogButtonText( m_action ) ); +} + #include "moc_QskDialogButton.cpp" diff --git a/src/dialogs/QskDialogButton.h b/src/dialogs/QskDialogButton.h index a093a481..afb9e875 100644 --- a/src/dialogs/QskDialogButton.h +++ b/src/dialogs/QskDialogButton.h @@ -39,6 +39,8 @@ class QSK_EXPORT QskDialogButton : public QskPushButton QskAspect::Subcontrol ) const override; private: + void resetButton(); + QskDialog::Action m_action; };