[Libreoffice-commits] core.git: basctl/source include/svx svx/source
Maxim Monastirsky (via logerrit)
logerrit at kemper.freedesktop.org
Thu Feb 13 20:22:04 UTC 2020
basctl/source/basicide/basidesh.cxx | 3 ---
include/svx/tbcontrl.hxx | 14 --------------
svx/source/tbxctrls/lboxctrl.cxx | 2 +-
svx/source/tbxctrls/tbcontrl.cxx | 25 -------------------------
4 files changed, 1 insertion(+), 43 deletions(-)
New commits:
commit 98bc216781d52af7242b671595ec88a9468d6704
Author: Maxim Monastirsky <momonasmon at gmail.com>
AuthorDate: Thu Feb 13 14:41:10 2020 +0200
Commit: Maxim Monastirsky <momonasmon at gmail.com>
CommitDate: Thu Feb 13 21:21:27 2020 +0100
Restore simple undo and redo buttons for the basctl module
Changed in commit c34edadf5bd3d1d9f3c9c056af28b8964d8f1ca0
("rework SvxUndoRedoControl to be a PopupWindowController"),
but the dropdowns do not work in that module.
These buttons used to be managed by SvxSimpleUndoRedoController,
but that's no longer the case. The reason is that
ToolBarManager::CreateControllers checks first for controllers
registered in Controller.xcu, and only if none found it checks
for sfx2 controllers. So SvxSimpleUndoRedoController by using
a sfx2-style registration, has no chance to be ever selected
for .uno:Undo or .uno:Redo.
This commit removes the unused controller, and restores the
previous behavior with the other controller.
Change-Id: Ia774195511e41ab11562856fe1cf2ec7f170710a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88606
Tested-by: Jenkins
Reviewed-by: Maxim Monastirsky <momonasmon at gmail.com>
diff --git a/basctl/source/basicide/basidesh.cxx b/basctl/source/basicide/basidesh.cxx
index aa8ae7e364a0..75f0fe35bf90 100644
--- a/basctl/source/basicide/basidesh.cxx
+++ b/basctl/source/basicide/basidesh.cxx
@@ -62,7 +62,6 @@
#include <svx/pszctrl.hxx>
#include <svx/insctrl.hxx>
#include <svx/srchdlg.hxx>
-#include <svx/tbcontrl.hxx>
#include <com/sun/star/script/XLibraryContainerPassword.hpp>
#include <com/sun/star/container/XContainer.hpp>
#include <svx/xmlsecctrl.hxx>
@@ -177,8 +176,6 @@ void Shell::Init()
SvxPosSizeStatusBarControl::RegisterControl();
SvxInsertStatusBarControl::RegisterControl();
XmlSecStatusBarControl::RegisterControl( SID_SIGNATURE );
- SvxSimpleUndoRedoController::RegisterControl( SID_UNDO );
- SvxSimpleUndoRedoController::RegisterControl( SID_REDO );
SvxSearchDialogWrapper::RegisterChildWindow();
diff --git a/include/svx/tbcontrl.hxx b/include/svx/tbcontrl.hxx
index 4e4f477469ee..50efa73c62e2 100644
--- a/include/svx/tbcontrl.hxx
+++ b/include/svx/tbcontrl.hxx
@@ -245,20 +245,6 @@ public:
void EnsurePaletteManager();
};
-class SVXCORE_DLLPUBLIC SvxSimpleUndoRedoController final : public SfxToolBoxControl
-{
-private:
- OUString aDefaultText;
-
-public:
- SFX_DECL_TOOLBOX_CONTROL();
- SvxSimpleUndoRedoController(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rToolBox);
- virtual ~SvxSimpleUndoRedoController() override;
-
- virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState,
- const SfxPoolItem* pState) override;
-};
-
class SVXCORE_DLLPUBLIC SvxCurrencyToolBoxControl final : public svt::PopupWindowController
{
private:
diff --git a/svx/source/tbxctrls/lboxctrl.cxx b/svx/source/tbxctrls/lboxctrl.cxx
index 0f8b12019263..5497381f02dc 100644
--- a/svx/source/tbxctrls/lboxctrl.cxx
+++ b/svx/source/tbxctrls/lboxctrl.cxx
@@ -154,7 +154,7 @@ void SvxUndoRedoControl::initialize( const css::uno::Sequence< css::uno::Any >&
ToolBox* pToolBox = nullptr;
sal_uInt16 nId = 0;
- if (getToolboxId(nId, &pToolBox))
+ if (getToolboxId(nId, &pToolBox) && getModuleName() != "com.sun.star.script.BasicIDE")
{
pToolBox->SetItemBits(nId, ToolBoxItemBits::DROPDOWN | pToolBox->GetItemBits(nId));
aDefaultTooltip = pToolBox->GetQuickHelpText(nId);
diff --git a/svx/source/tbxctrls/tbcontrl.cxx b/svx/source/tbxctrls/tbcontrl.cxx
index 8096ac0168f1..c0398e5783d6 100644
--- a/svx/source/tbxctrls/tbcontrl.cxx
+++ b/svx/source/tbxctrls/tbcontrl.cxx
@@ -133,7 +133,6 @@ using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::lang;
SFX_IMPL_TOOLBOX_CONTROL( SvxStyleToolBoxControl, SfxTemplateItem );
-SFX_IMPL_TOOLBOX_CONTROL( SvxSimpleUndoRedoController, SfxStringItem );
class SvxStyleBox_Impl : public ComboBox
{
@@ -3646,30 +3645,6 @@ com_sun_star_comp_svx_FrameToolBoxControl_get_implementation(
return cppu::acquire( new SvxFrameToolBoxControl( rContext ) );
}
-SvxSimpleUndoRedoController::SvxSimpleUndoRedoController( sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx )
- :SfxToolBoxControl( nSlotId, nId, rTbx )
-{
- aDefaultText = rTbx.GetItemText( nId );
-}
-
-SvxSimpleUndoRedoController::~SvxSimpleUndoRedoController()
-{
-}
-
-void SvxSimpleUndoRedoController::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState )
-{
- const SfxStringItem* pItem = dynamic_cast<const SfxStringItem*>( pState );
- ToolBox& rBox = GetToolBox();
- if ( pItem && eState != SfxItemState::DISABLED )
- {
- OUString aNewText( MnemonicGenerator::EraseAllMnemonicChars( pItem->GetValue() ) );
- rBox.SetQuickHelpText( GetId(), aNewText );
- }
- if ( eState == SfxItemState::DISABLED )
- rBox.SetQuickHelpText( GetId(), aDefaultText );
- rBox.EnableItem( GetId(), eState != SfxItemState::DISABLED );
-}
-
SvxCurrencyToolBoxControl::SvxCurrencyToolBoxControl( const css::uno::Reference<css::uno::XComponentContext>& rContext ) :
PopupWindowController( rContext, nullptr, OUString() ),
m_eLanguage( Application::GetSettings().GetLanguageTag().getLanguageType() ),
More information about the Libreoffice-commits
mailing list