gui: Add monospaced font settings
This commit is contained in:
5 files changed
+134
-1
No files matched your search
@@ -705,6 +705,106 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QGroupBox" name="font_groupBox">
|
||||||
|
<property name="title">
|
||||||
|
<string>Monospaced font in the Overview tab:</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="font_verticalLayout">
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="embeddedFont_horizontalLayout">
|
||||||
|
<item>
|
||||||
|
<widget class="QRadioButton" name="embeddedFont_radioButton">
|
||||||
|
<property name="text">
|
||||||
|
<string>embedded "%1"</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="embeddedFont_horizontalSpacer">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QVBoxLayout" name="embeddedFont_verticalLayout">
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="embeddedFont_label_1">
|
||||||
|
<property name="text">
|
||||||
|
<string>111.11111111 BTC</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="embeddedFont_label_9">
|
||||||
|
<property name="text">
|
||||||
|
<string>909.09090909 BTC</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="Line" name="font_line">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="systemFont_horizontalLayout">
|
||||||
|
<item>
|
||||||
|
<widget class="QRadioButton" name="systemFont_radioButton">
|
||||||
|
<property name="text">
|
||||||
|
<string>closest matching "%1"</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="systemFont_horizontalSpacer">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QVBoxLayout" name="systemFont_verticalLayout">
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="systemFont_label_1">
|
||||||
|
<property name="text">
|
||||||
|
<string>111.11111111 BTC</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="systemFont_label_9">
|
||||||
|
<property name="text">
|
||||||
|
<string>909.09090909 BTC</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<spacer name="verticalSpacer_Display">
|
<spacer name="verticalSpacer_Display">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
|
|||||||
@@ -144,6 +144,20 @@ OptionsDialog::OptionsDialog(QWidget *parent, bool enableWallet) :
|
|||||||
ui->minimizeToTray->setEnabled(false);
|
ui->minimizeToTray->setEnabled(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QFont embedded_font{GUIUtil::fixedPitchFont(true)};
|
||||||
|
ui->embeddedFont_radioButton->setText(ui->embeddedFont_radioButton->text().arg(QFontInfo(embedded_font).family()));
|
||||||
|
embedded_font.setWeight(QFont::Bold);
|
||||||
|
ui->embeddedFont_label_1->setFont(embedded_font);
|
||||||
|
ui->embeddedFont_label_9->setFont(embedded_font);
|
||||||
|
|
||||||
|
QFont system_font{GUIUtil::fixedPitchFont(false)};
|
||||||
|
ui->systemFont_radioButton->setText(ui->systemFont_radioButton->text().arg(QFontInfo(system_font).family()));
|
||||||
|
system_font.setWeight(QFont::Bold);
|
||||||
|
ui->systemFont_label_1->setFont(system_font);
|
||||||
|
ui->systemFont_label_9->setFont(system_font);
|
||||||
|
// Checking the embeddedFont_radioButton automatically unchecks the systemFont_radioButton.
|
||||||
|
ui->systemFont_radioButton->setChecked(true);
|
||||||
|
|
||||||
GUIUtil::handleCloseWindowShortcut(this);
|
GUIUtil::handleCloseWindowShortcut(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -246,6 +260,7 @@ void OptionsDialog::setMapper()
|
|||||||
mapper->addMapping(ui->lang, OptionsModel::Language);
|
mapper->addMapping(ui->lang, OptionsModel::Language);
|
||||||
mapper->addMapping(ui->unit, OptionsModel::DisplayUnit);
|
mapper->addMapping(ui->unit, OptionsModel::DisplayUnit);
|
||||||
mapper->addMapping(ui->thirdPartyTxUrls, OptionsModel::ThirdPartyTxUrls);
|
mapper->addMapping(ui->thirdPartyTxUrls, OptionsModel::ThirdPartyTxUrls);
|
||||||
|
mapper->addMapping(ui->embeddedFont_radioButton, OptionsModel::UseEmbeddedMonospacedFont);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OptionsDialog::setOkButtonState(bool fState)
|
void OptionsDialog::setOkButtonState(bool fState)
|
||||||
|
|||||||
@@ -163,6 +163,12 @@ void OptionsModel::Init(bool resetSettings)
|
|||||||
addOverriddenOption("-lang");
|
addOverriddenOption("-lang");
|
||||||
|
|
||||||
language = settings.value("language").toString();
|
language = settings.value("language").toString();
|
||||||
|
|
||||||
|
if (!settings.contains("UseEmbeddedMonospacedFont")) {
|
||||||
|
settings.setValue("UseEmbeddedMonospacedFont", "true");
|
||||||
|
}
|
||||||
|
m_use_embedded_monospaced_font = settings.value("UseEmbeddedMonospacedFont").toBool();
|
||||||
|
Q_EMIT useEmbeddedMonospacedFontChanged(m_use_embedded_monospaced_font);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Helper function to copy contents from one QSettings to another.
|
/** Helper function to copy contents from one QSettings to another.
|
||||||
@@ -326,6 +332,8 @@ QVariant OptionsModel::data(const QModelIndex & index, int role) const
|
|||||||
return strThirdPartyTxUrls;
|
return strThirdPartyTxUrls;
|
||||||
case Language:
|
case Language:
|
||||||
return settings.value("language");
|
return settings.value("language");
|
||||||
|
case UseEmbeddedMonospacedFont:
|
||||||
|
return m_use_embedded_monospaced_font;
|
||||||
case CoinControlFeatures:
|
case CoinControlFeatures:
|
||||||
return fCoinControlFeatures;
|
return fCoinControlFeatures;
|
||||||
case Prune:
|
case Prune:
|
||||||
@@ -453,6 +461,11 @@ bool OptionsModel::setData(const QModelIndex & index, const QVariant & value, in
|
|||||||
setRestartRequired(true);
|
setRestartRequired(true);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case UseEmbeddedMonospacedFont:
|
||||||
|
m_use_embedded_monospaced_font = value.toBool();
|
||||||
|
settings.setValue("UseEmbeddedMonospacedFont", m_use_embedded_monospaced_font);
|
||||||
|
Q_EMIT useEmbeddedMonospacedFontChanged(m_use_embedded_monospaced_font);
|
||||||
|
break;
|
||||||
case CoinControlFeatures:
|
case CoinControlFeatures:
|
||||||
fCoinControlFeatures = value.toBool();
|
fCoinControlFeatures = value.toBool();
|
||||||
settings.setValue("fCoinControlFeatures", fCoinControlFeatures);
|
settings.setValue("fCoinControlFeatures", fCoinControlFeatures);
|
||||||
|
|||||||
@@ -59,6 +59,7 @@ public:
|
|||||||
DisplayUnit, // BitcoinUnits::Unit
|
DisplayUnit, // BitcoinUnits::Unit
|
||||||
ThirdPartyTxUrls, // QString
|
ThirdPartyTxUrls, // QString
|
||||||
Language, // QString
|
Language, // QString
|
||||||
|
UseEmbeddedMonospacedFont, // bool
|
||||||
CoinControlFeatures, // bool
|
CoinControlFeatures, // bool
|
||||||
ThreadsScriptVerif, // int
|
ThreadsScriptVerif, // int
|
||||||
Prune, // bool
|
Prune, // bool
|
||||||
@@ -84,6 +85,7 @@ public:
|
|||||||
bool getMinimizeOnClose() const { return fMinimizeOnClose; }
|
bool getMinimizeOnClose() const { return fMinimizeOnClose; }
|
||||||
int getDisplayUnit() const { return nDisplayUnit; }
|
int getDisplayUnit() const { return nDisplayUnit; }
|
||||||
QString getThirdPartyTxUrls() const { return strThirdPartyTxUrls; }
|
QString getThirdPartyTxUrls() const { return strThirdPartyTxUrls; }
|
||||||
|
bool getUseEmbeddedMonospacedFont() const { return m_use_embedded_monospaced_font; }
|
||||||
bool getCoinControlFeatures() const { return fCoinControlFeatures; }
|
bool getCoinControlFeatures() const { return fCoinControlFeatures; }
|
||||||
const QString& getOverriddenByCommandLine() { return strOverriddenByCommandLine; }
|
const QString& getOverriddenByCommandLine() { return strOverriddenByCommandLine; }
|
||||||
|
|
||||||
@@ -107,6 +109,7 @@ private:
|
|||||||
QString language;
|
QString language;
|
||||||
int nDisplayUnit;
|
int nDisplayUnit;
|
||||||
QString strThirdPartyTxUrls;
|
QString strThirdPartyTxUrls;
|
||||||
|
bool m_use_embedded_monospaced_font;
|
||||||
bool fCoinControlFeatures;
|
bool fCoinControlFeatures;
|
||||||
/* settings that were overridden by command-line */
|
/* settings that were overridden by command-line */
|
||||||
QString strOverriddenByCommandLine;
|
QString strOverriddenByCommandLine;
|
||||||
@@ -120,6 +123,7 @@ Q_SIGNALS:
|
|||||||
void displayUnitChanged(int unit);
|
void displayUnitChanged(int unit);
|
||||||
void coinControlFeaturesChanged(bool);
|
void coinControlFeaturesChanged(bool);
|
||||||
void showTrayIconChanged(bool);
|
void showTrayIconChanged(bool);
|
||||||
|
void useEmbeddedMonospacedFontChanged(bool);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // BITCOIN_QT_OPTIONSMODEL_H
|
#endif // BITCOIN_QT_OPTIONSMODEL_H
|
||||||
@@ -258,7 +258,8 @@ void OverviewPage::setClientModel(ClientModel *model)
|
|||||||
connect(model, &ClientModel::alertsChanged, this, &OverviewPage::updateAlerts);
|
connect(model, &ClientModel::alertsChanged, this, &OverviewPage::updateAlerts);
|
||||||
updateAlerts(model->getStatusBarWarnings());
|
updateAlerts(model->getStatusBarWarnings());
|
||||||
|
|
||||||
setMonospacedFont(false);
|
connect(model->getOptionsModel(), &OptionsModel::useEmbeddedMonospacedFontChanged, this, &OverviewPage::setMonospacedFont);
|
||||||
|
setMonospacedFont(model->getOptionsModel()->getUseEmbeddedMonospacedFont());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user