diff --git a/examples/layouts/main.cpp b/examples/layouts/main.cpp index 3c90ac4e..227c205c 100644 --- a/examples/layouts/main.cpp +++ b/examples/layouts/main.cpp @@ -33,9 +33,7 @@ class DummyLabel : public QskTextLabel setTextColor( Qt::white ); setFontRole( QskSkin::MediumFont ); - QskTextOptions textOptions; - textOptions.setWrapMode( QskTextOptions::WordWrap ); - setTextOptions( textOptions ); + setWrapMode( QskTextOptions::WordWrap ); setAlignment( Qt::AlignCenter ); setSizePolicy( QskSizePolicy::Ignored, QskSizePolicy::Ignored ); diff --git a/src/common/QskTextOptions.cpp b/src/common/QskTextOptions.cpp index 9ae56256..9e1ef49b 100644 --- a/src/common/QskTextOptions.cpp +++ b/src/common/QskTextOptions.cpp @@ -114,7 +114,7 @@ QskTextOptions::TextFormat QskTextOptions::effectiveFormat( const QString& text return PlainText; if ( m_format == QskTextOptions::AutoText ) - return Qt::mightBeRichText( text ) ? RichText : PlainText; + return Qt::mightBeRichText( text ) ? StyledText : PlainText; else return m_format; } diff --git a/src/controls/QskTextLabel.cpp b/src/controls/QskTextLabel.cpp index 1dd9eafa..5c46388b 100644 --- a/src/controls/QskTextLabel.cpp +++ b/src/controls/QskTextLabel.cpp @@ -105,6 +105,46 @@ QskTextOptions QskTextLabel::textOptions() const return m_data->textOptions; } +void QskTextLabel::setTextFormat( QskTextOptions::TextFormat format ) +{ + auto options = m_data->textOptions; + options.setFormat( format ); + + setTextOptions( options ); +} + +QskTextOptions::TextFormat QskTextLabel::textFormat() const +{ + return m_data->textOptions.format(); +} + +void QskTextLabel::setWrapMode( QskTextOptions::WrapMode wrapMode ) +{ + auto options = m_data->textOptions; + options.setWrapMode( wrapMode ); + + setTextOptions( options ); + +} + +QskTextOptions::WrapMode QskTextLabel::wrapMode() const +{ + return m_data->textOptions.wrapMode(); +} + +void QskTextLabel::setElideMode( Qt::TextElideMode elideMode ) +{ + auto options = m_data->textOptions; + options.setElideMode( elideMode ); + + setTextOptions( options ); +} + +Qt::TextElideMode QskTextLabel::elideMode() const +{ + return m_data->textOptions.elideMode(); +} + void QskTextLabel::setFontRole( int role ) { const int oldRole = fontRole(); diff --git a/src/controls/QskTextLabel.h b/src/controls/QskTextLabel.h index b9a857fb..9901d701 100644 --- a/src/controls/QskTextLabel.h +++ b/src/controls/QskTextLabel.h @@ -7,8 +7,7 @@ #define QSK_TEXT_LABEL_H #include "QskControl.h" - -class QskTextOptions; +#include "QskTextOptions.h" class QSK_EXPORT QskTextLabel : public QskControl { @@ -49,6 +48,15 @@ class QSK_EXPORT QskTextLabel : public QskControl void setTextOptions( const QskTextOptions& ); QskTextOptions textOptions() const; + void setTextFormat( QskTextOptions::TextFormat ); + QskTextOptions::TextFormat textFormat() const; + + void setWrapMode( QskTextOptions::WrapMode ); + QskTextOptions::WrapMode wrapMode() const; + + void setElideMode( Qt::TextElideMode ); + Qt::TextElideMode elideMode() const; + void setAlignment( Qt::Alignment ); Qt::Alignment alignment() const; diff --git a/src/dialogs/QskInputSubWindow.cpp b/src/dialogs/QskInputSubWindow.cpp index 2f193587..dabc3b84 100644 --- a/src/dialogs/QskInputSubWindow.cpp +++ b/src/dialogs/QskInputSubWindow.cpp @@ -11,7 +11,6 @@ #include "QskPushButton.h" #include "QskSkin.h" #include "QskTextLabel.h" -#include "QskTextOptions.h" #include #include @@ -25,10 +24,7 @@ namespace { setObjectName( QStringLiteral( "QskInputSubWindowTextLabel" ) ); - QskTextOptions options; - options.setWrapMode( QskTextOptions::WordWrap ); - - setTextOptions( options ); + setWrapMode( QskTextOptions::WordWrap ); connect( this, &QskTextLabel::textChanged, box, &QskInputSubWindow::infoTextChanged );