From e702e7972d44a6132536c0da3493025143b2da8a Mon Sep 17 00:00:00 2001 From: Michael Weghorn Date: Fri, 18 Jul 2025 15:07:30 +0200 Subject: [PATCH] tdf#130857 qt weld: Convert accelerators for check/radio buttons Convert the accelerators between the Qt and VCL version as needed. In a WIP branch declaring support for the print dialog, this makes the correct text show up instead of a literal "~All Pages" for a radio button and "Page ba~ckground" for a checkbox. Change-Id: Ic73af5e654b00b4e6dae1d561465604c8e9b46c2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188038 Tested-by: Jenkins Reviewed-by: Michael Weghorn --- vcl/qt5/QtInstanceCheckButton.cxx | 6 ++++-- vcl/qt5/QtInstanceRadioButton.cxx | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/vcl/qt5/QtInstanceCheckButton.cxx b/vcl/qt5/QtInstanceCheckButton.cxx index e92afa8488f8..cdd5fb3e4571 100644 --- a/vcl/qt5/QtInstanceCheckButton.cxx +++ b/vcl/qt5/QtInstanceCheckButton.cxx @@ -40,13 +40,15 @@ TriState QtInstanceCheckButton::get_state() const void QtInstanceCheckButton::set_label(const OUString& rText) { SolarMutexGuard g; - GetQtInstance().RunInMainThread([&] { m_pCheckBox->setText(toQString(rText)); }); + GetQtInstance().RunInMainThread( + [&] { m_pCheckBox->setText(vclToQtStringWithAccelerator(rText)); }); } OUString QtInstanceCheckButton::get_label() const { SolarMutexGuard g; OUString sLabel; - GetQtInstance().RunInMainThread([&] { sLabel = toOUString(m_pCheckBox->text()); }); + GetQtInstance().RunInMainThread( + [&] { sLabel = qtToVclStringWithAccelerator(m_pCheckBox->text()); }); return sLabel; } diff --git a/vcl/qt5/QtInstanceRadioButton.cxx b/vcl/qt5/QtInstanceRadioButton.cxx index e9cf7b658ef5..9c8ba8148535 100644 --- a/vcl/qt5/QtInstanceRadioButton.cxx +++ b/vcl/qt5/QtInstanceRadioButton.cxx @@ -37,13 +37,15 @@ bool QtInstanceRadioButton::get_active() const void QtInstanceRadioButton::set_label(const OUString& rText) { SolarMutexGuard g; - GetQtInstance().RunInMainThread([&] { m_pRadioButton->setText(toQString(rText)); }); + GetQtInstance().RunInMainThread( + [&] { m_pRadioButton->setText(vclToQtStringWithAccelerator(rText)); }); } OUString QtInstanceRadioButton::get_label() const { SolarMutexGuard g; OUString sLabel; - GetQtInstance().RunInMainThread([&] { sLabel = toOUString(m_pRadioButton->text()); }); + GetQtInstance().RunInMainThread( + [&] { sLabel = qtToVclStringWithAccelerator(m_pRadioButton->text()); }); return sLabel; }