diff options
author | Caolán McNamara <caolanm@redhat.com> | 2021-05-20 15:36:42 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2021-05-21 10:49:40 +0200 |
commit | d16ceda55b145cb31882bbf504924aa9103278aa (patch) | |
tree | b75d59c682b6083660d01e33f1a9e673c6f30731 /sd | |
parent | e8578423e9390a07419066d6c350c34fa254095d (diff) |
use toggle instead of click for RadioButton
Change-Id: Ic246c68749f79cc1b25fed08a66fd8a0d57495f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115884
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sd')
-rw-r--r-- | sd/source/ui/dlg/dlgsnap.cxx | 24 | ||||
-rw-r--r-- | sd/source/ui/inc/dlgsnap.hxx | 1 |
2 files changed, 18 insertions, 7 deletions
diff --git a/sd/source/ui/dlg/dlgsnap.cxx b/sd/source/ui/dlg/dlgsnap.cxx index 75dab3897ae7..58a98f32352b 100644 --- a/sd/source/ui/dlg/dlgsnap.cxx +++ b/sd/source/ui/dlg/dlgsnap.cxx @@ -46,9 +46,9 @@ SdSnapLineDlg::SdSnapLineDlg(weld::Window* pWindow, const SfxItemSet& rInAttrs, , m_xRbHorz(m_xBuilder->weld_radio_button("horz")) , m_xBtnDelete(m_xBuilder->weld_button("delete")) { - m_xRbHorz->connect_clicked(LINK(this, SdSnapLineDlg, ClickHdl)); - m_xRbVert->connect_clicked(LINK(this, SdSnapLineDlg, ClickHdl)); - m_xRbPoint->connect_clicked(LINK(this, SdSnapLineDlg, ClickHdl)); + m_xRbHorz->connect_toggled(LINK(this, SdSnapLineDlg, ToggleHdl)); + m_xRbVert->connect_toggled(LINK(this, SdSnapLineDlg, ToggleHdl)); + m_xRbPoint->connect_toggled(LINK(this, SdSnapLineDlg, ToggleHdl)); m_xBtnDelete->connect_clicked(LINK(this, SdSnapLineDlg, ClickHdl)); @@ -105,12 +105,22 @@ SdSnapLineDlg::~SdSnapLineDlg() /** * fills provided item sets with dialog box attributes */ +IMPL_LINK(SdSnapLineDlg, ToggleHdl, weld::ToggleButton&, rBtn, void) +{ + if (!rBtn.get_active()) + return; + if (m_xRbPoint->get_active()) + SetInputFields(true, true); + else if (m_xRbHorz->get_active()) + SetInputFields(false, true); + else if (m_xRbVert->get_active()) + SetInputFields(true, false); +} + IMPL_LINK( SdSnapLineDlg, ClickHdl, weld::Button&, rBtn, void ) { - if (&rBtn == m_xRbPoint.get()) SetInputFields(true, true); - else if (&rBtn == m_xRbHorz.get()) SetInputFields(false, true); - else if (&rBtn == m_xRbVert.get()) SetInputFields(true, false); - else if (&rBtn == m_xBtnDelete.get()) m_xDialog->response(RET_SNAP_DELETE); + if (&rBtn == m_xBtnDelete.get()) + m_xDialog->response(RET_SNAP_DELETE); } /** diff --git a/sd/source/ui/inc/dlgsnap.hxx b/sd/source/ui/inc/dlgsnap.hxx index 1c4aa5fe3d16..e67bc0ec8689 100644 --- a/sd/source/ui/inc/dlgsnap.hxx +++ b/sd/source/ui/inc/dlgsnap.hxx @@ -50,6 +50,7 @@ private: std::unique_ptr<weld::Button> m_xBtnDelete; DECL_LINK(ClickHdl, weld::Button&, void); + DECL_LINK(ToggleHdl, weld::ToggleButton&, void); public: SdSnapLineDlg(weld::Window* pWindow, const SfxItemSet& rInAttrs, ::sd::View const * pView); |