diff --git a/src/module/infocreatewidget.cpp b/src/module/infocreatewidget.cpp index afe293e..083f145 100644 --- a/src/module/infocreatewidget.cpp +++ b/src/module/infocreatewidget.cpp @@ -70,7 +70,6 @@ void InfoCreateWidget::InitThemeName(){ m_themeNameCNLabel = new QLabel(); m_themeNameCNLineEdit = new QLineEdit(); m_themeNameCNLineEdit->setFixedSize(248,36); - m_themeNameCNLabel->setText(tr("ThemeName-CN")); m_themeNameCNLabel->setFixedWidth(100); m_themeNameCNLineEdit->setEchoMode(QLineEdit::Normal); @@ -81,14 +80,29 @@ void InfoCreateWidget::InitThemeName(){ m_themeNameENLabel = new QLabel(); m_themeNameENLineEdit = new QLineEdit(); m_themeNameENLineEdit->setFixedSize(248,36); - m_themeNameENLabel->setText(tr("ThemeName-EN")); m_themeNameENLabel->setFixedWidth(100); m_themeNameENLineEdit->setEchoMode(QLineEdit::Normal); m_themeNameENLayout->addWidget(m_themeNameENLabel); m_themeNameENLayout->addWidget(m_themeNameENLineEdit); + QFont f(m_themeNameCNLabel->font()); + QFontMetrics fm(f); + QString str1= fm.elidedText(tr("ThemeName-CN"), Qt::ElideRight, 100); + QString str2= fm.elidedText(tr("ThemeName-EN"), Qt::ElideRight, 100); + m_themeNameCNLabel->setText(str1); + m_themeNameCNLabel->setToolTip(tr("ThemeName-CN")); + m_themeNameENLabel->setText(str2); + m_themeNameENLabel->setToolTip(tr("ThemeName-EN")); + if (QGSettings::isSchemaInstalled("org.ukui.style")) { + QGSettings *gSetting = new QGSettings("org.ukui.style", QByteArray(), this); + connect(gSetting, &QGSettings::changed, this, [=](const QString &key) { + if ("systemFontSize" == key) { + updateLabelShow(); + } + }); + } } void InfoCreateWidget::InitBuilderInfo(){ @@ -728,3 +742,15 @@ void InfoCreateWidget::getFileInfo(const QMap &m_packageInfo) m_builderMailLineEdit->setText(m_packageInfo.value("key3").toString()); } +void InfoCreateWidget::updateLabelShow() +{ + QFont f(m_themeNameCNLabel->font()); + QFontMetrics fm(f); + QString str1= fm.elidedText(tr("ThemeName-CN"), Qt::ElideRight, 100); + QString str2= fm.elidedText(tr("ThemeName-EN"), Qt::ElideRight, 100); + m_themeNameCNLabel->setText(str1); + m_themeNameCNLabel->setToolTip(str1); + m_themeNameENLabel->setText(str2); + m_themeNameCNLabel->setToolTip(str2); +} + diff --git a/src/module/infocreatewidget.h b/src/module/infocreatewidget.h index 6d985ea..e10e079 100644 --- a/src/module/infocreatewidget.h +++ b/src/module/infocreatewidget.h @@ -47,6 +47,8 @@ public: void createMeson(const QString &m_date); void getFileInfo(const QMap &m_packageInfo); + void updateLabelShow(); + signals: void readytoSave(); void readytoBuild();