diff options
author | Maxim Monastirsky <momonasmon@gmail.com> | 2016-02-22 18:47:15 +0200 |
---|---|---|
committer | Maxim Monastirsky <momonasmon@gmail.com> | 2016-02-28 09:10:19 +0200 |
commit | 7affe26a1291eef8c77e890228061f13e987bff1 (patch) | |
tree | c39da5089c427f9cd5be8602449f302a573df7b3 /svx | |
parent | 5978b78eb2ee016bfda0a572ae1a9c86dc639241 (diff) |
Kill sfx2 menu support
Change-Id: I340a066881b1962a4bcd5a2b7d9a0425d8b9557c
Diffstat (limited to 'svx')
-rw-r--r-- | svx/inc/pch/precompiled_svx.hxx | 1 | ||||
-rw-r--r-- | svx/source/form/fmobjfac.cxx | 1 | ||||
-rw-r--r-- | svx/source/form/fmshimp.cxx | 75 | ||||
-rw-r--r-- | svx/source/inc/fmshimp.hxx | 20 |
4 files changed, 0 insertions, 97 deletions
diff --git a/svx/inc/pch/precompiled_svx.hxx b/svx/inc/pch/precompiled_svx.hxx index af1e100458e2..17916bdf49c9 100644 --- a/svx/inc/pch/precompiled_svx.hxx +++ b/svx/inc/pch/precompiled_svx.hxx @@ -326,7 +326,6 @@ #include <sfx2/dockwin.hxx> #include <sfx2/imagemgr.hxx> #include <sfx2/itemconnect.hxx> -#include <sfx2/mnuitem.hxx> #include <sfx2/module.hxx> #include <sfx2/objsh.hxx> #include <sfx2/request.hxx> diff --git a/svx/source/form/fmobjfac.cxx b/svx/source/form/fmobjfac.cxx index 115dfa0d739c..ded879ab6d73 100644 --- a/svx/source/form/fmobjfac.cxx +++ b/svx/source/form/fmobjfac.cxx @@ -67,7 +67,6 @@ FmFormObjFactory::FmFormObjFactory() SvxFmTbxCtlRecTotal::RegisterControl( SID_FM_RECORD_TOTAL ); SvxFmTbxPrevRec::RegisterControl( SID_FM_RECORD_PREV ); SvxFmTbxNextRec::RegisterControl( SID_FM_RECORD_NEXT ); - ControlConversionMenuController::RegisterControl(SID_FM_CHANGECONTROLTYPE); // Registrieung von globalen fenstern FmFieldWinMgr::RegisterChildWindow(); diff --git a/svx/source/form/fmshimp.cxx b/svx/source/form/fmshimp.cxx index 6c3fc9a9bc9e..d03efc06f4ad 100644 --- a/svx/source/form/fmshimp.cxx +++ b/svx/source/form/fmshimp.cxx @@ -4013,79 +4013,4 @@ bool SearchableControlIterator::ShouldStepInto(const Reference< XInterface>& /*x return true; } - -SFX_IMPL_MENU_CONTROL(ControlConversionMenuController, SfxBoolItem); - - -ControlConversionMenuController::ControlConversionMenuController( sal_uInt16 _nId, Menu& _rMenu, SfxBindings& _rBindings ) - :SfxMenuControl( _nId, _rBindings ) - ,m_pMainMenu( &_rMenu ) - ,m_pConversionMenu( nullptr ) -{ - if ( _nId == SID_FM_CHANGECONTROLTYPE ) - { - m_pConversionMenu = FmXFormShell::GetConversionMenu(); - _rMenu.SetPopupMenu( _nId, m_pConversionMenu ); - - for (sal_Int16 i=0; i<m_pConversionMenu->GetItemCount(); ++i) - { - _rBindings.Invalidate(m_pConversionMenu->GetItemId(i)); - m_aStatusForwarders.push_back(o3tl::make_unique<SfxStatusForwarder>(m_pConversionMenu->GetItemId(i), *this)); - } - } -} - - -ControlConversionMenuController::~ControlConversionMenuController() -{ - m_pMainMenu->SetPopupMenu(SID_FM_CHANGECONTROLTYPE, nullptr); - delete m_pConversionMenu; -} - - -void ControlConversionMenuController::StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState) -{ - if (nSID == GetId()) - SfxMenuControl::StateChanged(nSID, eState, pState); - else if (FmXFormShell::isControlConversionSlot(nSID)) - { - if ((m_pConversionMenu->GetItemPos(nSID) != MENU_ITEM_NOTFOUND) && (eState == SfxItemState::DISABLED)) - { - m_pConversionMenu->RemoveItem(m_pConversionMenu->GetItemPos(nSID)); - } - else if ((m_pConversionMenu->GetItemPos(nSID) == MENU_ITEM_NOTFOUND) && (eState != SfxItemState::DISABLED)) - { - // We can't simply re-insert the item because we have a clear order for all the our items. - // So first we have to determine the position of the item to insert. - std::unique_ptr<PopupMenu> pSource(FmXFormShell::GetConversionMenu()); - sal_uInt16 nSourcePos = pSource->GetItemPos(nSID); - DBG_ASSERT(nSourcePos != MENU_ITEM_NOTFOUND, "ControlConversionMenuController::StateChanged : FmXFormShell supplied an invalid menu !"); - sal_uInt16 nPrevInSource = nSourcePos; - sal_uInt16 nPrevInConversion = MENU_ITEM_NOTFOUND; - while (nPrevInSource>0) - { - sal_Int16 nPrevId = pSource->GetItemId(--nPrevInSource); - - // do we have the source's predecessor in our conversion menu, too ? - nPrevInConversion = m_pConversionMenu->GetItemPos(nPrevId); - if (nPrevInConversion != MENU_ITEM_NOTFOUND) - break; - } - if (MENU_ITEM_NOTFOUND == nPrevInConversion) - // none of the items which precede the nSID-slot in the source menu are present in our conversion menu - nPrevInConversion = sal::static_int_cast< sal_uInt16 >(-1); // put the item at the first position - m_pConversionMenu->InsertItem(nSID, pSource->GetItemText(nSID), - pSource->GetItemBits(nSID), OString(), ++nPrevInConversion); - m_pConversionMenu->SetItemImage(nSID, pSource->GetItemImage(nSID)); - m_pConversionMenu->SetHelpId(nSID, pSource->GetHelpId(nSID)); - } - m_pMainMenu->EnableItem(SID_FM_CHANGECONTROLTYPE, m_pConversionMenu->GetItemCount() > 0); - } - else - { - OSL_FAIL("ControlConversionMenuController::StateChanged : unknown id !"); - } -} - - /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/svx/source/inc/fmshimp.hxx b/svx/source/inc/fmshimp.hxx index 81057e8aa294..2743587ed22b 100644 --- a/svx/source/inc/fmshimp.hxx +++ b/svx/source/inc/fmshimp.hxx @@ -46,7 +46,6 @@ #include <svx/svxids.hrc> #include <svl/lstner.hxx> -#include <sfx2/mnuitem.hxx> #include "svx/fmtools.hxx" #include "svx/fmsrccfg.hxx" #include <osl/mutex.hxx> @@ -567,25 +566,6 @@ public: virtual void Invalidate() override { IndexAccessIterator::Invalidate(); m_sCurrentValue.clear(); } }; - -class SVX_DLLPUBLIC ControlConversionMenuController : public SfxMenuControl -{ - ControlConversionMenuController( const ControlConversionMenuController&) = delete; - ControlConversionMenuController& operator =( const ControlConversionMenuController&) = delete; - -protected: - std::vector<std::unique_ptr<SfxStatusForwarder> > m_aStatusForwarders; - Menu* m_pMainMenu; - PopupMenu* m_pConversionMenu; - -public: - SVX_DLLPRIVATE ControlConversionMenuController(sal_uInt16 nId, Menu& rMenu, SfxBindings& rBindings); - SVX_DLLPRIVATE virtual ~ControlConversionMenuController(); - SFX_DECL_MENU_CONTROL(); - - SVX_DLLPRIVATE virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState) override; -}; - #endif // INCLUDED_SVX_SOURCE_INC_FMSHIMP_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |