diff options
Diffstat (limited to 'sw/source/ui/chrdlg/break.cxx')
-rw-r--r-- | sw/source/ui/chrdlg/break.cxx | 45 |
1 files changed, 27 insertions, 18 deletions
diff --git a/sw/source/ui/chrdlg/break.cxx b/sw/source/ui/chrdlg/break.cxx index 03b316895b09..34048c256459 100644 --- a/sw/source/ui/chrdlg/break.cxx +++ b/sw/source/ui/chrdlg/break.cxx @@ -18,6 +18,7 @@ */ #include <vcl/svapp.hxx> +#include <osl/diagnose.h> #include <uitool.hxx> #include <swtypes.hxx> @@ -33,28 +34,31 @@ void SwBreakDlg::rememberResult() { - nKind = 0; + m_nKind = 0; if (m_xLineBtn->get_active()) - nKind = 1; + { + m_nKind = 1; + m_eClear = static_cast<SwLineBreakClear>(m_xLineClearBox->get_active()); + } else if(m_xColumnBtn->get_active()) - nKind = 2; + m_nKind = 2; else if(m_xPageBtn->get_active()) { - nKind = 3; + m_nKind = 3; const int nPos = m_xPageCollBox->get_active(); if (nPos != 0 && nPos != -1) { m_aTemplate = m_xPageCollBox->get_active_text(); - oPgNum.reset(); + m_oPgNum.reset(); if (m_xPageNumBox->get_active()) { - oPgNum = static_cast<sal_uInt16>(m_xPageNumEdit->get_value()); + m_oPgNum = o3tl::narrowing<sal_uInt16>(m_xPageNumEdit->get_value()); } } } } -IMPL_LINK_NOARG(SwBreakDlg, ToggleHdl, weld::ToggleButton&, void) +IMPL_LINK_NOARG(SwBreakDlg, ToggleHdl, weld::Toggleable&, void) { CheckEnable(); } @@ -65,7 +69,7 @@ IMPL_LINK_NOARG(SwBreakDlg, ChangeHdl, weld::ComboBox&, void) } // Handler for Change Page Number -IMPL_LINK(SwBreakDlg, PageNumHdl, weld::ToggleButton&, rBox, void) +IMPL_LINK(SwBreakDlg, PageNumHdl, weld::Toggleable&, rBox, void) { if (rBox.get_active()) m_xPageNumEdit->set_value(1); @@ -93,9 +97,9 @@ IMPL_LINK_NOARG(SwBreakDlg, OkHdl, weld::Button&, void) // position 0 says 'Without'. const SwPageDesc *pPageDesc; if (nPos != 0 && nPos != -1) - pPageDesc = rSh.FindPageDescByName(m_xPageCollBox->get_active_text(), true); + pPageDesc = m_rSh.FindPageDescByName(m_xPageCollBox->get_active_text(), true); else - pPageDesc = &rSh.GetPageDesc(rSh.GetCurPageDesc()); + pPageDesc = &m_rSh.GetPageDesc(m_rSh.GetCurPageDesc()); OSL_ENSURE(pPageDesc, "Page description not found."); const sal_uInt16 nUserPage = sal_uInt16(m_xPageNumEdit->get_value()); @@ -124,6 +128,8 @@ IMPL_LINK_NOARG(SwBreakDlg, OkHdl, weld::Button&, void) SwBreakDlg::SwBreakDlg(weld::Window *pParent, SwWrtShell &rS) : GenericDialogController(pParent, "modules/swriter/ui/insertbreak.ui", "BreakDialog") , m_xLineBtn(m_xBuilder->weld_radio_button("linerb")) + , m_xLineClearText(m_xBuilder->weld_label("clearft")) + , m_xLineClearBox(m_xBuilder->weld_combo_box("clearlb")) , m_xColumnBtn(m_xBuilder->weld_radio_button("columnrb")) , m_xPageBtn(m_xBuilder->weld_radio_button("pagerb")) , m_xPageCollText(m_xBuilder->weld_label("styleft")) @@ -131,11 +137,11 @@ SwBreakDlg::SwBreakDlg(weld::Window *pParent, SwWrtShell &rS) , m_xPageNumBox(m_xBuilder->weld_check_button("pagenumcb")) , m_xPageNumEdit(m_xBuilder->weld_spin_button("pagenumsb")) , m_xOkBtn(m_xBuilder->weld_button("ok")) - , rSh(rS) - , nKind(0) - , bHtmlMode(0 != ::GetHtmlMode(rS.GetView().GetDocShell())) + , m_rSh(rS) + , m_nKind(0) + , m_bHtmlMode(0 != ::GetHtmlMode(rS.GetView().GetDocShell())) { - Link<weld::ToggleButton&,void> aLk = LINK(this, SwBreakDlg, ToggleHdl); + Link<weld::Toggleable&,void> aLk = LINK(this, SwBreakDlg, ToggleHdl); m_xPageBtn->connect_toggled(aLk); m_xLineBtn->connect_toggled(aLk); m_xColumnBtn->connect_toggled(aLk); @@ -146,10 +152,10 @@ SwBreakDlg::SwBreakDlg(weld::Window *pParent, SwWrtShell &rS) m_xPageNumEdit->connect_value_changed(LINK(this, SwBreakDlg, PageNumModifyHdl)); // Insert page description to Listbox - const size_t nCount = rSh.GetPageDescCnt(); + const size_t nCount = m_rSh.GetPageDescCnt(); for (size_t i = 0; i < nCount; ++i) { - const SwPageDesc &rPageDesc = rSh.GetPageDesc(i); + const SwPageDesc &rPageDesc = m_rSh.GetPageDesc(i); ::InsertStringSorted("", rPageDesc.GetName(), *m_xPageCollBox, 1 ); } @@ -171,13 +177,13 @@ SwBreakDlg::SwBreakDlg(weld::Window *pParent, SwWrtShell &rS) void SwBreakDlg::CheckEnable() { bool bEnable = true; - if ( bHtmlMode ) + if ( m_bHtmlMode ) { m_xColumnBtn->set_sensitive(false); m_xPageCollBox->set_sensitive(false); bEnable = false; } - else if(rSh.GetFrameType(nullptr,true) + else if(m_rSh.GetFrameType(nullptr,true) & (FrameTypeFlags::FLY_ANY | FrameTypeFlags::HEADER | FrameTypeFlags::FOOTER | FrameTypeFlags::FOOTNOTE)) { m_xPageBtn->set_sensitive(false); @@ -188,6 +194,9 @@ void SwBreakDlg::CheckEnable() const bool bPage = m_xPageBtn->get_active(); m_xPageCollText->set_sensitive(bPage); m_xPageCollBox->set_sensitive(bPage); + bool bLine = m_xLineBtn->get_active(); + m_xLineClearText->set_sensitive(bLine); + m_xLineClearBox->set_sensitive(bLine); bEnable &= bPage; if ( bEnable ) |