diff options
author | Caolán McNamara <caolanm@redhat.com> | 2020-06-05 16:11:39 +0100 |
---|---|---|
committer | Szymon Kłos <szymon.klos@collabora.com> | 2020-11-30 18:19:52 +0100 |
commit | 44f5cdc14537d244c254f7201f2f8da483cc4727 (patch) | |
tree | bc48152222c91d0c93617b3a8836dae96af72e8e /sw | |
parent | 3826d521852f408f4679837d94288d97ab13e0b4 (diff) |
rework treeview initial toggle button col to be like expander col
cause this assumption is baked into the vcl one making it hard
to adapt remaining cases
Change-Id: I75dd5264c65b1ffbf4d26c9a86f6d4d08b400d90
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95622
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106874
Tested-by: Szymon Kłos <szymon.klos@collabora.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Diffstat (limited to 'sw')
-rw-r--r-- | sw/source/ui/config/optcomp.cxx | 24 | ||||
-rw-r--r-- | sw/source/ui/config/optload.cxx | 34 | ||||
-rw-r--r-- | sw/source/ui/index/cnttab.cxx | 24 | ||||
-rw-r--r-- | sw/source/uibase/inc/optload.hxx | 4 |
4 files changed, 37 insertions, 49 deletions
diff --git a/sw/source/ui/config/optcomp.cxx b/sw/source/ui/config/optcomp.cxx index 8c2c821570ad..b46cc63af6df 100644 --- a/sw/source/ui/config/optcomp.cxx +++ b/sw/source/ui/config/optcomp.cxx @@ -66,10 +66,8 @@ SwCompatibilityOptPage::SwCompatibilityOptPage(weld::Container* pPage, weld::Dia , m_xGlobalOptionsCLB(m_xBuilder->weld_tree_view("globaloptioncheckbox")) , m_xDefaultPB(m_xBuilder->weld_button("default")) { - std::vector<int> aWidths; - aWidths.push_back(m_xOptionsLB->get_checkbox_column_width()); - m_xOptionsLB->set_column_fixed_widths(aWidths); - m_xGlobalOptionsCLB->set_column_fixed_widths(aWidths); + m_xOptionsLB->enable_toggle_buttons(weld::ColumnToggleType::Check); + m_xGlobalOptionsCLB->enable_toggle_buttons(weld::ColumnToggleType::Check); int nPos = 0; for (int i = static_cast<int>(SvtCompatibilityEntry::Index::Module) + 1; @@ -80,8 +78,8 @@ SwCompatibilityOptPage::SwCompatibilityOptPage(weld::Container* pPage, weld::Dia const OUString sEntry = m_xFormattingLB->get_text(nCoptIdx); m_xOptionsLB->append(); - m_xOptionsLB->set_toggle(nPos, TRISTATE_FALSE, 0); - m_xOptionsLB->set_text(nPos, sEntry, 1); + m_xOptionsLB->set_toggle(nPos, TRISTATE_FALSE); + m_xOptionsLB->set_text(nPos, sEntry, 0); ++nPos; } @@ -95,8 +93,8 @@ SwCompatibilityOptPage::SwCompatibilityOptPage(weld::Container* pPage, weld::Dia m_xGlobalOptionsCLB->append(); const bool bChecked = m_aViewConfigItem.HasMSOCompatibleFormsMenu(); - m_xGlobalOptionsCLB->set_toggle(0, bChecked ? TRISTATE_TRUE : TRISTATE_FALSE, 0); - m_xGlobalOptionsCLB->set_text(0, m_xGlobalOptionsLB->get_text(0), 1); + m_xGlobalOptionsCLB->set_toggle(0, bChecked ? TRISTATE_TRUE : TRISTATE_FALSE); + m_xGlobalOptionsCLB->set_text(0, m_xGlobalOptionsLB->get_text(0), 0); m_xGlobalOptionsLB->clear(); @@ -291,7 +289,7 @@ IMPL_LINK_NOARG(SwCompatibilityOptPage, UseAsDefaultHdl, weld::Button&, void) const sal_Int32 nCount = m_xOptionsLB->n_children(); for ( sal_Int32 i = 0; i < nCount; ++i ) { - bool bChecked = m_xOptionsLB->get_toggle(i, 0); + bool bChecked = m_xOptionsLB->get_toggle(i); int nCoptIdx = i + 2; /* Consider "Name" & "Module" indexes */ pItem->setValue<bool>( SvtCompatibilityEntry::Index(nCoptIdx), bChecked ); @@ -328,7 +326,7 @@ void SwCompatibilityOptPage::SetCurrentOptions( sal_uLong nOptions ) value = TRISTATE_INDET; // 3 values possible here } } - m_xOptionsLB->set_toggle(i, value, 0); + m_xOptionsLB->set_toggle(i, bChecked ? TRISTATE_TRUE : TRISTATE_FALSE); nOptions = nOptions >> 1; } } @@ -383,7 +381,7 @@ bool SwCompatibilityOptPage::FillItemSet( SfxItemSet* ) for (int i = 0; i < nCount; ++i) { - TriState const current = m_xOptionsLB->get_toggle(i, 0); + TriState const current = m_xOptionsLB->get_toggle(i); TriState saved = ((nSavedOptions & 0x00000001) == 0x00000001) ? TRISTATE_TRUE : TRISTATE_FALSE; if (i == int(SvtCompatibilityEntry::Index::AddTableSpacing) - 2) { // hack: map 2 bools to 1 tristate @@ -474,7 +472,7 @@ bool SwCompatibilityOptPage::FillItemSet( SfxItemSet* ) if ( bModified ) WriteOptions(); - bool bNewMSFormsMenuOption = m_xGlobalOptionsCLB->get_toggle(0, 0); + bool bNewMSFormsMenuOption = m_xGlobalOptionsCLB->get_toggle(0); if (m_bSavedMSFormsMenuOption != bNewMSFormsMenuOption) { m_aViewConfigItem.SetMSOCompatibleFormsMenu(bNewMSFormsMenuOption); @@ -503,7 +501,7 @@ void SwCompatibilityOptPage::Reset( const SfxItemSet* ) SetCurrentOptions( nOptions ); m_nSavedOptions = nOptions; - m_xGlobalOptionsCLB->set_toggle(0, m_aViewConfigItem.HasMSOCompatibleFormsMenu() ? TRISTATE_TRUE : TRISTATE_FALSE, 0); + m_xGlobalOptionsCLB->set_toggle(0, m_aViewConfigItem.HasMSOCompatibleFormsMenu() ? TRISTATE_TRUE : TRISTATE_FALSE); m_bSavedMSFormsMenuOption = m_aViewConfigItem.HasMSOCompatibleFormsMenu(); } diff --git a/sw/source/ui/config/optload.cxx b/sw/source/ui/config/optload.cxx index 02f36d51c149..a555017dcb52 100644 --- a/sw/source/ui/config/optload.cxx +++ b/sw/source/ui/config/optload.cxx @@ -465,9 +465,7 @@ SwCaptionOptPage::SwCaptionOptPage(weld::Container* pPage, weld::DialogControlle { m_xCategoryBox->connect_entry_insert_text(LINK(this, SwCaptionOptPage, TextFilterHdl)); - std::vector<int> aWidths; - aWidths.push_back(m_xCheckLB->get_checkbox_column_width()); - m_xCheckLB->set_column_fixed_widths(aWidths); + m_xCheckLB->enable_toggle_buttons(weld::ColumnToggleType::Check); SwStyleNameMapper::FillUIName(RES_POOLCOLL_LABEL_ABB, m_sIllustration); SwStyleNameMapper::FillUIName(RES_POOLCOLL_LABEL_TABLE, m_sTable); @@ -560,7 +558,7 @@ bool SwCaptionOptPage::FillItemSet( SfxItemSet* ) int nCheckCount = 0; for (int i = 0, nCount = m_xCheckLB->n_children(); i < nCount; ++i) { - if (m_xCheckLB->get_toggle(i, 0) == TRISTATE_TRUE) + if (m_xCheckLB->get_toggle(i) == TRISTATE_TRUE) ++nCheckCount; InsCaptionOpt* pData = reinterpret_cast<InsCaptionOpt*>(m_xCheckLB->get_id(i).toInt64()); bRet |= pModOpt->SetCapOption(bHTMLMode, pData); @@ -588,16 +586,16 @@ void SwCaptionOptPage::Reset( const SfxItemSet* rSet) // Writer objects int nPos = 0; m_xCheckLB->append(); - m_xCheckLB->set_toggle(nPos, TRISTATE_FALSE, 0); - m_xCheckLB->set_text(nPos, m_sSWTable, 1); + m_xCheckLB->set_toggle(nPos, TRISTATE_FALSE); + m_xCheckLB->set_text(nPos, m_sSWTable, 0); SetOptions(nPos++, TABLE_CAP); m_xCheckLB->append(); - m_xCheckLB->set_toggle(nPos, TRISTATE_FALSE, 0); - m_xCheckLB->set_text(nPos, m_sSWFrame, 1); + m_xCheckLB->set_toggle(nPos, TRISTATE_FALSE); + m_xCheckLB->set_text(nPos, m_sSWFrame, 0); SetOptions(nPos++, FRAME_CAP); m_xCheckLB->append(); - m_xCheckLB->set_toggle(nPos, TRISTATE_FALSE, 0); - m_xCheckLB->set_text(nPos, m_sSWGraphic, 1); + m_xCheckLB->set_toggle(nPos, TRISTATE_FALSE); + m_xCheckLB->set_text(nPos, m_sSWGraphic, 0); SetOptions(nPos++, GRAPHIC_CAP); // get Productname and -version @@ -621,8 +619,8 @@ void SwCaptionOptPage::Reset( const SfxItemSet* rSet) // don't show product version sClass = sClass.replaceFirst( sComplete, sWithoutVersion ); m_xCheckLB->append(); - m_xCheckLB->set_toggle(nPos, TRISTATE_FALSE, 0); - m_xCheckLB->set_text(nPos, sClass, 1); + m_xCheckLB->set_toggle(nPos, TRISTATE_FALSE); + m_xCheckLB->set_text(nPos, sClass, 0); SetOptions( nPos++, OLE_CAP, &rOleId ); } m_xLbCaptionOrder->set_active( @@ -641,7 +639,7 @@ void SwCaptionOptPage::SetOptions(const sal_uLong nPos, { InsCaptionOpt* pIns = new InsCaptionOpt(*pOpt); m_xCheckLB->set_id(nPos, OUString::number(reinterpret_cast<sal_Int64>(pIns))); - m_xCheckLB->set_toggle(nPos, pOpt->UseCaption() ? TRISTATE_TRUE : TRISTATE_FALSE, 0); + m_xCheckLB->set_toggle(nPos, pOpt->UseCaption() ? TRISTATE_TRUE : TRISTATE_FALSE); } else { @@ -663,7 +661,7 @@ void SwCaptionOptPage::UpdateEntry(int nSelEntry) { if (nSelEntry != -1) { - bool bChecked = m_xCheckLB->get_toggle(nSelEntry, 0) == TRISTATE_TRUE; + bool bChecked = m_xCheckLB->get_toggle(nSelEntry) == TRISTATE_TRUE; m_xSettingsGroup->set_sensitive(bChecked); bool bNumSep = bChecked && m_xLbCaptionOrder->get_active() == 1; @@ -774,9 +772,9 @@ IMPL_LINK_NOARG(SwCaptionOptPage, ShowEntryHdl, weld::TreeView&, void) m_nPrevSelectedEntry = m_xCheckLB->get_selected_index(); } -IMPL_LINK(SwCaptionOptPage, ToggleEntryHdl, const row_col&, rRowCol, void) +IMPL_LINK(SwCaptionOptPage, ToggleEntryHdl, const weld::TreeView::iter_col&, rRowCol, void) { - UpdateEntry(rRowCol.first); + UpdateEntry(m_xCheckLB->get_iter_index_in_parent(rRowCol.first)); } void SwCaptionOptPage::SaveEntry(int nEntry) @@ -786,7 +784,7 @@ void SwCaptionOptPage::SaveEntry(int nEntry) InsCaptionOpt* pOpt = reinterpret_cast<InsCaptionOpt*>(m_xCheckLB->get_id(nEntry).toInt64()); - pOpt->UseCaption() = m_xCheckLB->get_toggle(nEntry, 0) == TRISTATE_TRUE; + pOpt->UseCaption() = m_xCheckLB->get_toggle(nEntry) == TRISTATE_TRUE; const OUString aName(m_xCategoryBox->get_active_text()); if (aName == m_sNone) pOpt->SetCategory(""); @@ -851,7 +849,7 @@ IMPL_LINK(SwCaptionOptPage, OrderHdl, weld::ComboBox&, rBox, void) bool bChecked = false; if (nSelEntry != -1) { - bChecked = m_xCheckLB->get_toggle(nSelEntry, 0) == TRISTATE_TRUE; + bChecked = m_xCheckLB->get_toggle(nSelEntry) == TRISTATE_TRUE; } int nPos = rBox.get_active(); diff --git a/sw/source/ui/index/cnttab.cxx b/sw/source/ui/index/cnttab.cxx index 520720b30dbd..0b3ccecd8f84 100644 --- a/sw/source/ui/index/cnttab.cxx +++ b/sw/source/ui/index/cnttab.cxx @@ -488,8 +488,7 @@ class SwAddStylesDlg_Impl : public SfxDialogController DECL_LINK(LeftRightHdl, weld::Button&, void); DECL_LINK(KeyInput, const KeyEvent&, bool); DECL_LINK(TreeSizeAllocHdl, const Size&, void); - typedef std::pair<int, int> row_col; - DECL_LINK(RadioToggleOnHdl, const row_col&, void); + DECL_LINK(RadioToggleOnHdl, const weld::TreeView::iter_col&, void); public: SwAddStylesDlg_Impl(weld::Window* pParent, SwWrtShell const & rWrtSh, OUString rStringArr[]); @@ -507,12 +506,9 @@ SwAddStylesDlg_Impl::SwAddStylesDlg_Impl(weld::Window* pParent, m_xOk->connect_clicked(LINK(this, SwAddStylesDlg_Impl, OkHdl)); m_xLeftPB->connect_clicked(LINK(this, SwAddStylesDlg_Impl, LeftRightHdl)); m_xRightPB->connect_clicked(LINK(this, SwAddStylesDlg_Impl, LeftRightHdl)); - m_xHeaderTree->connect_size_allocate(LINK(this, SwAddStylesDlg_Impl, TreeSizeAllocHdl)); - std::vector<int> aRadioColumns; - for (sal_uInt16 i = 0; i <= MAXLEVEL; ++i) - aRadioColumns.push_back(i + 1); - m_xHeaderTree->set_toggle_columns_as_radio(aRadioColumns); + m_xHeaderTree->connect_size_allocate(LINK(this, SwAddStylesDlg_Impl, TreeSizeAllocHdl)); + m_xHeaderTree->enable_toggle_buttons(weld::ColumnToggleType::Radio); m_xHeaderTree->connect_toggled(LINK(this, SwAddStylesDlg_Impl, RadioToggleOnHdl)); std::vector<int> aWidths; @@ -604,7 +600,7 @@ IMPL_LINK(SwAddStylesDlg_Impl, TreeSizeAllocHdl, const Size&, rSize, void) m_xHeaderTree->set_column_fixed_widths(aWidths); } -IMPL_LINK(SwAddStylesDlg_Impl, RadioToggleOnHdl, const row_col&, rRowCol, void) +IMPL_LINK(SwAddStylesDlg_Impl, RadioToggleOnHdl, const weld::TreeView::iter_col&, rRowCol, void) { for (sal_uInt16 i = 0; i <= MAXLEVEL; ++i) { @@ -757,16 +753,14 @@ SwTOXSelectTabPage::SwTOXSelectTabPage(weld::Container* pPage, weld::DialogContr sAddStyleContent = m_xAddStylesCB->get_label(); - std::vector<int> aWidths; - aWidths.push_back(m_xFromObjCLB->get_checkbox_column_width()); - m_xFromObjCLB->set_column_fixed_widths(aWidths); + m_xFromObjCLB->enable_toggle_buttons(weld::ColumnToggleType::Check); for (size_t i = 0; i < SAL_N_ELEMENTS(RES_SRCTYPES); ++i) { OUString sId(OUString::number(static_cast<sal_uInt32>(RES_SRCTYPES[i].second))); m_xFromObjCLB->append(); - m_xFromObjCLB->set_toggle(i, TRISTATE_FALSE, 0); - m_xFromObjCLB->set_text(i, SwResId(RES_SRCTYPES[i].first), 1); + m_xFromObjCLB->set_toggle(i, TRISTATE_FALSE); + m_xFromObjCLB->set_text(i, SwResId(RES_SRCTYPES[i].first), 0); m_xFromObjCLB->set_id(i, sId); } @@ -977,7 +971,7 @@ void SwTOXSelectTabPage::ApplyTOXDescription() for (int nFromObj = 0, nCount = m_xFromObjCLB->n_children(); nFromObj < nCount; ++nFromObj) { SwTOOElements nData = static_cast<SwTOOElements>(m_xFromObjCLB->get_id(nFromObj).toInt32()); - m_xFromObjCLB->set_toggle(nFromObj, bool(nData & nOLEData) ? TRISTATE_TRUE : TRISTATE_FALSE, 0); + m_xFromObjCLB->set_toggle(nFromObj, bool(nData & nOLEData) ? TRISTATE_TRUE : TRISTATE_FALSE); } } else if(TOX_AUTHORITIES == aCurType.eType) @@ -1072,7 +1066,7 @@ void SwTOXSelectTabPage::FillTOXDescription() SwTOOElements nOLEData = SwTOOElements::NONE; for (int i = 0, nCount = m_xFromObjCLB->n_children(); i < nCount; ++i) { - if (m_xFromObjCLB->get_toggle(i, 0) == TRISTATE_TRUE) + if (m_xFromObjCLB->get_toggle(i) == TRISTATE_TRUE) { SwTOOElements nData = static_cast<SwTOOElements>(m_xFromObjCLB->get_id(i).toInt32()); nOLEData |= nData; diff --git a/sw/source/uibase/inc/optload.hxx b/sw/source/uibase/inc/optload.hxx index 2a6a8a498aac..e6db7e2af020 100644 --- a/sw/source/uibase/inc/optload.hxx +++ b/sw/source/uibase/inc/optload.hxx @@ -164,15 +164,13 @@ private: std::unique_ptr<weld::CheckButton> m_xApplyBorderCB; std::unique_ptr<weld::CustomWeld> m_xPreview; - typedef std::pair<int, int> row_col; - DECL_LINK(SelectHdl, weld::ComboBox&, void); DECL_LINK(SelectListBoxHdl, weld::ComboBox&, void); DECL_LINK(ModifyEntryHdl, weld::Entry&, void); DECL_LINK(ModifyComboHdl, weld::ComboBox&, void); DECL_LINK(OrderHdl, weld::ComboBox&, void ); DECL_LINK(ShowEntryHdl, weld::TreeView&, void); - DECL_LINK(ToggleEntryHdl, const row_col&, void); + DECL_LINK(ToggleEntryHdl, const weld::TreeView::iter_col&, void); DECL_LINK(TextFilterHdl, OUString&, bool); void ModifyHdl(); |