summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2021-05-20 15:36:42 +0100
committerCaolán McNamara <caolanm@redhat.com>2021-05-21 10:49:40 +0200
commitd16ceda55b145cb31882bbf504924aa9103278aa (patch)
treeb75d59c682b6083660d01e33f1a9e673c6f30731 /sd
parente8578423e9390a07419066d6c350c34fa254095d (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.cxx24
-rw-r--r--sd/source/ui/inc/dlgsnap.hxx1
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);