diff options
Diffstat (limited to 'cui/source/customize/SvxToolbarConfigPage.cxx')
-rw-r--r-- | cui/source/customize/SvxToolbarConfigPage.cxx | 100 |
1 files changed, 46 insertions, 54 deletions
diff --git a/cui/source/customize/SvxToolbarConfigPage.cxx b/cui/source/customize/SvxToolbarConfigPage.cxx index 99a85d82f96e..1997de819d29 100644 --- a/cui/source/customize/SvxToolbarConfigPage.cxx +++ b/cui/source/customize/SvxToolbarConfigPage.cxx @@ -27,7 +27,7 @@ #include <sfx2/sfxsids.hrc> #include <svl/stritem.hxx> -#include <tools/diagnose_ex.h> +#include <comphelper/diagnose_ex.hxx> #include <algorithm> #include <helpids.h> @@ -38,9 +38,8 @@ #include <SvxConfigPageHelper.hxx> #include <dialmgr.hxx> -#include <comphelper/processfactory.hxx> - #include <dlgname.hxx> +#include <comphelper/processfactory.hxx> SvxToolbarConfigPage::SvxToolbarConfigPage(weld::Container* pPage, weld::DialogController* pController, @@ -106,7 +105,7 @@ SvxToolbarConfigPage::SvxToolbarConfigPage(weld::Container* pPage, m_aURLToSelect = ITEM_TOOLBAR_URL; m_aURLToSelect += "standardbar"; - const SfxPoolItem* pItem = rSet.GetItem(rSet.GetPool()->GetWhich(SID_CONFIG)); + const SfxPoolItem* pItem = rSet.GetItem(SID_CONFIG); if (pItem) { @@ -125,8 +124,7 @@ void SvxToolbarConfigPage::ListModified() pEntries->clear(); for (int i = 0; i < m_xContentsListBox->n_children(); ++i) - pEntries->push_back( - reinterpret_cast<SvxConfigEntry*>(m_xContentsListBox->get_id(i).toInt64())); + pEntries->push_back(weld::fromId<SvxConfigEntry*>(m_xContentsListBox->get_id(i))); GetSaveInData()->SetModified(); GetTopLevelSelection()->SetModified(); @@ -140,8 +138,7 @@ SvxToolbarConfigPage::~SvxToolbarConfigPage() { for (int i = 0, nCount = m_xSaveInListBox->get_count(); i < nCount; ++i) { - ToolbarSaveInData* pData - = reinterpret_cast<ToolbarSaveInData*>(m_xSaveInListBox->get_id(i).toInt64()); + ToolbarSaveInData* pData = weld::fromId<ToolbarSaveInData*>(m_xSaveInListBox->get_id(i)); delete pData; } m_xSaveInListBox->clear(); @@ -186,8 +183,7 @@ void SvxToolbarConfigPage::DeleteSelectedContent() return; // get currently selected entry - SvxConfigEntry* pEntry - = reinterpret_cast<SvxConfigEntry*>(m_xContentsListBox->get_id(nActEntry).toInt64()); + SvxConfigEntry* pEntry = weld::fromId<SvxConfigEntry*>(m_xContentsListBox->get_id(nActEntry)); SvxConfigEntry* pToolbar = GetTopLevelSelection(); @@ -246,13 +242,14 @@ void SvxToolbarConfigPage::Init() ReloadTopLevelListBox(); - sal_Int32 nPos = 0; + sal_Int32 nCount = m_xTopLevelListBox->get_count(); + sal_Int32 nPos = nCount > 0 ? 0 : -1; + if (!m_aURLToSelect.isEmpty()) { - for (sal_Int32 i = 0, nCount = m_xTopLevelListBox->get_count(); i < nCount; ++i) + for (sal_Int32 i = 0; i < nCount; ++i) { - SvxConfigEntry* pData - = reinterpret_cast<SvxConfigEntry*>(m_xTopLevelListBox->get_id(i).toInt64()); + SvxConfigEntry* pData = weld::fromId<SvxConfigEntry*>(m_xTopLevelListBox->get_id(i)); if (pData->GetCommand().equals(m_aURLToSelect)) { @@ -289,13 +286,13 @@ IMPL_LINK_NOARG(SvxToolbarConfigPage, SelectToolbarEntry, weld::TreeView&, void) UpdateButtonStates(); } -IMPL_LINK(SvxToolbarConfigPage, GearHdl, const OString&, rIdent, void) +IMPL_LINK(SvxToolbarConfigPage, GearHdl, const OUString&, rIdent, void) { SvxConfigEntry* pCurrentToolbar = GetTopLevelSelection(); if (rIdent == "toolbar_gear_add") { - OUString prefix = CuiResId(RID_SVXSTR_NEW_TOOLBAR); + OUString prefix = CuiResId(RID_CUISTR_NEW_TOOLBAR); OUString aNewName = SvxConfigPageHelper::generateCustomName(prefix, GetSaveInData()->GetEntries()); @@ -317,8 +314,8 @@ IMPL_LINK(SvxToolbarConfigPage, GearHdl, const OString&, rIdent, void) // Where to save the new toolbar? (i.e. Modulewise or documentwise) int nInsertPos = aNameDialog.m_xSaveInListBox->get_active(); - ToolbarSaveInData* pData = reinterpret_cast<ToolbarSaveInData*>( - m_xSaveInListBox->get_id(nInsertPos).toInt64()); + ToolbarSaveInData* pData + = weld::fromId<ToolbarSaveInData*>(m_xSaveInListBox->get_id(nInsertPos)); if (GetSaveInData() != pData) { @@ -333,7 +330,7 @@ IMPL_LINK(SvxToolbarConfigPage, GearHdl, const OString&, rIdent, void) pData->CreateToolbar(pToolbar); - OUString sId(OUString::number(reinterpret_cast<sal_Int64>(pToolbar))); + OUString sId(weld::toId(pToolbar)); m_xTopLevelListBox->append(sId, pToolbar->GetName()); m_xTopLevelListBox->set_active_id(sId); SelectElement(); @@ -352,17 +349,17 @@ IMPL_LINK(SvxToolbarConfigPage, GearHdl, const OString&, rIdent, void) else if (rIdent == "toolbar_gear_rename") { sal_Int32 nSelectionPos = m_xTopLevelListBox->get_active(); - SvxConfigEntry* pToolbar = reinterpret_cast<SvxConfigEntry*>( - m_xTopLevelListBox->get_id(nSelectionPos).toInt64()); + SvxConfigEntry* pToolbar + = weld::fromId<SvxConfigEntry*>(m_xTopLevelListBox->get_id(nSelectionPos)); ToolbarSaveInData* pSaveInData = static_cast<ToolbarSaveInData*>(GetSaveInData()); //Rename the toolbar OUString sCurrentName(SvxConfigPageHelper::stripHotKey(pToolbar->GetName())); - OUString sDesc = CuiResId(RID_SVXSTR_LABEL_NEW_NAME); + OUString sDesc = CuiResId(RID_CUISTR_LABEL_NEW_NAME); SvxNameDialog aNameDialog(GetFrameWeld(), sCurrentName, sDesc); aNameDialog.set_help_id(HID_SVX_CONFIG_RENAME_TOOLBAR); - aNameDialog.set_title(CuiResId(RID_SVXSTR_RENAME_TOOLBAR)); + aNameDialog.set_title(CuiResId(RID_CUISTR_RENAME_TOOLBAR)); if (aNameDialog.run() == RET_OK) { @@ -376,7 +373,7 @@ IMPL_LINK(SvxToolbarConfigPage, GearHdl, const OString&, rIdent, void) // have to use remove and insert to change the name m_xTopLevelListBox->remove(nSelectionPos); - OUString sId(OUString::number(reinterpret_cast<sal_Int64>(pToolbar))); + OUString sId(weld::toId(pToolbar)); m_xTopLevelListBox->insert(nSelectionPos, sNewName, &sId, nullptr, nullptr); m_xTopLevelListBox->set_active_id(sId); } @@ -429,7 +426,7 @@ IMPL_LINK_NOARG(SvxToolbarConfigPage, RemoveCommandHdl, weld::Button&, void) DeleteSelectedContent(); } -IMPL_LINK(SvxToolbarConfigPage, InsertHdl, const OString&, rIdent, void) +IMPL_LINK(SvxToolbarConfigPage, InsertHdl, const OUString&, rIdent, void) { if (rIdent == "insertseparator") { @@ -454,7 +451,7 @@ IMPL_LINK(SvxToolbarConfigPage, InsertHdl, const OString&, rIdent, void) } } -IMPL_LINK(SvxToolbarConfigPage, ModifyItemHdl, const OString&, rIdent, void) +IMPL_LINK(SvxToolbarConfigPage, ModifyItemHdl, const OUString&, rIdent, void) { bool bNeedsApply = false; @@ -471,14 +468,14 @@ IMPL_LINK(SvxToolbarConfigPage, ModifyItemHdl, const OString&, rIdent, void) { int nActEntry = m_xContentsListBox->get_selected_index(); SvxConfigEntry* pEntry - = reinterpret_cast<SvxConfigEntry*>(m_xContentsListBox->get_id(nActEntry).toInt64()); + = weld::fromId<SvxConfigEntry*>(m_xContentsListBox->get_id(nActEntry)); OUString aNewName(SvxConfigPageHelper::stripHotKey(pEntry->GetName())); - OUString aDesc = CuiResId(RID_SVXSTR_LABEL_NEW_NAME); + OUString aDesc = CuiResId(RID_CUISTR_LABEL_NEW_NAME); SvxNameDialog aNameDialog(GetFrameWeld(), aNewName, aDesc); aNameDialog.set_help_id(HID_SVX_CONFIG_RENAME_TOOLBAR_ITEM); - aNameDialog.set_title(CuiResId(RID_SVXSTR_RENAME_TOOLBAR)); + aNameDialog.set_title(CuiResId(RID_CUISTR_RENAME_TOOLBAR)); if (aNameDialog.run() == RET_OK) { @@ -497,7 +494,7 @@ IMPL_LINK(SvxToolbarConfigPage, ModifyItemHdl, const OString&, rIdent, void) { int nActEntry = m_xContentsListBox->get_selected_index(); SvxConfigEntry* pEntry - = reinterpret_cast<SvxConfigEntry*>(m_xContentsListBox->get_id(nActEntry).toInt64()); + = weld::fromId<SvxConfigEntry*>(m_xContentsListBox->get_id(nActEntry)); SvxIconSelectorDialog aIconDialog(GetFrameWeld(), GetSaveInData()->GetImageManager(), GetSaveInData()->GetParentImageManager()); @@ -532,7 +529,7 @@ IMPL_LINK(SvxToolbarConfigPage, ModifyItemHdl, const OString&, rIdent, void) m_xContentsListBox->remove(nActEntry); - OUString sId(OUString::number(reinterpret_cast<sal_Int64>(pEntry))); + OUString sId(weld::toId(pEntry)); m_xContentsListBox->insert(nActEntry, sId); m_xContentsListBox->set_toggle(nActEntry, pEntry->IsVisible() ? TRISTATE_TRUE : TRISTATE_FALSE); @@ -554,11 +551,11 @@ IMPL_LINK(SvxToolbarConfigPage, ModifyItemHdl, const OString&, rIdent, void) { int nActEntry = m_xContentsListBox->get_selected_index(); SvxConfigEntry* pEntry - = reinterpret_cast<SvxConfigEntry*>(m_xContentsListBox->get_id(nActEntry).toInt64()); - - css::uno::Reference<css::graphic::XGraphic> backup = pEntry->GetBackupGraphic(); + = weld::fromId<SvxConfigEntry*>(m_xContentsListBox->get_id(nActEntry)); - css::uno::Sequence<css::uno::Reference<css::graphic::XGraphic>> aGraphicSeq{ backup }; + css::uno::Sequence<css::uno::Reference<css::graphic::XGraphic>> aGraphicSeq{ + pEntry->GetBackupGraphic() + }; css::uno::Sequence<OUString> aURLSeq{ pEntry->GetCommand() }; @@ -569,7 +566,7 @@ IMPL_LINK(SvxToolbarConfigPage, ModifyItemHdl, const OString&, rIdent, void) m_xContentsListBox->remove(nActEntry); - OUString sId(OUString::number(reinterpret_cast<sal_Int64>(pEntry))); + OUString sId(weld::toId(pEntry)); m_xContentsListBox->insert(nActEntry, sId); m_xContentsListBox->set_toggle(nActEntry, pEntry->IsVisible() ? TRISTATE_TRUE : TRISTATE_FALSE); @@ -592,7 +589,7 @@ IMPL_LINK(SvxToolbarConfigPage, ModifyItemHdl, const OString&, rIdent, void) { int nActEntry = m_xContentsListBox->get_selected_index(); SvxConfigEntry* pEntry - = reinterpret_cast<SvxConfigEntry*>(m_xContentsListBox->get_id(nActEntry).toInt64()); + = weld::fromId<SvxConfigEntry*>(m_xContentsListBox->get_id(nActEntry)); ToolbarSaveInData* pSaveInData = static_cast<ToolbarSaveInData*>(GetSaveInData()); @@ -620,7 +617,7 @@ IMPL_LINK(SvxToolbarConfigPage, ModifyItemHdl, const OString&, rIdent, void) m_xContentsListBox->remove(nActEntry); - OUString sId(OUString::number(reinterpret_cast<sal_Int64>(pEntry))); + OUString sId(weld::toId(pEntry)); m_xContentsListBox->insert(nActEntry, sId); m_xContentsListBox->set_toggle(nActEntry, pEntry->IsVisible() ? TRISTATE_TRUE : TRISTATE_FALSE); @@ -655,11 +652,11 @@ IMPL_LINK_NOARG(SvxToolbarConfigPage, ResetToolbarHdl, weld::Button&, void) sal_Int32 nSelectionPos = m_xTopLevelListBox->get_active(); SvxConfigEntry* pToolbar - = reinterpret_cast<SvxConfigEntry*>(m_xTopLevelListBox->get_id(nSelectionPos).toInt64()); + = weld::fromId<SvxConfigEntry*>(m_xTopLevelListBox->get_id(nSelectionPos)); std::unique_ptr<weld::MessageDialog> xQueryBox(Application::CreateMessageDialog( GetFrameWeld(), VclMessageType::Question, VclButtonsType::YesNo, - CuiResId(RID_SVXSTR_CONFIRM_RESTORE_DEFAULT))); + CuiResId(RID_CUISTR_CONFIRM_RESTORE_DEFAULT))); if (xQueryBox->run() == RET_YES) { ToolbarSaveInData* pSaveInData = static_cast<ToolbarSaveInData*>(GetSaveInData()); @@ -677,8 +674,7 @@ void SvxToolbarConfigPage::UpdateButtonStates() bool bIsSeparator = selection != -1 - && reinterpret_cast<SvxConfigEntry*>(m_xContentsListBox->get_id(selection).toInt64()) - ->IsSeparator(); + && weld::fromId<SvxConfigEntry*>(m_xContentsListBox->get_id(selection))->IsSeparator(); bool bIsValidSelection = (m_xContentsListBox->n_children() != 0 && selection != -1); m_xMoveUpButton->set_sensitive(bIsValidSelection); @@ -696,7 +692,7 @@ void SvxToolbarConfigPage::UpdateButtonStates() short SvxToolbarConfigPage::QueryReset() { - OUString msg = CuiResId(RID_SVXSTR_CONFIRM_TOOLBAR_RESET); + OUString msg = CuiResId(RID_CUISTR_CONFIRM_TOOLBAR_RESET); OUString saveInName = m_xSaveInListBox->get_active_text(); @@ -751,7 +747,7 @@ void SvxToolbarConfigPage::SelectElement() SvxEntries* pEntries = pToolbar->GetEntries(); for (auto const& entry : *pEntries) { - OUString sId(OUString::number(reinterpret_cast<sal_Int64>(entry))); + OUString sId(weld::toId(entry)); m_xContentsListBox->insert(i, sId); if (entry->IsBinding() && !entry->IsSeparator()) m_xContentsListBox->set_toggle(i, entry->IsVisible() ? TRISTATE_TRUE : TRISTATE_FALSE); @@ -775,8 +771,7 @@ void SvxToolbarConfigPage::AddFunction(int nTarget) if (nNewLBEntry == -1) return; - SvxConfigEntry* pEntry - = reinterpret_cast<SvxConfigEntry*>(m_xContentsListBox->get_id(nNewLBEntry).toInt64()); + SvxConfigEntry* pEntry = weld::fromId<SvxConfigEntry*>(m_xContentsListBox->get_id(nNewLBEntry)); if (pEntry->IsBinding()) //TODO sep ? { @@ -811,8 +806,7 @@ SvxToolbarEntriesListBox::~SvxToolbarEntriesListBox() {} void SvxToolbarEntriesListBox::ChangedVisibility(int nRow) { - SvxConfigEntry* pEntryData - = reinterpret_cast<SvxConfigEntry*>(m_xControl->get_id(nRow).toInt64()); + SvxConfigEntry* pEntryData = weld::fromId<SvxConfigEntry*>(m_xControl->get_id(nRow)); if (pEntryData->IsBinding()) { @@ -838,8 +832,7 @@ IMPL_LINK(SvxToolbarEntriesListBox, KeyInputHdl, const KeyEvent&, rKeyEvent, boo if (rKeyEvent.GetKeyCode() == KEY_SPACE) { int nRow = m_xControl->get_selected_index(); - SvxConfigEntry* pEntryData - = reinterpret_cast<SvxConfigEntry*>(m_xControl->get_id(nRow).toInt64()); + SvxConfigEntry* pEntryData = weld::fromId<SvxConfigEntry*>(m_xControl->get_id(nRow)); if (pEntryData->IsBinding() && !pEntryData->IsSeparator()) { m_xControl->set_toggle(nRow, m_xControl->get_toggle(nRow) == TRISTATE_TRUE @@ -870,8 +863,7 @@ IMPL_LINK(SvxToolbarConfigPage, ContentContextMenuHdl, const CommandEvent&, rCEv bool bIsSeparator = nSelectIndex != -1 - && reinterpret_cast<SvxConfigEntry*>(m_xContentsListBox->get_id(nSelectIndex).toInt64()) - ->IsSeparator(); + && weld::fromId<SvxConfigEntry*>(m_xContentsListBox->get_id(nSelectIndex))->IsSeparator(); bool bIsValidSelection = (m_xContentsListBox->n_children() != 0 && nSelectIndex != -1); std::unique_ptr<weld::Builder> xBuilder( @@ -883,7 +875,7 @@ IMPL_LINK(SvxToolbarConfigPage, ContentContextMenuHdl, const CommandEvent&, rCEv xContextMenu->set_visible("changeIcon", bIsValidSelection && !bIsSeparator); xContextMenu->set_visible("resetIcon", bIsValidSelection && !bIsSeparator); xContextMenu->set_visible("restoreDefault", bIsValidSelection && !bIsSeparator); - OString sCommand(xContextMenu->popup_at_rect( + OUString sCommand(xContextMenu->popup_at_rect( &rTreeView, tools::Rectangle(rCEvt.GetMousePosPixel(), Size(1, 1)))); if (sCommand == "remove") @@ -923,7 +915,7 @@ IMPL_LINK(SvxToolbarConfigPage, FunctionContextMenuHdl, const CommandEvent&, rCE xContextMenu->set_visible("changeIcon", false); xContextMenu->set_visible("resetIcon", false); xContextMenu->set_visible("restoreDefault", false); - OString sCommand(xContextMenu->popup_at_rect( + OUString sCommand(xContextMenu->popup_at_rect( &rTreeView, tools::Rectangle(rCEvt.GetMousePosPixel(), Size(1, 1)))); if (sCommand == "add") |