mirror of
https://gitlab.com/mbunkus/mkvtoolnix.git
synced 2024-10-22 07:21:21 +00:00
GUI: add option for disabling all tooltips
This commit is contained in:
parent
bbfda03435
commit
ec62a6d1c2
1
NEWS.md
1
NEWS.md
@ -5,6 +5,7 @@
|
||||
* MKVToolNix GUI: added an option in the preferences to turn on eliding text
|
||||
on tab headers. If enabled, tab names will be shortened so that all tab
|
||||
headers fit into the window's width. Implements #2768.
|
||||
* MKVToolNix GUI: added an option in the preferences to disable all tooltips.
|
||||
|
||||
## Bug fixes
|
||||
|
||||
|
@ -114,12 +114,15 @@ Tool::toolShown() {
|
||||
|
||||
void
|
||||
Tool::retranslateUi() {
|
||||
auto buttonToolTip = Util::Settings::get().m_uiDisableToolTips ? Q("") : App::translate("CloseButton", "Close Tab");
|
||||
|
||||
ui->retranslateUi(this);
|
||||
|
||||
for (auto idx = 0, numTabs = ui->editors->count(); idx < numTabs; ++idx) {
|
||||
static_cast<Tab *>(ui->editors->widget(idx))->retranslateUi();
|
||||
auto button = Util::tabWidgetCloseTabButton(*ui->editors, idx);
|
||||
if (button)
|
||||
button->setToolTip(App::translate("CloseButton", "Close Tab"));
|
||||
button->setToolTip(buttonToolTip);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -147,6 +147,13 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="cbGuiDisableToolTips">
|
||||
<property name="text">
|
||||
<string>Disable &tooltips</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="cbGuiCheckForUpdates">
|
||||
<property name="text">
|
||||
@ -2052,6 +2059,12 @@
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>mtx::gui::Util::BasicTabWidget</class>
|
||||
<extends>QTabWidget</extends>
|
||||
<header>mkvtoolnix-gui/util/basic_tab_widget.h</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>mtx::gui::Util::LanguageComboBox</class>
|
||||
<extends>QComboBox</extends>
|
||||
@ -2073,12 +2086,6 @@
|
||||
<extends>QComboBox</extends>
|
||||
<header>mkvtoolnix-gui/util/country_combo_box.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>mtx::gui::Util::BasicTabWidget</class>
|
||||
<extends>QTabWidget</extends>
|
||||
<header>mkvtoolnix-gui/util/basic_tab_widget.h</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>mtx::gui::Info::JobSettingsWidget</class>
|
||||
<extends>QWidget</extends>
|
||||
@ -2099,6 +2106,7 @@
|
||||
<tabstop>sbGuiFontPointSize</tabstop>
|
||||
<tabstop>cbGuiDisableHighDPIScaling</tabstop>
|
||||
<tabstop>cbGuiDisableDarkStyleSheet</tabstop>
|
||||
<tabstop>cbGuiDisableToolTips</tabstop>
|
||||
<tabstop>cbGuiCheckForUpdates</tabstop>
|
||||
<tabstop>cbGuiTabPositions</tabstop>
|
||||
<tabstop>cbGuiElideTabHeaderLabels</tabstop>
|
||||
|
@ -107,12 +107,15 @@ Tool::toolShown() {
|
||||
|
||||
void
|
||||
Tool::retranslateUi() {
|
||||
auto buttonToolTip = Util::Settings::get().m_uiDisableToolTips ? Q("") : App::translate("CloseButton", "Close Tab");
|
||||
|
||||
ui->retranslateUi(this);
|
||||
|
||||
for (auto idx = 0, numTabs = ui->editors->count(); idx < numTabs; ++idx) {
|
||||
static_cast<Tab *>(ui->editors->widget(idx))->retranslateUi();
|
||||
auto button = Util::tabWidgetCloseTabButton(*ui->editors, idx);
|
||||
if (button)
|
||||
button->setToolTip(App::translate("CloseButton", "Close Tab"));
|
||||
button->setToolTip(buttonToolTip);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -93,13 +93,15 @@ Tool::toolShown() {
|
||||
|
||||
void
|
||||
Tool::retranslateUi() {
|
||||
auto buttonToolTip = Util::Settings::get().m_uiDisableToolTips ? Q("") : App::translate("CloseButton", "Close Tab");
|
||||
|
||||
ui->retranslateUi(this);
|
||||
|
||||
for (auto idx = 0, numTabs = ui->infos->count(); idx < numTabs; ++idx) {
|
||||
static_cast<Tab *>(ui->infos->widget(idx))->retranslateUi();
|
||||
auto button = Util::tabWidgetCloseTabButton(*ui->infos, idx);
|
||||
if (button)
|
||||
button->setToolTip(App::translate("CloseButton", "Close Tab"));
|
||||
button->setToolTip(buttonToolTip);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -482,7 +482,7 @@ MainWindow::editPreferencesAndShowPage(PreferencesDialog::Page page) {
|
||||
|
||||
dlg.save();
|
||||
|
||||
if (dlg.uiLocaleChanged())
|
||||
if (dlg.uiLocaleChanged() || dlg.disableToolTipsChanged())
|
||||
App::instance()->initializeLocale();
|
||||
|
||||
if (dlg.uiLocaleChanged() || dlg.probeRangePercentageChanged())
|
||||
|
@ -36,6 +36,7 @@ PreferencesDialog::PreferencesDialog(QWidget *parent,
|
||||
, ui{new Ui::PreferencesDialog}
|
||||
, m_cfg(Util::Settings::get())
|
||||
, m_previousUiLocale{m_cfg.m_uiLocale}
|
||||
, m_previousDisableToolTips{m_cfg.m_uiDisableToolTips}
|
||||
, m_previousProbeRangePercentage{m_cfg.m_probeRangePercentage}
|
||||
, m_ignoreNextCurrentChange{}
|
||||
{
|
||||
@ -48,6 +49,7 @@ PreferencesDialog::PreferencesDialog(QWidget *parent,
|
||||
Util::restoreWidgetGeometry(this);
|
||||
|
||||
// GUI page
|
||||
ui->cbGuiDisableToolTips->setChecked(m_cfg.m_uiDisableToolTips);
|
||||
ui->cbGuiCheckForUpdates->setChecked(m_cfg.m_checkForUpdates);
|
||||
ui->cbGuiShowToolSelector->setChecked(m_cfg.m_showToolSelector);
|
||||
ui->cbGuiShowMoveUpDownButtons->setChecked(m_cfg.m_showMoveUpDownButtons);
|
||||
@ -136,6 +138,12 @@ PreferencesDialog::uiLocaleChanged()
|
||||
return m_previousUiLocale != m_cfg.m_uiLocale;
|
||||
}
|
||||
|
||||
bool
|
||||
PreferencesDialog::disableToolTipsChanged()
|
||||
const {
|
||||
return m_previousDisableToolTips != m_cfg.m_uiDisableToolTips;
|
||||
}
|
||||
|
||||
bool
|
||||
PreferencesDialog::probeRangePercentageChanged()
|
||||
const {
|
||||
@ -221,12 +229,16 @@ PreferencesDialog::setupPageSelector(Page pageToShow) {
|
||||
|
||||
void
|
||||
PreferencesDialog::setupToolTips() {
|
||||
if (m_cfg.m_uiDisableToolTips)
|
||||
return;
|
||||
|
||||
// GUI page
|
||||
Util::setToolTip(ui->cbGuiDisableHighDPIScaling,
|
||||
Q("%1 %2")
|
||||
.arg(QY("If enabled, automatic scaling for high DPI displays will be disabled."))
|
||||
.arg(QY("Changes to this option will only take effect the next time the application is started.")));
|
||||
|
||||
Util::setToolTip(ui->cbGuiDisableToolTips, QY("If checked, the GUI will not show helpful usage tips in popup windows while hovering over a control — such as this one."));
|
||||
Util::setToolTip(ui->cbGuiDisableDarkStyleSheet,
|
||||
Q("%1 %2")
|
||||
.arg(QY("By default the GUI will start up with a dark color scheme if the color scheme in Windows is set to dark mode."))
|
||||
@ -809,6 +821,7 @@ PreferencesDialog::save() {
|
||||
m_cfg.m_uiFontPointSize = ui->sbGuiFontPointSize->value();
|
||||
m_cfg.m_uiDisableHighDPIScaling = ui->cbGuiDisableHighDPIScaling->isChecked();
|
||||
m_cfg.m_uiDisableDarkStyleSheet = ui->cbGuiDisableDarkStyleSheet->isChecked();
|
||||
m_cfg.m_uiDisableToolTips = ui->cbGuiDisableToolTips->isChecked();
|
||||
m_cfg.m_checkForUpdates = ui->cbGuiCheckForUpdates->isChecked();
|
||||
m_cfg.m_showToolSelector = ui->cbGuiShowToolSelector->isChecked();
|
||||
m_cfg.m_showMoveUpDownButtons = ui->cbGuiShowMoveUpDownButtons->isChecked();
|
||||
|
@ -43,6 +43,7 @@ protected:
|
||||
std::unique_ptr<Ui::PreferencesDialog> ui;
|
||||
Util::Settings &m_cfg;
|
||||
QString const m_previousUiLocale;
|
||||
bool const m_previousDisableToolTips;
|
||||
double m_previousProbeRangePercentage;
|
||||
QMap<Page, int> m_pageIndexes;
|
||||
bool m_ignoreNextCurrentChange;
|
||||
@ -53,6 +54,7 @@ public:
|
||||
|
||||
void save();
|
||||
bool uiLocaleChanged() const;
|
||||
bool disableToolTipsChanged() const;
|
||||
bool probeRangePercentageChanged() const;
|
||||
|
||||
public slots:
|
||||
|
@ -133,13 +133,15 @@ Tool::toolShown() {
|
||||
|
||||
void
|
||||
Tool::retranslateUi() {
|
||||
auto buttonToolTip = Util::Settings::get().m_uiDisableToolTips ? Q("") : App::translate("CloseButton", "Close Tab");
|
||||
|
||||
ui->retranslateUi(this);
|
||||
|
||||
for (auto idx = 0, numTabs = ui->merges->count(); idx < numTabs; ++idx) {
|
||||
static_cast<Tab *>(ui->merges->widget(idx))->retranslateUi();
|
||||
auto button = Util::tabWidgetCloseTabButton(*ui->merges, idx);
|
||||
if (button)
|
||||
button->setToolTip(App::translate("CloseButton", "Close Tab"));
|
||||
button->setToolTip(buttonToolTip);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -365,6 +365,7 @@ Settings::load() {
|
||||
#endif
|
||||
m_uiDisableHighDPIScaling = reg.value(s_valUiDisableHighDPIScaling).toBool();
|
||||
m_uiDisableDarkStyleSheet = reg.value(s_valUiDisableDarkStyleSheet).toBool();
|
||||
m_uiDisableToolTips = reg.value(s_valUiDisableToolTips).toBool();
|
||||
m_uiFontFamily = reg.value(s_valUiFontFamily, defaultFont.family()).toString();
|
||||
m_uiFontPointSize = reg.value(s_valUiFontPointSize, defaultFont.pointSize()).toInt();
|
||||
|
||||
@ -705,6 +706,7 @@ Settings::save()
|
||||
reg.setValue(s_valUiLocale, m_uiLocale);
|
||||
reg.setValue(s_valUiDisableHighDPIScaling, m_uiDisableHighDPIScaling);
|
||||
reg.setValue(s_valUiDisableDarkStyleSheet, m_uiDisableDarkStyleSheet);
|
||||
reg.setValue(s_valUiDisableToolTips, m_uiDisableToolTips);
|
||||
reg.setValue(s_valUiFontFamily, m_uiFontFamily);
|
||||
reg.setValue(s_valUiFontPointSize, m_uiFontPointSize);
|
||||
|
||||
|
@ -178,7 +178,7 @@ public:
|
||||
bool m_useDefaultJobDescription, m_showOutputOfAllJobs, m_switchToJobOutputAfterStarting, m_resetJobWarningErrorCountersOnExit;
|
||||
bool m_removeOutputFileOnJobFailure;
|
||||
|
||||
bool m_uiDisableHighDPIScaling, m_uiDisableDarkStyleSheet;
|
||||
bool m_uiDisableHighDPIScaling, m_uiDisableDarkStyleSheet, m_uiDisableToolTips;
|
||||
bool m_checkForUpdates;
|
||||
QDateTime m_lastUpdateCheck;
|
||||
|
||||
|
@ -109,6 +109,7 @@ char const * const s_valTrackInfo = "trackInfo";
|
||||
char const * const s_valType = "type";
|
||||
char const * const s_valUiDisableDarkStyleSheet = "uiDisableDarkStyleSheet";
|
||||
char const * const s_valUiDisableHighDPIScaling = "uiDisableHighDPIScaling";
|
||||
char const * const s_valUiDisableToolTips = "uiDisableToolTips";
|
||||
char const * const s_valUiFontFamily = "uiFontFamily";
|
||||
char const * const s_valUiFontPointSize = "uiFontPointSize";
|
||||
char const * const s_valUiLocale = "uiLocale";
|
||||
|
@ -101,6 +101,11 @@ buttonForRole(QDialogButtonBox *box,
|
||||
void
|
||||
setToolTip(QWidget *widget,
|
||||
QString const &toolTip) {
|
||||
if (Util::Settings::get().m_uiDisableToolTips) {
|
||||
widget->setToolTip({});
|
||||
return;
|
||||
}
|
||||
|
||||
// Qt up to and including 5.3 only word-wraps tool tips
|
||||
// automatically if the format is recognized to be Rich Text. See
|
||||
// http://doc.qt.io/qt-5/qstandarditem.html
|
||||
|
@ -66,6 +66,8 @@ Tool::setupActions() {
|
||||
|
||||
void
|
||||
Tool::retranslateUi() {
|
||||
auto buttonToolTip = Util::Settings::get().m_uiDisableToolTips ? Q("") : App::translate("CloseButton", "Close Tab");
|
||||
|
||||
ui->retranslateUi(this);
|
||||
ui->widgets->setTabText(0, QY("Current job"));
|
||||
|
||||
@ -74,7 +76,7 @@ Tool::retranslateUi() {
|
||||
for (auto idx = 0, numTabs = ui->widgets->count(); idx < numTabs; ++idx) {
|
||||
auto button = Util::tabWidgetCloseTabButton(*ui->widgets, idx);
|
||||
if (button)
|
||||
button->setToolTip(App::translate("CloseButton", "Close Tab"));
|
||||
button->setToolTip(buttonToolTip);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user