diff options
author | Mike Kaganski <mike.kaganski@collabora.com> | 2023-04-02 01:18:42 +0300 |
---|---|---|
committer | Mike Kaganski <mike.kaganski@collabora.com> | 2023-04-02 18:46:47 +0200 |
commit | 116b9d6ddf2b61186b29f0370234eec9c1bbe306 (patch) | |
tree | 7f90a12333274086e33c4e0fabfd96a8e54e6b6c /framework | |
parent | d7ba78e9c7be835a1e2ecdacd25995663e96862f (diff) |
Avoid conversions between OUString and OString in VCL
Standardize on OUString, which is the main internal string class.
Convert from/to OUString only when communicating with respective
external APIs.
Removes about 200 conversions from the code.
Change-Id: I96ecee7c6fd271bb76639220e96d69d2964bed26
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/149930
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'framework')
-rw-r--r-- | framework/inc/uielement/toolbarmanager.hxx | 2 | ||||
-rw-r--r-- | framework/source/fwe/classes/addonmenu.cxx | 10 | ||||
-rw-r--r-- | framework/source/helper/persistentwindowstate.cxx | 8 | ||||
-rw-r--r-- | framework/source/layoutmanager/helpers.cxx | 2 | ||||
-rw-r--r-- | framework/source/loadenv/loadenv.cxx | 2 | ||||
-rw-r--r-- | framework/source/uielement/edittoolbarcontroller.cxx | 2 | ||||
-rw-r--r-- | framework/source/uielement/generictoolbarcontroller.cxx | 20 | ||||
-rw-r--r-- | framework/source/uielement/menubarmerger.cxx | 4 | ||||
-rw-r--r-- | framework/source/uielement/subtoolbarcontroller.cxx | 2 | ||||
-rw-r--r-- | framework/source/uielement/toolbarmanager.cxx | 46 |
10 files changed, 45 insertions, 53 deletions
diff --git a/framework/inc/uielement/toolbarmanager.hxx b/framework/inc/uielement/toolbarmanager.hxx index debd898c9b45..dc80fbcfa835 100644 --- a/framework/inc/uielement/toolbarmanager.hxx +++ b/framework/inc/uielement/toolbarmanager.hxx @@ -82,7 +82,7 @@ public: virtual bool IsItemVisible(ToolBoxItemId nId, const OUString& rCommandURL) = 0; virtual void Clear() = 0; virtual void SetName(const OUString& rName) = 0; - virtual void SetHelpId(const OString& rHelpId) = 0; + virtual void SetHelpId(const OUString& rHelpId) = 0; virtual bool WillUsePopupMode() = 0; virtual bool IsReallyVisible() = 0; virtual void SetIconSize(ToolBoxButtonSize eSize) = 0; diff --git a/framework/source/fwe/classes/addonmenu.cxx b/framework/source/fwe/classes/addonmenu.cxx index 423a157f8be8..db6a7435ac14 100644 --- a/framework/source/fwe/classes/addonmenu.cxx +++ b/framework/source/fwe/classes/addonmenu.cxx @@ -124,9 +124,9 @@ void AddonMenuManager::MergeAddonHelpMenu( const Reference< XFrame >& rFrame, { nInsSepAfterPos += ( pHelpMenu->GetItemCount() - nItemCount ); if ( pHelpMenu->GetItemType( nInsSepAfterPos ) != MenuItemType::SEPARATOR ) - pHelpMenu->InsertSeparator(OString(), nInsSepAfterPos); + pHelpMenu->InsertSeparator({}, nInsSepAfterPos); } - pHelpMenu->InsertSeparator(OString(), nItemCount); + pHelpMenu->InsertSeparator({}, nItemCount); } } @@ -171,7 +171,7 @@ void AddonMenuManager::MergeAddonPopupMenus( const Reference< XFrame >& rFrame, if ( pAddonPopupMenu->GetItemCount() > 0 ) { - pMergeMenuBar->InsertItem( nId, aTitle, MenuItemBits::NONE, OString(), nInsertPos++ ); + pMergeMenuBar->InsertItem( nId, aTitle, MenuItemBits::NONE, {}, nInsertPos++); pMergeMenuBar->SetPopupMenu( nId, pAddonPopupMenu ); // Store the command URL into the VCL menu bar for later identification @@ -233,12 +233,12 @@ void AddonMenuManager::BuildMenu( PopupMenu* pCurrent // have already one before us nElements = 0; bInsertSeparator = false; - pCurrentMenu->InsertSeparator(OString(), nInsPos); + pCurrentMenu->InsertSeparator({}, nInsPos); nInsPos = AddonMenuManager::GetNextPos( nInsPos ); } sal_uInt16 nId = nUniqueMenuId++; - pCurrentMenu->InsertItem(nId, aTitle, MenuItemBits::NONE, OString(), nInsPos); + pCurrentMenu->InsertItem(nId, aTitle, MenuItemBits::NONE, {}, nInsPos); nInsPos = AddonMenuManager::GetNextPos( nInsPos ); ++nElements; diff --git a/framework/source/helper/persistentwindowstate.cxx b/framework/source/helper/persistentwindowstate.cxx index 103a4bda7b57..995812dd4693 100644 --- a/framework/source/helper/persistentwindowstate.cxx +++ b/framework/source/helper/persistentwindowstate.cxx @@ -216,9 +216,7 @@ OUString PersistentWindowState::implst_getWindowStateFromWindow(const css::uno:: if ( pWindow && pWindow->IsSystemWindow() ) { vcl::WindowDataMask const nMask = vcl::WindowDataMask::All & ~vcl::WindowDataMask::Minimized; - sWindowState = OStringToOUString( - static_cast<SystemWindow*>(pWindow.get())->GetWindowState(nMask), - RTL_TEXTENCODING_UTF8); + sWindowState = static_cast<SystemWindow*>(pWindow.get())->GetWindowState(nMask); } // <- SOLAR SAFE ------------------------ } @@ -256,9 +254,9 @@ void PersistentWindowState::implst_setWindowStateOnWindow(const css::uno::Refere if (pWorkWindow->IsMinimized()) return; - OUString sOldWindowState = OStringToOUString( pSystemWindow->GetWindowState(), RTL_TEXTENCODING_ASCII_US ); + OUString sOldWindowState = pSystemWindow->GetWindowState(); if ( sOldWindowState != sWindowState ) - pSystemWindow->SetWindowState(OUStringToOString(sWindowState,RTL_TEXTENCODING_UTF8)); + pSystemWindow->SetWindowState(sWindowState); // <- SOLAR SAFE ------------------------ } diff --git a/framework/source/layoutmanager/helpers.cxx b/framework/source/layoutmanager/helpers.cxx index 1a67042bc46c..ccce1b3e8673 100644 --- a/framework/source/layoutmanager/helpers.cxx +++ b/framework/source/layoutmanager/helpers.cxx @@ -89,7 +89,7 @@ OUString retrieveToolbarNameFromHelpURL( vcl::Window* pWindow ) ToolBox* pToolBox = dynamic_cast<ToolBox *>( pWindow ); if ( pToolBox ) { - aToolbarName = OStringToOUString( pToolBox->GetHelpId(), RTL_TEXTENCODING_UTF8 ); + aToolbarName = pToolBox->GetHelpId(); sal_Int32 i = aToolbarName.lastIndexOf( ':' ); if ( !aToolbarName.isEmpty() && ( i > 0 ) && (( i + 1 ) < aToolbarName.getLength() )) aToolbarName = aToolbarName.copy( i+1 ); // Remove ".HelpId:" protocol from toolbar name diff --git a/framework/source/loadenv/loadenv.cxx b/framework/source/loadenv/loadenv.cxx index a01bc50fe582..0d56944a3b17 100644 --- a/framework/source/loadenv/loadenv.cxx +++ b/framework/source/loadenv/loadenv.cxx @@ -1795,7 +1795,7 @@ void LoadEnv::impl_applyPersistentWindowState(const css::uno::Reference< css::aw return; SystemWindow* pSystemWindow = static_cast<SystemWindow*>(pWindowCheck.get()); - pSystemWindow->SetWindowState(OUStringToOString(sWindowState,RTL_TEXTENCODING_UTF8)); + pSystemWindow->SetWindowState(sWindowState); // <- SOLAR SAFE } } diff --git a/framework/source/uielement/edittoolbarcontroller.cxx b/framework/source/uielement/edittoolbarcontroller.cxx index 1f974e77cd54..c05651664961 100644 --- a/framework/source/uielement/edittoolbarcontroller.cxx +++ b/framework/source/uielement/edittoolbarcontroller.cxx @@ -68,7 +68,7 @@ EditControl::EditControl(vcl::Window* pParent, EditToolbarController* pEditToolb , m_xWidget(m_xBuilder->weld_entry("entry")) , m_pEditToolbarController(pEditToolbarController) { - OString sEmpty; + OUString sEmpty; m_xWidget->set_help_id(sEmpty); m_xContainer->set_help_id(sEmpty); diff --git a/framework/source/uielement/generictoolbarcontroller.cxx b/framework/source/uielement/generictoolbarcontroller.cxx index 1fd8998f0460..827991f7226d 100644 --- a/framework/source/uielement/generictoolbarcontroller.cxx +++ b/framework/source/uielement/generictoolbarcontroller.cxx @@ -184,9 +184,7 @@ void GenericToolbarController::statusChanged( const FeatureStateEvent& Event ) if ( m_pToolbar ) { - OString sId = m_aCommandURL.toUtf8(); - - m_pToolbar->set_item_sensitive(sId, Event.IsEnabled); + m_pToolbar->set_item_sensitive(m_aCommandURL, Event.IsEnabled); bool bValue; OUString aStrValue; @@ -195,21 +193,21 @@ void GenericToolbarController::statusChanged( const FeatureStateEvent& Event ) if ( Event.State >>= bValue ) { // Boolean, treat it as checked/unchecked - m_pToolbar->set_item_active(sId, bValue); + m_pToolbar->set_item_active(m_aCommandURL, bValue); } else if ( Event.State >>= aStrValue ) { - m_pToolbar->set_item_label(sId, aStrValue); + m_pToolbar->set_item_label(m_aCommandURL, aStrValue); } else if ( aImageItem.PutValue( Event.State, 0 ) && aImageItem.IsMirrored() != m_bMirrored ) { - m_pToolbar->set_item_image_mirrored(sId, aImageItem.IsMirrored()); + m_pToolbar->set_item_image_mirrored(m_aCommandURL, aImageItem.IsMirrored()); auto xGraphic(vcl::CommandInfoProvider::GetXGraphicForCommand(m_aCommandURL, m_xFrame, m_pToolbar->get_icon_size())); - m_pToolbar->set_item_image(sId, xGraphic); + m_pToolbar->set_item_image(m_aCommandURL, xGraphic); m_bMirrored = !m_bMirrored; } else - m_pToolbar->set_item_active(sId, false); + m_pToolbar->set_item_active(m_aCommandURL, false); return; } @@ -394,12 +392,12 @@ void ImageOrientationController::statusChanged(const css::frame::FeatureStateEve { for (int i = 0, nCount = m_pToolbar->get_n_items(); i < nCount; ++i) { - OString aCommand = m_pToolbar->get_item_ident(i); - if (vcl::CommandInfoProvider::IsMirrored(OUString::fromUtf8(aCommand), getModuleName())) + OUString aCommand = m_pToolbar->get_item_ident(i); + if (vcl::CommandInfoProvider::IsMirrored(aCommand, getModuleName())) { m_pToolbar->set_item_image_mirrored(aCommand, m_bMirrored); auto xGraphic(vcl::CommandInfoProvider::GetXGraphicForCommand( - OUString::fromUtf8(aCommand), m_xFrame, m_pToolbar->get_icon_size())); + aCommand, m_xFrame, m_pToolbar->get_icon_size())); m_pToolbar->set_item_image(aCommand, xGraphic); } } diff --git a/framework/source/uielement/menubarmerger.cxx b/framework/source/uielement/menubarmerger.cxx index c5730d2ef3e9..eebf61aa7383 100644 --- a/framework/source/uielement/menubarmerger.cxx +++ b/framework/source/uielement/menubarmerger.cxx @@ -216,11 +216,11 @@ bool MenuBarMerger::MergeMenuItems( { if ( rMenuItem.aURL == SEPARATOR_STRING ) { - pMenu->InsertSeparator(OString(), nPos+nModIndex+nIndex); + pMenu->InsertSeparator({}, nPos + nModIndex + nIndex); } else { - pMenu->InsertItem(nItemId, rMenuItem.aTitle, MenuItemBits::NONE, OString(), nPos+nModIndex+nIndex); + pMenu->InsertItem(nItemId, rMenuItem.aTitle, MenuItemBits::NONE, {}, nPos + nModIndex + nIndex); pMenu->SetItemCommand( nItemId, rMenuItem.aURL ); if ( !rMenuItem.aSubMenu.empty() ) { diff --git a/framework/source/uielement/subtoolbarcontroller.cxx b/framework/source/uielement/subtoolbarcontroller.cxx index 88c5f0292722..b04b9609e709 100644 --- a/framework/source/uielement/subtoolbarcontroller.cxx +++ b/framework/source/uielement/subtoolbarcontroller.cxx @@ -499,7 +499,7 @@ void SubToolBarController::initialize( const css::uno::Sequence< css::uno::Any > if (m_pToolbar) { mxPopoverContainer.reset(new ToolbarPopupContainer(m_pToolbar)); - m_pToolbar->set_item_popover(m_aCommandURL.toUtf8(), mxPopoverContainer->getTopLevel()); + m_pToolbar->set_item_popover(m_aCommandURL, mxPopoverContainer->getTopLevel()); } updateImage(); diff --git a/framework/source/uielement/toolbarmanager.cxx b/framework/source/uielement/toolbarmanager.cxx index 723afeb09977..85fad251be05 100644 --- a/framework/source/uielement/toolbarmanager.cxx +++ b/framework/source/uielement/toolbarmanager.cxx @@ -287,7 +287,7 @@ public: m_pToolBar->SetText( rName ); } - virtual void SetHelpId(const OString& rHelpId) override + virtual void SetHelpId(const OUString& rHelpId) override { m_pToolBar->SetHelpId( rHelpId ); } @@ -383,8 +383,8 @@ IMPL_LINK_NOARG(VclToolBarManager, Click, ToolBox*, void) class WeldToolBarManager : public ToolBarManagerImpl { - DECL_LINK(Click, const OString&, void); - DECL_LINK(ToggleMenuHdl, const OString&, void); + DECL_LINK(Click, const OUString&, void); + DECL_LINK(ToggleMenuHdl, const OUString&, void); public: WeldToolBarManager(weld::Toolbar* pToolbar, @@ -417,16 +417,15 @@ public: const OUString& rLabel, ToolBoxItemBits /*nItemBits*/) override { - OString sId = OUStringToOString(rCommandURL, RTL_TEXTENCODING_UTF8); - m_aCommandToId[sId] = nId; - m_aIdToCommand[nId] = sId; - m_aCommandOrder.push_back(sId); + m_aCommandToId[rCommandURL] = nId; + m_aIdToCommand[nId] = rCommandURL; + m_aCommandOrder.push_back(rCommandURL); m_pWeldedToolBar->insert_item(m_aCommandOrder.size(), rCommandURL); - m_pWeldedToolBar->set_item_tooltip_text(sId, rTooltip); - m_pWeldedToolBar->set_item_label( sId, rLabel ); - m_pWeldedToolBar->set_item_sensitive( sId, true ); - m_pWeldedToolBar->set_item_active( sId, false ); + m_pWeldedToolBar->set_item_tooltip_text(rCommandURL, rTooltip); + m_pWeldedToolBar->set_item_label(rCommandURL, rLabel); + m_pWeldedToolBar->set_item_sensitive(rCommandURL, true); + m_pWeldedToolBar->set_item_active(rCommandURL, false); } virtual void InsertSeparator() override @@ -450,7 +449,7 @@ public: virtual OUString GetItemCommand(ToolBoxItemId nId) override { - return OStringToOUString(m_aIdToCommand[nId], RTL_TEXTENCODING_UTF8); + return m_aIdToCommand[nId]; } virtual sal_uInt16 GetItemCount() override @@ -462,21 +461,19 @@ public: virtual void HideItem(ToolBoxItemId /*nId*/, const OUString& rCommandURL) override { - OString sId = OUStringToOString(rCommandURL, RTL_TEXTENCODING_UTF8); - m_pWeldedToolBar->set_item_visible(sId, false); + m_pWeldedToolBar->set_item_visible(rCommandURL, false); } virtual bool IsItemVisible(ToolBoxItemId /*nId*/, const OUString& rCommandURL) override { - OString sId = OUStringToOString(rCommandURL, RTL_TEXTENCODING_UTF8); - return m_pWeldedToolBar->get_item_visible(sId); + return m_pWeldedToolBar->get_item_visible(rCommandURL); } virtual void Clear() override {} virtual void SetName(const OUString& /*rName*/) override {} - virtual void SetHelpId(const OString& /*rHelpId*/) override {} + virtual void SetHelpId(const OUString& /*rHelpId*/) override {} virtual bool WillUsePopupMode() override { return true; } @@ -501,8 +498,7 @@ public: const OUString& rCommandURL, const Image& rImage) override { - OString sId = OUStringToOString(rCommandURL, RTL_TEXTENCODING_UTF8); - m_pWeldedToolBar->set_item_image(sId, Graphic(rImage).GetXGraphic()); + m_pWeldedToolBar->set_item_image(rCommandURL, Graphic(rImage).GetXGraphic()); } virtual void UpdateSize() override {} @@ -514,18 +510,18 @@ private: weld::Builder* m_pBuilder; ToolBarManager* m_pManager; ToolBoxItemId m_nCurrentId; - std::map<const OString, ToolBoxItemId> m_aCommandToId; - std::map<ToolBoxItemId, OString> m_aIdToCommand; - std::vector<OString> m_aCommandOrder; + std::map<const OUString, ToolBoxItemId> m_aCommandToId; + std::map<ToolBoxItemId, OUString> m_aIdToCommand; + std::vector<OUString> m_aCommandOrder; }; -IMPL_LINK(WeldToolBarManager, Click, const OString&, rCommand, void) +IMPL_LINK(WeldToolBarManager, Click, const OUString&, rCommand, void) { m_nCurrentId = m_aCommandToId[rCommand]; m_pManager->OnClick(true); } -IMPL_LINK(WeldToolBarManager, ToggleMenuHdl, const OString&, rCommand, void) +IMPL_LINK(WeldToolBarManager, ToggleMenuHdl, const OUString&, rCommand, void) { m_nCurrentId = m_aCommandToId[rCommand]; m_pManager->OnDropdownClick(false); @@ -607,7 +603,7 @@ void ToolBarManager::Init() sal_Int32 idx = m_aResourceName.lastIndexOf('/'); idx++; // will become 0 if '/' not found: use full string std::u16string_view aToolbarName = m_aResourceName.subView( idx ); - OString aHelpIdAsString = ".HelpId:" + OUStringToOString( aToolbarName, RTL_TEXTENCODING_UTF8 ); + OUString aHelpIdAsString = ".HelpId:" + OUString::Concat(aToolbarName); m_pImpl->SetHelpId( aHelpIdAsString ); m_aAsyncUpdateControllersTimer.SetTimeout( 50 ); |