From afa4294ef1cc34c3f0991699fcde476d21fa83c4 Mon Sep 17 00:00:00 2001 From: Alex Shvartzkop Date: Mon, 12 Feb 2024 18:31:19 +0300 Subject: [PATCH] Support SetLabel/GetLabel for wxRadioBox/wxRadioButton on wxQt. --- include/wx/qt/radiobox.h | 3 +++ include/wx/qt/radiobut.h | 3 +++ src/qt/radiobox.cpp | 11 +++++++++++ src/qt/radiobut.cpp | 12 ++++++++++++ 4 files changed, 29 insertions(+) diff --git a/include/wx/qt/radiobox.h b/include/wx/qt/radiobox.h index be32fa4a23..ab4d84c050 100644 --- a/include/wx/qt/radiobox.h +++ b/include/wx/qt/radiobox.h @@ -79,6 +79,9 @@ public: virtual void SetSelection(int n) override; virtual int GetSelection() const override; + virtual void SetLabel(const wxString &label) override; + virtual wxString GetLabel() const override; + virtual QWidget *GetHandle() const override; private: diff --git a/include/wx/qt/radiobut.h b/include/wx/qt/radiobut.h index 4beac077e8..5f5a8f86a6 100644 --- a/include/wx/qt/radiobut.h +++ b/include/wx/qt/radiobut.h @@ -35,6 +35,9 @@ public: virtual void SetValue(bool value) override; virtual bool GetValue() const override; + virtual void SetLabel(const wxString &label) override; + virtual wxString GetLabel() const override; + virtual QWidget *GetHandle() const override; private: diff --git a/src/qt/radiobox.cpp b/src/qt/radiobox.cpp index c9e473b80d..5f630d75d7 100644 --- a/src/qt/radiobox.cpp +++ b/src/qt/radiobox.cpp @@ -365,3 +365,14 @@ QWidget *wxRadioBox::GetHandle() const return m_qtGroupBox; } +void wxRadioBox::SetLabel(const wxString& label) +{ + wxControlBase::SetLabel( label ); + + m_qtGroupBox->setTitle( wxQtConvertString( label ) ); +} + +wxString wxRadioBox::GetLabel() const +{ + return wxQtConvertString( m_qtGroupBox->title() ); +} diff --git a/src/qt/radiobut.cpp b/src/qt/radiobut.cpp index 8621d5760b..acae1847b9 100644 --- a/src/qt/radiobut.cpp +++ b/src/qt/radiobut.cpp @@ -164,3 +164,15 @@ QWidget *wxRadioButton::GetHandle() const { return m_qtRadioButton; } + +wxString wxRadioButton::GetLabel() const +{ + return wxQtConvertString( m_qtRadioButton->text() ); +} + +void wxRadioButton::SetLabel(const wxString& label) +{ + wxRadioButtonBase::SetLabel(label); + + m_qtRadioButton->setText( wxQtConvertString(label) ); +}