diff options
author | Maxim Monastirsky <momonasmon@gmail.com> | 2017-03-25 22:53:28 +0300 |
---|---|---|
committer | Maxim Monastirsky <momonasmon@gmail.com> | 2017-03-26 15:09:45 +0000 |
commit | 12c6caa84a61f23df996a0396432fa4b8d5c4785 (patch) | |
tree | 9cf31b38751281d60cd79635c2cc128a7d6053c2 | |
parent | 3bae306bcf23c4baae65b2b8a3617f0b697dfc6a (diff) |
Kill remaining PseudoSlots usage
Change-Id: I14a820b7c0baba8d8b17d07715bf17c42c73c8fb
TODO: Remove support code from idl and sfx2 modules
Reviewed-on: https://gerrit.libreoffice.org/35718
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
-rw-r--r-- | basctl/sdi/baside.sdi | 119 | ||||
-rw-r--r-- | basctl/source/basicide/baside3.cxx | 364 | ||||
-rw-r--r-- | basctl/source/basicide/basides1.cxx | 25 | ||||
-rw-r--r-- | basctl/source/basicide/basidesh.cxx | 46 | ||||
-rw-r--r-- | basctl/source/basicide/idetemp.hxx | 57 | ||||
-rw-r--r-- | basctl/source/inc/baside3.hxx | 1 | ||||
-rw-r--r-- | basctl/source/inc/basidesh.hxx | 2 | ||||
-rw-r--r-- | include/editeng/svxenum.hxx | 10 | ||||
-rw-r--r-- | sc/sdi/drawsh.sdi | 11 | ||||
-rw-r--r-- | sc/source/ui/app/typemap.cxx | 1 | ||||
-rw-r--r-- | sc/source/ui/drawfunc/drawsh5.cxx | 7 | ||||
-rw-r--r-- | sd/sdi/_drvwsh.sdi | 5 | ||||
-rw-r--r-- | svx/sdi/fmslots.sdi | 10 | ||||
-rw-r--r-- | svx/sdi/svx.sdi | 18 | ||||
-rw-r--r-- | svx/sdi/svxitems.sdi | 42 | ||||
-rw-r--r-- | svx/source/form/fmshell.cxx | 6 | ||||
-rw-r--r-- | sw/sdi/drwbassh.sdi | 37 | ||||
-rw-r--r-- | sw/sdi/wdrwbase.sdi | 37 | ||||
-rw-r--r-- | sw/source/uibase/shells/drwbassh.cxx | 16 | ||||
-rw-r--r-- | sw/source/uibase/shells/slotadd.cxx | 1 | ||||
-rw-r--r-- | sw/source/uibase/uiview/view2.cxx | 9 | ||||
-rw-r--r-- | sw/source/uibase/uiview/viewstat.cxx | 21 |
22 files changed, 419 insertions, 426 deletions
diff --git a/basctl/sdi/baside.sdi b/basctl/sdi/baside.sdi index e61f737e0e14..f4993919e5ae 100644 --- a/basctl/sdi/baside.sdi +++ b/basctl/sdi/baside.sdi @@ -409,6 +409,125 @@ shell basctl_Shell SID_CHOOSE_CONTROLS [ + StateMethod = GetState; + ] + SID_INSERT_PUSHBUTTON + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_CHECKBOX + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_RADIOBUTTON + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_SPINBUTTON + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_FIXEDTEXT + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_GROUPBOX + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_LISTBOX + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_COMBOBOX + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_EDIT + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_HSCROLLBAR + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_VSCROLLBAR + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_SELECT + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_IMAGECONTROL + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_PROGRESSBAR + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_HFIXEDLINE + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_VFIXEDLINE + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_DATEFIELD + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_TIMEFIELD + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_NUMERICFIELD + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_CURRENCYFIELD + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_FORMATTEDFIELD + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_PATTERNFIELD + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_FILECONTROL + [ + ExecMethod = ExecuteDialog; + StateMethod = GetState; + ] + SID_INSERT_TREECONTROL + [ ExecMethod = ExecuteDialog; StateMethod = GetState; ] diff --git a/basctl/source/basicide/baside3.cxx b/basctl/source/basicide/baside3.cxx index 821c34176072..ffccb5e2f1cb 100644 --- a/basctl/source/basicide/baside3.cxx +++ b/basctl/source/basicide/baside3.cxx @@ -29,7 +29,6 @@ #include "dlgedmod.hxx" #include "dlgedview.hxx" #include "iderdll.hxx" -#include "idetemp.hxx" #include "localizationmgr.hxx" #include "managelang.hxx" @@ -79,6 +78,7 @@ DialogWindow::DialogWindow(DialogWindowLayout* pParent, ScriptDocument const& rD ? rDocument.getDocument() : Reference<frame::XModel>(), xDialogModel)) ,m_pUndoMgr(new SfxUndoManager) + ,m_nControlSlotId(SID_INSERT_SELECT) { InitSettings(); @@ -137,9 +137,9 @@ void DialogWindow::MouseButtonUp( const MouseEvent& rMEvt ) m_pEditor->MouseButtonUp( rMEvt ); if( (m_pEditor->GetMode() == DlgEditor::INSERT) && !m_pEditor->IsCreateOK() ) { + m_nControlSlotId = SID_INSERT_SELECT; m_pEditor->SetMode( DlgEditor::SELECT ); - if (SfxBindings* pBindings = GetBindingsPtr()) - pBindings->Invalidate( SID_CHOOSE_CONTROLS ); + Shell::InvalidateControlSlots(); } if (SfxBindings* pBindings = GetBindingsPtr()) { @@ -304,50 +304,7 @@ void DialogWindow::GetState( SfxItemSet& rSet ) case SID_CHOOSE_CONTROLS: { if ( IsReadOnly() ) - { rSet.DisableItem( nWh ); - } - else - { - SfxAllEnumItem aItem( SID_CHOOSE_CONTROLS ); - if ( GetEditor().GetMode() == DlgEditor::SELECT ) - aItem.SetValue( SVX_SNAP_SELECT ); - else - { - sal_uInt16 nObj; - switch( m_pEditor->GetInsertObj() ) - { - case OBJ_DLG_PUSHBUTTON: nObj = SVX_SNAP_PUSHBUTTON; break; - case OBJ_DLG_RADIOBUTTON: nObj = SVX_SNAP_RADIOBUTTON; break; - case OBJ_DLG_CHECKBOX: nObj = SVX_SNAP_CHECKBOX; break; - case OBJ_DLG_LISTBOX: nObj = SVX_SNAP_LISTBOX; break; - case OBJ_DLG_COMBOBOX: nObj = SVX_SNAP_COMBOBOX; break; - case OBJ_DLG_GROUPBOX: nObj = SVX_SNAP_GROUPBOX; break; - case OBJ_DLG_EDIT: nObj = SVX_SNAP_EDIT; break; - case OBJ_DLG_FIXEDTEXT: nObj = SVX_SNAP_FIXEDTEXT; break; - case OBJ_DLG_IMAGECONTROL: nObj = SVX_SNAP_IMAGECONTROL; break; - case OBJ_DLG_PROGRESSBAR: nObj = SVX_SNAP_PROGRESSBAR; break; - case OBJ_DLG_HSCROLLBAR: nObj = SVX_SNAP_HSCROLLBAR; break; - case OBJ_DLG_VSCROLLBAR: nObj = SVX_SNAP_VSCROLLBAR; break; - case OBJ_DLG_HFIXEDLINE: nObj = SVX_SNAP_HFIXEDLINE; break; - case OBJ_DLG_VFIXEDLINE: nObj = SVX_SNAP_VFIXEDLINE; break; - case OBJ_DLG_DATEFIELD: nObj = SVX_SNAP_DATEFIELD; break; - case OBJ_DLG_TIMEFIELD: nObj = SVX_SNAP_TIMEFIELD; break; - case OBJ_DLG_NUMERICFIELD: nObj = SVX_SNAP_NUMERICFIELD; break; - case OBJ_DLG_CURRENCYFIELD: nObj = SVX_SNAP_CURRENCYFIELD; break; - case OBJ_DLG_FORMATTEDFIELD: nObj = SVX_SNAP_FORMATTEDFIELD; break; - case OBJ_DLG_PATTERNFIELD: nObj = SVX_SNAP_PATTERNFIELD; break; - case OBJ_DLG_FILECONTROL: nObj = SVX_SNAP_FILECONTROL; break; - case OBJ_DLG_SPINBUTTON: nObj = SVX_SNAP_SPINBUTTON; break; - case OBJ_DLG_TREECONTROL: nObj = SVX_SNAP_TREECONTROL; break; - default: nObj = 0; - } - SAL_INFO_IF( !nObj, "basctl.basicide", "SID_CHOOSE_CONTROLS: unknown" ); - aItem.SetValue( nObj ); - } - - rSet.Put( aItem ); - } } break; @@ -372,6 +329,40 @@ void DialogWindow::GetState( SfxItemSet& rSet ) { if ( !bIsCalc || IsReadOnly() ) rSet.DisableItem( nWh ); + else + rSet.Put( SfxBoolItem( nWh, m_nControlSlotId == nWh ) ); + } + break; + + case SID_INSERT_SELECT: + case SID_INSERT_PUSHBUTTON: + case SID_INSERT_RADIOBUTTON: + case SID_INSERT_CHECKBOX: + case SID_INSERT_LISTBOX: + case SID_INSERT_COMBOBOX: + case SID_INSERT_GROUPBOX: + case SID_INSERT_EDIT: + case SID_INSERT_FIXEDTEXT: + case SID_INSERT_IMAGECONTROL: + case SID_INSERT_PROGRESSBAR: + case SID_INSERT_HSCROLLBAR: + case SID_INSERT_VSCROLLBAR: + case SID_INSERT_HFIXEDLINE: + case SID_INSERT_VFIXEDLINE: + case SID_INSERT_DATEFIELD: + case SID_INSERT_TIMEFIELD: + case SID_INSERT_NUMERICFIELD: + case SID_INSERT_CURRENCYFIELD: + case SID_INSERT_FORMATTEDFIELD: + case SID_INSERT_PATTERNFIELD: + case SID_INSERT_FILECONTROL: + case SID_INSERT_SPINBUTTON: + case SID_INSERT_TREECONTROL: + { + if ( IsReadOnly() ) + rSet.DisableItem( nWh ); + else + rSet.Put( SfxBoolItem( nWh, m_nControlSlotId == nWh ) ); } break; case SID_SHOWLINES: @@ -394,7 +385,10 @@ void DialogWindow::GetState( SfxItemSet& rSet ) void DialogWindow::ExecuteCommand( SfxRequest& rReq ) { - switch ( rReq.GetSlot() ) + const sal_uInt16 nSlotId(rReq.GetSlot()); + sal_uInt16 nInsertObj(0); + + switch ( nSlotId ) { case SID_CUT: if ( !IsReadOnly() ) @@ -423,198 +417,102 @@ void DialogWindow::ExecuteCommand( SfxRequest& rReq ) pBindings->Invalidate( SID_DOC_MODIFIED ); } break; + case SID_INSERT_FORM_RADIO: - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_FORMRADIO ); + nInsertObj = OBJ_DLG_FORMRADIO; break; case SID_INSERT_FORM_CHECK: - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_FORMCHECK ); + nInsertObj = OBJ_DLG_FORMCHECK; break; case SID_INSERT_FORM_LIST: - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_FORMLIST ); + nInsertObj = OBJ_DLG_FORMLIST; break; case SID_INSERT_FORM_COMBO: - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_FORMCOMBO ); + nInsertObj = OBJ_DLG_FORMCOMBO; break; case SID_INSERT_FORM_SPIN: - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_FORMSPIN ); + nInsertObj = OBJ_DLG_FORMSPIN; break; case SID_INSERT_FORM_VSCROLL: - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_FORMVSCROLL ); + nInsertObj = OBJ_DLG_FORMVSCROLL; break; case SID_INSERT_FORM_HSCROLL: - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_FORMHSCROLL ); + nInsertObj = OBJ_DLG_FORMHSCROLL; + break; + case SID_INSERT_PUSHBUTTON: + nInsertObj = OBJ_DLG_PUSHBUTTON; + break; + case SID_INSERT_RADIOBUTTON: + nInsertObj = OBJ_DLG_RADIOBUTTON; + break; + case SID_INSERT_CHECKBOX: + nInsertObj = OBJ_DLG_CHECKBOX; + break; + case SID_INSERT_LISTBOX: + nInsertObj = OBJ_DLG_LISTBOX; + break; + case SID_INSERT_COMBOBOX: + nInsertObj = OBJ_DLG_COMBOBOX; + break; + case SID_INSERT_GROUPBOX: + nInsertObj = OBJ_DLG_GROUPBOX; + break; + case SID_INSERT_EDIT: + nInsertObj = OBJ_DLG_EDIT; + break; + case SID_INSERT_FIXEDTEXT: + nInsertObj = OBJ_DLG_FIXEDTEXT; + break; + case SID_INSERT_IMAGECONTROL: + nInsertObj = OBJ_DLG_IMAGECONTROL; + break; + case SID_INSERT_PROGRESSBAR: + nInsertObj = OBJ_DLG_PROGRESSBAR; + break; + case SID_INSERT_HSCROLLBAR: + nInsertObj = OBJ_DLG_HSCROLLBAR; + break; + case SID_INSERT_VSCROLLBAR: + nInsertObj = OBJ_DLG_VSCROLLBAR; + break; + case SID_INSERT_HFIXEDLINE: + nInsertObj = OBJ_DLG_HFIXEDLINE; + break; + case SID_INSERT_VFIXEDLINE: + nInsertObj = OBJ_DLG_VFIXEDLINE; + break; + case SID_INSERT_DATEFIELD: + nInsertObj = OBJ_DLG_DATEFIELD; + break; + case SID_INSERT_TIMEFIELD: + nInsertObj = OBJ_DLG_TIMEFIELD; + break; + case SID_INSERT_NUMERICFIELD: + nInsertObj = OBJ_DLG_NUMERICFIELD; + break; + case SID_INSERT_CURRENCYFIELD: + nInsertObj = OBJ_DLG_CURRENCYFIELD; + break; + case SID_INSERT_FORMATTEDFIELD: + nInsertObj = OBJ_DLG_FORMATTEDFIELD; + break; + case SID_INSERT_PATTERNFIELD: + nInsertObj = OBJ_DLG_PATTERNFIELD; + break; + case SID_INSERT_FILECONTROL: + nInsertObj = OBJ_DLG_FILECONTROL; + break; + case SID_INSERT_SPINBUTTON: + nInsertObj = OBJ_DLG_SPINBUTTON; + break; + case SID_INSERT_TREECONTROL: + nInsertObj = OBJ_DLG_TREECONTROL; + break; + case SID_INSERT_SELECT: + m_nControlSlotId = nSlotId; + GetEditor().SetMode( DlgEditor::SELECT ); + Shell::InvalidateControlSlots(); break; - case SID_CHOOSE_CONTROLS: - { - const SfxItemSet* pArgs = rReq.GetArgs(); - assert(pArgs && "Nix Args"); - - const SfxAllEnumItem& rItem = static_cast<const SfxAllEnumItem&>(pArgs->Get( SID_CHOOSE_CONTROLS )); - switch( rItem.GetValue() ) - { - case SVX_SNAP_PUSHBUTTON: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_PUSHBUTTON ); - } - break; - case SVX_SNAP_RADIOBUTTON: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_RADIOBUTTON ); - } - break; - case SVX_SNAP_CHECKBOX: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_CHECKBOX); - } - break; - case SVX_SNAP_LISTBOX: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_LISTBOX ); - } - break; - case SVX_SNAP_COMBOBOX: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_COMBOBOX ); - } - break; - case SVX_SNAP_GROUPBOX: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_GROUPBOX ); - } - break; - case SVX_SNAP_EDIT: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_EDIT ); - } - break; - case SVX_SNAP_FIXEDTEXT: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_FIXEDTEXT ); - } - break; - case SVX_SNAP_IMAGECONTROL: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_IMAGECONTROL ); - } - break; - case SVX_SNAP_PROGRESSBAR: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_PROGRESSBAR ); - } - break; - case SVX_SNAP_HSCROLLBAR: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_HSCROLLBAR ); - } - break; - case SVX_SNAP_VSCROLLBAR: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_VSCROLLBAR ); - } - break; - case SVX_SNAP_HFIXEDLINE: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_HFIXEDLINE ); - } - break; - case SVX_SNAP_VFIXEDLINE: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_VFIXEDLINE ); - } - break; - case SVX_SNAP_DATEFIELD: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_DATEFIELD ); - } - break; - case SVX_SNAP_TIMEFIELD: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_TIMEFIELD ); - } - break; - case SVX_SNAP_NUMERICFIELD: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_NUMERICFIELD ); - } - break; - case SVX_SNAP_CURRENCYFIELD: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_CURRENCYFIELD ); - } - break; - case SVX_SNAP_FORMATTEDFIELD: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_FORMATTEDFIELD ); - } - break; - case SVX_SNAP_PATTERNFIELD: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_PATTERNFIELD ); - } - break; - case SVX_SNAP_FILECONTROL: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_FILECONTROL ); - } - break; - case SVX_SNAP_SPINBUTTON: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_SPINBUTTON ); - } - break; - case SVX_SNAP_TREECONTROL: - { - GetEditor().SetMode( DlgEditor::INSERT ); - GetEditor().SetInsertObj( OBJ_DLG_TREECONTROL ); - } - break; - - case SVX_SNAP_SELECT: - { - GetEditor().SetMode( DlgEditor::SELECT ); - } - break; - } - - if ( rReq.GetModifier() & KEY_MOD1 ) - { - if ( GetEditor().GetMode() == DlgEditor::INSERT ) - GetEditor().CreateDefaultObject(); - } - - if (SfxBindings* pBindings = GetBindingsPtr()) - pBindings->Invalidate( SID_DOC_MODIFIED ); - } - break; case SID_DIALOG_TESTMODE: { @@ -646,6 +544,22 @@ void DialogWindow::ExecuteCommand( SfxRequest& rReq ) break; } + if ( nInsertObj ) + { + m_nControlSlotId = nSlotId; + GetEditor().SetMode( DlgEditor::INSERT ); + GetEditor().SetInsertObj( nInsertObj ); + + if ( rReq.GetModifier() & KEY_MOD1 ) + { + GetEditor().CreateDefaultObject(); + if (SfxBindings* pBindings = GetBindingsPtr()) + pBindings->Invalidate( SID_DOC_MODIFIED ); + } + + Shell::InvalidateControlSlots(); + } + rReq.Done(); } diff --git a/basctl/source/basicide/basides1.cxx b/basctl/source/basicide/basides1.cxx index 3202ce4dfe87..00962308c1d6 100644 --- a/basctl/source/basicide/basides1.cxx +++ b/basctl/source/basicide/basides1.cxx @@ -806,6 +806,30 @@ void Shell::GetState(SfxItemSet &rSet) break; case SID_CHOOSE_CONTROLS: case SID_DIALOG_TESTMODE: + case SID_INSERT_SELECT: + case SID_INSERT_PUSHBUTTON: + case SID_INSERT_RADIOBUTTON: + case SID_INSERT_CHECKBOX: + case SID_INSERT_LISTBOX: + case SID_INSERT_COMBOBOX: + case SID_INSERT_GROUPBOX: + case SID_INSERT_EDIT: + case SID_INSERT_FIXEDTEXT: + case SID_INSERT_IMAGECONTROL: + case SID_INSERT_PROGRESSBAR: + case SID_INSERT_HSCROLLBAR: + case SID_INSERT_VSCROLLBAR: + case SID_INSERT_HFIXEDLINE: + case SID_INSERT_VFIXEDLINE: + case SID_INSERT_DATEFIELD: + case SID_INSERT_TIMEFIELD: + case SID_INSERT_NUMERICFIELD: + case SID_INSERT_CURRENCYFIELD: + case SID_INSERT_FORMATTEDFIELD: + case SID_INSERT_PATTERNFIELD: + case SID_INSERT_FILECONTROL: + case SID_INSERT_SPINBUTTON: + case SID_INSERT_TREECONTROL: case SID_INSERT_FORM_RADIO: case SID_INSERT_FORM_CHECK: case SID_INSERT_FORM_LIST: @@ -1064,6 +1088,7 @@ void Shell::SetCurWindow( BaseWindow* pNewWin, bool bUpdateTabBar, bool bRemembe aObjectCatalog->SetCurrentEntry(pCurWin); SetUndoManager( pCurWin ? pCurWin->GetUndoManager() : nullptr ); InvalidateBasicIDESlots(); + InvalidateControlSlots(); EnableScrollbars(pCurWin != nullptr); if ( m_pCurLocalizationMgr ) diff --git a/basctl/source/basicide/basidesh.cxx b/basctl/source/basicide/basidesh.cxx index bea3e699a8d8..3ec5b45b374b 100644 --- a/basctl/source/basicide/basidesh.cxx +++ b/basctl/source/basicide/basidesh.cxx @@ -46,7 +46,6 @@ #define basctl_Shell #define SFX_TYPEMAP -#include <idetemp.hxx> #include <basslots.hxx> #ifdef DISABLE_DYNLOADING @@ -840,7 +839,7 @@ void Shell::InvalidateBasicIDESlots() pBindings->Invalidate( SID_BASICIDE_MANAGEBRKPNTS ); pBindings->Invalidate( SID_BASICIDE_ADDWATCH ); pBindings->Invalidate( SID_BASICIDE_REMOVEWATCH ); - pBindings->Invalidate( SID_CHOOSE_CONTROLS ); + pBindings->Invalidate( SID_PRINTDOC ); pBindings->Invalidate( SID_PRINTDOCDIRECT ); pBindings->Invalidate( SID_SETUPPRINTER ); @@ -855,6 +854,49 @@ void Shell::InvalidateBasicIDESlots() } } +void Shell::InvalidateControlSlots() +{ + if (GetShell()) + { + if (SfxBindings* pBindings = GetBindingsPtr()) + { + pBindings->Invalidate( SID_INSERT_FORM_RADIO ); + pBindings->Invalidate( SID_INSERT_FORM_CHECK ); + pBindings->Invalidate( SID_INSERT_FORM_LIST ); + pBindings->Invalidate( SID_INSERT_FORM_COMBO ); + pBindings->Invalidate( SID_INSERT_FORM_VSCROLL ); + pBindings->Invalidate( SID_INSERT_FORM_HSCROLL ); + pBindings->Invalidate( SID_INSERT_FORM_SPIN ); + + pBindings->Invalidate( SID_INSERT_SELECT ); + pBindings->Invalidate( SID_INSERT_PUSHBUTTON ); + pBindings->Invalidate( SID_INSERT_RADIOBUTTON ); + pBindings->Invalidate( SID_INSERT_CHECKBOX ); + pBindings->Invalidate( SID_INSERT_LISTBOX ); + pBindings->Invalidate( SID_INSERT_COMBOBOX ); + pBindings->Invalidate( SID_INSERT_GROUPBOX ); + pBindings->Invalidate( SID_INSERT_EDIT ); + pBindings->Invalidate( SID_INSERT_FIXEDTEXT ); + pBindings->Invalidate( SID_INSERT_IMAGECONTROL ); + pBindings->Invalidate( SID_INSERT_PROGRESSBAR ); + pBindings->Invalidate( SID_INSERT_HSCROLLBAR ); + pBindings->Invalidate( SID_INSERT_VSCROLLBAR ); + pBindings->Invalidate( SID_INSERT_HFIXEDLINE ); + pBindings->Invalidate( SID_INSERT_VFIXEDLINE ); + pBindings->Invalidate( SID_INSERT_DATEFIELD ); + pBindings->Invalidate( SID_INSERT_TIMEFIELD ); + pBindings->Invalidate( SID_INSERT_NUMERICFIELD ); + pBindings->Invalidate( SID_INSERT_CURRENCYFIELD ); + pBindings->Invalidate( SID_INSERT_FORMATTEDFIELD ); + pBindings->Invalidate( SID_INSERT_PATTERNFIELD ); + pBindings->Invalidate( SID_INSERT_FILECONTROL ); + pBindings->Invalidate( SID_INSERT_SPINBUTTON ); + pBindings->Invalidate( SID_INSERT_TREECONTROL ); + pBindings->Invalidate( SID_CHOOSE_CONTROLS ); + } + } +} + void Shell::EnableScrollbars( bool bEnable ) { aHScrollBar->Enable(bEnable); diff --git a/basctl/source/basicide/idetemp.hxx b/basctl/source/basicide/idetemp.hxx deleted file mode 100644 index 178c1e505fa0..000000000000 --- a/basctl/source/basicide/idetemp.hxx +++ /dev/null @@ -1,57 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ -#ifndef INCLUDED_BASCTL_SOURCE_BASICIDE_IDETEMP_HXX -#define INCLUDED_BASCTL_SOURCE_BASICIDE_IDETEMP_HXX - - -enum SvxChooseControlEnum -{ - SVX_SNAP_PUSHBUTTON, - SVX_SNAP_CHECKBOX, - SVX_SNAP_RADIOBUTTON, - SVX_SNAP_SPINBUTTON, - SVX_SNAP_FIXEDTEXT, - SVX_SNAP_GROUPBOX, - SVX_SNAP_LISTBOX, - SVX_SNAP_COMBOBOX, - SVX_SNAP_EDIT, - SVX_SNAP_HSCROLLBAR, - SVX_SNAP_VSCROLLBAR, - SVX_SNAP_PREVIEW, - SVX_SNAP_SELECT, - SVX_SNAP_URLBUTTON, - SVX_SNAP_IMAGECONTROL, - SVX_SNAP_PROGRESSBAR, - SVX_SNAP_HFIXEDLINE, - SVX_SNAP_VFIXEDLINE, - SVX_SNAP_DATEFIELD, - SVX_SNAP_TIMEFIELD, - SVX_SNAP_NUMERICFIELD, - SVX_SNAP_CURRENCYFIELD, - SVX_SNAP_FORMATTEDFIELD, - SVX_SNAP_PATTERNFIELD, - SVX_SNAP_FILECONTROL, - SVX_SNAP_TREECONTROL, -}; - -#define SvxChooseControlItem SfxAllEnumItem - -#endif // INCLUDED_BASCTL_SOURCE_BASICIDE_IDETEMP_HXX - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/basctl/source/inc/baside3.hxx b/basctl/source/inc/baside3.hxx index 35c4161c5a89..c6510010b555 100644 --- a/basctl/source/inc/baside3.hxx +++ b/basctl/source/inc/baside3.hxx @@ -60,6 +60,7 @@ private: std::unique_ptr<DlgEditor> m_pEditor; std::unique_ptr<SfxUndoManager> m_pUndoMgr; // never nullptr OUString m_sCurPath; + sal_uInt16 m_nControlSlotId; protected: virtual void Paint(vcl::RenderContext& rRenderContext, const Rectangle& rRect) override; diff --git a/basctl/source/inc/basidesh.hxx b/basctl/source/inc/basidesh.hxx index ceb52885ad54..63117788f8e0 100644 --- a/basctl/source/inc/basidesh.hxx +++ b/basctl/source/inc/basidesh.hxx @@ -195,6 +195,8 @@ public: const ScriptDocument& rSourceDoc, const OUString& rSourceLibName, const ScriptDocument& rDestDoc, const OUString& rDestLibName, const OUString& rDlgName ); + static void InvalidateControlSlots(); + virtual css::uno::Reference< css::frame::XModel > GetCurrentDocument() const override; diff --git a/include/editeng/svxenum.hxx b/include/editeng/svxenum.hxx index 5cf21d807a02..626383329990 100644 --- a/include/editeng/svxenum.hxx +++ b/include/editeng/svxenum.hxx @@ -129,16 +129,6 @@ enum SvxCellOrientation SVX_ORIENTATION_STACKED }; -enum SvxDrawAlignEnum -{ - SVX_OBJECT_ALIGN_LEFT, - SVX_OBJECT_ALIGN_CENTER, - SVX_OBJECT_ALIGN_RIGHT, - SVX_OBJECT_ALIGN_UP, - SVX_OBJECT_ALIGN_MIDDLE, - SVX_OBJECT_ALIGN_DOWN -}; - enum class SvxSpellArea { Body = 0, diff --git a/sc/sdi/drawsh.sdi b/sc/sdi/drawsh.sdi index 91af5543da25..3282485b1b3d 100644 --- a/sc/sdi/drawsh.sdi +++ b/sc/sdi/drawsh.sdi @@ -116,16 +116,7 @@ interface TableDraw SID_ATTR_TRANSFORM_AUTOHEIGHT [ StateMethod = GetDrawAttrStateForIFBX; Export = FALSE; ] // ---- Ausrichtungs - Funktionen: - //! PseudoSlots gibt Aerger mit Referenz-Dialogen ??? - SID_OBJECT_ALIGN - [ - PseudoSlots = FALSE ; - Export = FALSE ; - ExecMethod = ExecDrawFunc ; - StateMethod = GetDrawFuncState ; - GroupId = GID_FORMAT ; - ToolBoxConfig ; - ] + SID_OBJECT_ALIGN [ StateMethod = GetDrawFuncState; Export = FALSE; ] SID_OBJECT_ALIGN_LEFT [ ExecMethod = ExecDrawFunc; StateMethod = GetDrawFuncState; Export = FALSE; ] SID_OBJECT_ALIGN_CENTER [ ExecMethod = ExecDrawFunc; StateMethod = GetDrawFuncState; Export = FALSE; ] SID_OBJECT_ALIGN_RIGHT [ ExecMethod = ExecDrawFunc; StateMethod = GetDrawFuncState; Export = FALSE; ] diff --git a/sc/source/ui/app/typemap.cxx b/sc/source/ui/app/typemap.cxx index 18660b9c87f2..684f4cc622b0 100644 --- a/sc/source/ui/app/typemap.cxx +++ b/sc/source/ui/app/typemap.cxx @@ -100,7 +100,6 @@ #include <svx/sdprcitm.hxx> #include <svx/sdmetitm.hxx> -#define SvxDrawAlignItem SfxAllEnumItem #define avmedia_MediaItem ::avmedia::MediaItem #ifdef DISABLE_DYNLOADING diff --git a/sc/source/ui/drawfunc/drawsh5.cxx b/sc/source/ui/drawfunc/drawsh5.cxx index 062a58a075ec..f862452dcb0a 100644 --- a/sc/source/ui/drawfunc/drawsh5.cxx +++ b/sc/source/ui/drawfunc/drawsh5.cxx @@ -241,15 +241,8 @@ void ScDrawShell::ExecDrawFunc( SfxRequest& rReq ) SfxBindings& rBindings = pViewData->GetBindings(); ScTabView* pTabView = pViewData->GetView(); ScDrawView* pView = pTabView->GetScDrawView(); - const SfxItemSet *pArgs = rReq.GetArgs(); sal_uInt16 nSlotId = rReq.GetSlot(); - //!!! - // wer weiss, wie lange das funktioniert? (->vom Abreisscontrol funktioniert es) - - if (nSlotId == SID_OBJECT_ALIGN && pArgs) - nSlotId = SID_OBJECT_ALIGN + static_cast<const SfxEnumItemInterface&>(pArgs->Get(SID_OBJECT_ALIGN)).GetEnumValue() + 1; - switch (nSlotId) { case SID_OBJECT_HEAVEN: diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi index a0e19e827029..b5f40fff9084 100644 --- a/sd/sdi/_drvwsh.sdi +++ b/sd/sdi/_drvwsh.sdi @@ -1238,14 +1238,11 @@ interface DrawView StateMethod = GetMenuState ; ] - SfxVoidItem ObjectAlign SID_OBJECT_ALIGN // ole : no, status : ? + SID_OBJECT_ALIGN // ole : no, status : ? [ StateMethod = GetMenuState ; GroupId = GID_DOCUMENT ; Export ; - PseudoSlots = FALSE ; - ToolBoxConfig ; - MenuConfig = TRUE; ] SID_ZOOM_TOOLBOX // ole : no, status : ? diff --git a/svx/sdi/fmslots.sdi b/svx/sdi/fmslots.sdi index beb700e54b4a..8eda2c5d981d 100644 --- a/svx/sdi/fmslots.sdi +++ b/svx/sdi/fmslots.sdi @@ -19,10 +19,7 @@ interface Form { SID_FM_CONFIG // ole : no, status : ? - [ - ExecMethod = Execute ; - StateMethod = GetState ; - ] + [] SID_FM_PUSHBUTTON [ ExecMethod = Execute ; @@ -627,10 +624,7 @@ shell FmFormShell import Form; SID_FM_CONFIG // ole : no, status : ? - [ - ExecMethod = Execute ; - StateMethod = GetState ; - ] + [] SID_FM_MORE_CONTROLS [ ExecMethod = Execute ; diff --git a/svx/sdi/svx.sdi b/svx/sdi/svx.sdi index 33daa10e87d8..bc6d05596acd 100644 --- a/svx/sdi/svx.sdi +++ b/svx/sdi/svx.sdi @@ -1376,7 +1376,7 @@ SfxBoolItem CheckBox SID_FM_CHECKBOX ] -SvxChooseControlItem ChooseControls SID_CHOOSE_CONTROLS +SfxVoidItem ChooseControls SID_CHOOSE_CONTROLS [ AutoUpdate = TRUE, @@ -1392,8 +1392,6 @@ SvxChooseControlItem ChooseControls SID_CHOOSE_CONTROLS MenuConfig = FALSE, ToolBoxConfig = TRUE, GroupId = GID_CONTROLS; - PseudoSlots = TRUE; - PseudoPrefix = SID_INSERT; ] @@ -1679,7 +1677,7 @@ SfxBoolItem Combobox SID_INSERT_COMBOBOX ] -SfxUInt16Item Config SID_FM_CONFIG +SfxVoidItem Config SID_FM_CONFIG [ AutoUpdate = TRUE, @@ -1695,8 +1693,6 @@ SfxUInt16Item Config SID_FM_CONFIG MenuConfig = FALSE, ToolBoxConfig = TRUE, GroupId = GID_CONTROLS; - PseudoSlots = TRUE; - PseudoPrefix = SID_INSERT; ] @@ -1716,8 +1712,6 @@ SfxBoolItem MoreControls SID_FM_MORE_CONTROLS MenuConfig = FALSE, ToolBoxConfig = TRUE, GroupId = GID_CONTROLS; - PseudoSlots = TRUE; - PseudoPrefix = SID_INSERT; ] @@ -1737,8 +1731,6 @@ SfxBoolItem FormDesignTools SID_FM_FORM_DESIGN_TOOLS MenuConfig = FALSE, ToolBoxConfig = TRUE, GroupId = GID_CONTROLS; - PseudoSlots = TRUE; - PseudoPrefix = SID_INSERT; ] @@ -5799,7 +5791,7 @@ SfxBoolItem InsertNumericField SID_INSERT_NUMERICFIELD ] -SvxDrawAlignItem ObjectAlign SID_OBJECT_ALIGN +SfxVoidItem ObjectAlign SID_OBJECT_ALIGN [ AutoUpdate = FALSE, @@ -5815,8 +5807,6 @@ SvxDrawAlignItem ObjectAlign SID_OBJECT_ALIGN MenuConfig = FALSE, ToolBoxConfig = TRUE, GroupId = GID_FORMAT; - PseudoSlots = TRUE; - PseudoPrefix = SID_OBJECT_ALIGN; ] @@ -10838,8 +10828,6 @@ SfxBoolItem ColorSettings SID_COLOR_SETTINGS MenuConfig = FALSE, ToolBoxConfig = TRUE, GroupId = GID_MODIFY; - PseudoSlots = TRUE; - PseudoPrefix = SID_INSERT; ] diff --git a/svx/sdi/svxitems.sdi b/svx/sdi/svxitems.sdi index 5a047e703b84..3d264f483dc2 100644 --- a/svx/sdi/svxitems.sdi +++ b/svx/sdi/svxitems.sdi @@ -42,47 +42,6 @@ enum SvxCellOrientationEnum SVX_ORIENTATION_STACKED }; -enum SvxChooseControlEnum -{ - SVX_SNAP_PUSHBUTTON, - SVX_SNAP_CHECKBOX, - SVX_SNAP_RADIOBUTTON, - SVX_SNAP_SPINBUTTON, - SVX_SNAP_FIXEDTEXT, - SVX_SNAP_GROUPBOX, - SVX_SNAP_LISTBOX, - SVX_SNAP_COMBOBOX, - SVX_SNAP_EDIT, - SVX_SNAP_HSCROLLBAR, - SVX_SNAP_VSCROLLBAR, - SVX_SNAP_PREVIEW, - SVX_SNAP_SELECT, - SVX_SNAP_URLBUTTON, - SVX_SNAP_IMAGECONTROL, - SVX_SNAP_PROGRESSBAR, - SVX_SNAP_HFIXEDLINE, - SVX_SNAP_VFIXEDLINE, - SVX_SNAP_DATEFIELD, - SVX_SNAP_TIMEFIELD, - SVX_SNAP_NUMERICFIELD, - SVX_SNAP_CURRENCYFIELD, - SVX_SNAP_FORMATTEDFIELD, - SVX_SNAP_PATTERNFIELD, - SVX_SNAP_FILECONTROL, - SVX_SNAP_TREECONTROL -}; -item SvxChooseControlEnum SvxChooseControlItem; - -enum SvxDrawAlignEnum -{ - SVX_OBJECT_ALIGN_LEFT, - SVX_OBJECT_ALIGN_CENTER, - SVX_OBJECT_ALIGN_RIGHT, - SVX_OBJECT_ALIGN_UP, - SVX_OBJECT_ALIGN_MIDDLE, - SVX_OBJECT_ALIGN_DOWN -}; - enum SvxAdjust { SVX_ADJUST_LEFT, @@ -228,7 +187,6 @@ item FontItalic SvxPostureItem; // enum item BOOL SvxPrintItem; item UINT16 SvxPropSizeItem; // derived from UInt16Item item BOOL SvxShadowedItem; -item SvxDrawAlignEnum SvxDrawAlignItem; item BYTE SvxWidowsItem; item BOOL SvxWordLineModeItem; item SvxCellHorJustifyEnum SvxHorJustifyItem; diff --git a/svx/source/form/fmshell.cxx b/svx/source/form/fmshell.cxx index 6f75d247510b..31306a94dd73 100644 --- a/svx/source/form/fmshell.cxx +++ b/svx/source/form/fmshell.cxx @@ -377,7 +377,6 @@ void FmFormShell::Execute(SfxRequest &rReq) case SID_FM_SCROLLBAR: case SID_FM_SPINBUTTON: m_nLastSlot = nSlot; - GetViewShell()->GetViewFrame()->GetBindings().Invalidate( SID_FM_CONFIG ); break; } @@ -584,7 +583,6 @@ void FmFormShell::Execute(SfxRequest &rReq) break; case SID_FM_LEAVE_CREATE: m_nLastSlot = 0; - GetViewShell()->GetViewFrame()->GetBindings().Invalidate( SID_FM_CONFIG ); rReq.Done(); break; case SID_FM_SHOW_PROPERTY_BROWSER: @@ -659,7 +657,6 @@ void FmFormShell::Execute(SfxRequest &rReq) rReq.Done(); m_nLastSlot = SID_FM_DESIGN_MODE; - GetViewShell()->GetViewFrame()->GetBindings().Invalidate( SID_FM_CONFIG ); } break; @@ -988,9 +985,6 @@ void FmFormShell::GetState(SfxItemSet &rSet) if (!m_pFormView || !m_bDesignMode || !GetImpl()->getCurrentForm().is() ) rSet.DisableItem( nWhich ); break; - case SID_FM_CONFIG: - rSet.Put(SfxUInt16Item(nWhich, m_nLastSlot)); - break; case SID_FM_DESIGN_MODE: if (!m_pFormView || GetImpl()->IsReadonlyDoc() ) rSet.DisableItem( nWhich ); diff --git a/sw/sdi/drwbassh.sdi b/sw/sdi/drwbassh.sdi index 4dd539504f8c..3653e0408856 100644 --- a/sw/sdi/drwbassh.sdi +++ b/sw/sdi/drwbassh.sdi @@ -28,9 +28,44 @@ shell SwDrawBaseShell: SwBaseShell SID_OBJECT_ALIGN [ - ExecMethod = Execute ; StateMethod = GetState ; DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; ] + SID_OBJECT_ALIGN_LEFT + [ + ExecMethod = Execute; + StateMethod = GetState; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] + SID_OBJECT_ALIGN_CENTER + [ + ExecMethod = Execute; + StateMethod = GetState; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] + SID_OBJECT_ALIGN_RIGHT + [ + ExecMethod = Execute; + StateMethod = GetState; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] + SID_OBJECT_ALIGN_UP + [ + ExecMethod = Execute; + StateMethod = GetState; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] + SID_OBJECT_ALIGN_MIDDLE + [ + ExecMethod = Execute; + StateMethod = GetState; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] + SID_OBJECT_ALIGN_DOWN + [ + ExecMethod = Execute; + StateMethod = GetState; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] } diff --git a/sw/sdi/wdrwbase.sdi b/sw/sdi/wdrwbase.sdi index 60bb334ce5f8..afa74203db79 100644 --- a/sw/sdi/wdrwbase.sdi +++ b/sw/sdi/wdrwbase.sdi @@ -28,9 +28,44 @@ shell SwWebDrawBaseShell: SwBaseShell SID_OBJECT_ALIGN [ - ExecMethod = Execute ; StateMethod = GetState ; DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; ] + SID_OBJECT_ALIGN_LEFT + [ + ExecMethod = Execute; + StateMethod = GetState; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] + SID_OBJECT_ALIGN_CENTER + [ + ExecMethod = Execute; + StateMethod = GetState; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] + SID_OBJECT_ALIGN_RIGHT + [ + ExecMethod = Execute; + StateMethod = GetState; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] + SID_OBJECT_ALIGN_UP + [ + ExecMethod = Execute; + StateMethod = GetState; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] + SID_OBJECT_ALIGN_MIDDLE + [ + ExecMethod = Execute; + StateMethod = GetState; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] + SID_OBJECT_ALIGN_DOWN + [ + ExecMethod = Execute; + StateMethod = GetState; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] } diff --git a/sw/source/uibase/shells/drwbassh.cxx b/sw/source/uibase/shells/drwbassh.cxx index fa8f4c5383c3..361d69bf81fa 100644 --- a/sw/source/uibase/shells/drwbassh.cxx +++ b/sw/source/uibase/shells/drwbassh.cxx @@ -107,14 +107,6 @@ void SwDrawBaseShell::Execute(SfxRequest &rReq) if(pArgs) pArgs->GetItemState(nSlotId, false, &pItem); - //Special case align by menu - if(pItem && nSlotId == SID_OBJECT_ALIGN) - { - OSL_ENSURE(dynamic_cast<const SfxEnumItemInterface*>( pItem),"SfxEnumItem expected" ); - nSlotId = nSlotId + static_cast<const SfxEnumItemInterface*>(pItem)->GetEnumValue(); - nSlotId++; - } - bool bAlignPossible = pSh->IsAlignPossible(); bool bTopParam = true, bBottomParam = true; @@ -671,17 +663,15 @@ void SwDrawBaseShell::GetState(SfxItemSet& rSet) rSet.DisableItem( nWhich ); else { - SfxAllEnumItem aEnumItem(nWhich, USHRT_MAX); const SdrMarkList& rMarkList = pSdrView->GetMarkedObjectList(); //if only one object is selected it can only be vertically // aligned because it is character bound if( rMarkList.GetMarkCount() == 1 ) { - aEnumItem.DisableValue(SID_OBJECT_ALIGN_LEFT); - aEnumItem.DisableValue(SID_OBJECT_ALIGN_CENTER); - aEnumItem.DisableValue(SID_OBJECT_ALIGN_RIGHT); + rSet.DisableItem(SID_OBJECT_ALIGN_LEFT); + rSet.DisableItem(SID_OBJECT_ALIGN_CENTER); + rSet.DisableItem(SID_OBJECT_ALIGN_RIGHT); } - rSet.Put(aEnumItem); } break; diff --git a/sw/source/uibase/shells/slotadd.cxx b/sw/source/uibase/shells/slotadd.cxx index c0658a329e51..4ea84aa6969e 100644 --- a/sw/source/uibase/shells/slotadd.cxx +++ b/sw/source/uibase/shells/slotadd.cxx @@ -122,7 +122,6 @@ #include <svx/drawitem.hxx> #include <avmedia/mediaitem.hxx> -#define SvxDrawAlignItem SfxAllEnumItem #define avmedia_MediaItem ::avmedia::MediaItem #include <svx/xflftrit.hxx> diff --git a/sw/source/uibase/uiview/view2.cxx b/sw/source/uibase/uiview/view2.cxx index 558350d63e10..1e885c75eb74 100644 --- a/sw/source/uibase/uiview/view2.cxx +++ b/sw/source/uibase/uiview/view2.cxx @@ -1230,15 +1230,8 @@ void SwView::Execute(SfxRequest &rReq) case SID_ALIGN_ANY_BOTTOM : nAlias = SID_OBJECT_ALIGN_DOWN ; break; } } - //special handling for the draw shell - if(nAlias && (m_nSelectionType & (nsSelectionType::SEL_DRW))) - { - SfxAllEnumItem aEnumItem(SID_OBJECT_ALIGN, nAlias - SID_OBJECT_ALIGN_LEFT); - GetViewFrame()->GetDispatcher()->ExecuteList(SID_OBJECT_ALIGN, - SfxCallMode::ASYNCHRON, { &aEnumItem }); - } - else if(nAlias) //these slots are either re-mapped to text or object alignment + if (nAlias) GetViewFrame()->GetDispatcher()->Execute( nAlias, SfxCallMode::ASYNCHRON); } diff --git a/sw/source/uibase/uiview/viewstat.cxx b/sw/source/uibase/uiview/viewstat.cxx index 519e6c396e76..70468382d387 100644 --- a/sw/source/uibase/uiview/viewstat.cxx +++ b/sw/source/uibase/uiview/viewstat.cxx @@ -428,7 +428,6 @@ void SwView::GetState(SfxItemSet &rSet) if( !m_pShell ) SelectShell(); sal_uInt16 nAlias = 0; - bool bDraw = false; if( m_nSelectionType & (nsSelectionType::SEL_DRW_TXT|nsSelectionType::SEL_TXT) ) { switch( nWhich ) @@ -442,17 +441,6 @@ void SwView::GetState(SfxItemSet &rSet) case SID_ALIGN_ANY_BOTTOM : nAlias = SID_TABLE_VERT_BOTTOM; break; } } - else if(m_nSelectionType & (nsSelectionType::SEL_DRW)) - { - //the draw shell cannot provide a status per item - only one for SID_OBJECT_ALIGN - if(nWhich != SID_ALIGN_ANY_JUSTIFIED) - { - const SfxPoolItem* pItem = nullptr; - GetViewFrame()->GetDispatcher()->QueryState( SID_OBJECT_ALIGN, pItem ); - if(pItem) - bDraw = true; - } - } else { switch( nWhich ) @@ -471,10 +459,13 @@ void SwView::GetState(SfxItemSet &rSet) GetViewFrame()->GetDispatcher()->QueryState( nAlias, pState ); if(pState) { - std::unique_ptr<SfxPoolItem> pNewItem(pState->CloneSetWhich(nWhich)); - rSet.Put(*pNewItem); + if (!(m_nSelectionType & nsSelectionType::SEL_DRW)) + { + std::unique_ptr<SfxPoolItem> pNewItem(pState->CloneSetWhich(nWhich)); + rSet.Put(*pNewItem); + } } - else if(!bDraw) + else rSet.DisableItem(nWhich); } break; |