diff options
author | Caolán McNamara <caolanm@redhat.com> | 2011-10-27 22:33:22 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2011-10-28 10:22:59 +0100 |
commit | 533ee0b970497d979a733fdca674e2aa18c30197 (patch) | |
tree | 846dd5ec1b3b4cf4aeb96d79de220fbb16174c64 /sfx2 | |
parent | 576d7aaadaf97fd504d2e8be258a4a5b738837f3 (diff) |
remove dangling objmnctl.cxx
Diffstat (limited to 'sfx2')
-rw-r--r-- | sfx2/source/menu/objmnctl.cxx | 159 |
1 files changed, 0 insertions, 159 deletions
diff --git a/sfx2/source/menu/objmnctl.cxx b/sfx2/source/menu/objmnctl.cxx deleted file mode 100644 index 1042d48bf354..000000000000 --- a/sfx2/source/menu/objmnctl.cxx +++ /dev/null @@ -1,159 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ - -// MARKER(update_precomp.py): autogen include statement, do not remove -#include "precompiled_sfx2.hxx" -#include <com/sun/star/embed/VerbDescriptor.hpp> -#include <com/sun/star/embed/VerbAttributes.hpp> - -#include <vcl/menu.hxx> -#include <svl/stritem.hxx> - -#include <sfx2/sfxsids.hrc> -#include "objmnctl.hxx" -#include <sfx2/dispatch.hxx> -#include <sfx2/viewsh.hxx> -#include <sfx2/viewfrm.hxx> -#include <sfx2/objsh.hxx> - -// STATIC DATA ----------------------------------------------------------- - -SFX_IMPL_MENU_CONTROL(SfxObjectVerbsControl, SfxStringItem); - -using namespace com::sun::star; -//-------------------------------------------------------------------- - -/* - Constructor; sets the Select-Handler for the Menu and inserts it into - its Parent. - */ - -SfxObjectVerbsControl::SfxObjectVerbsControl(sal_uInt16 nSlotId, Menu &rMenu, SfxBindings &rBindings) - : SfxMenuControl( nSlotId, rBindings ) - , pMenu(new PopupMenu) - , rParent(rMenu) -{ - rMenu.SetPopupMenu(nSlotId, pMenu); - pMenu->SetSelectHdl(LINK(this, SfxObjectVerbsControl, MenuSelect)); - FillMenu(); -} - -//-------------------------------------------------------------------- - -/* - Make up a menu with the current view of the verbs from ViewShell. - */ - -void SfxObjectVerbsControl::FillMenu() -{ - pMenu->Clear(); - SfxViewShell *pView = GetBindings().GetDispatcher()->GetFrame()->GetViewShell(); - if (pView) - { - SfxObjectShell* pDoc = pView->GetObjectShell(); - const com::sun::star::uno::Sequence < com::sun::star::embed::VerbDescriptor >& aVerbs = pView->GetVerbs(); - if ( aVerbs.getLength() ) - { - sal_uInt16 nSlotId = SID_VERB_START; - for (sal_uInt16 n=0; n<aVerbs.getLength(); n++) - { - // check for ReadOnly verbs - if ( pDoc->IsReadOnly() && !(aVerbs[n].VerbAttributes & embed::VerbAttributes::MS_VERBATTR_NEVERDIRTIES) ) - continue; - - // check for verbs that shouldn't appear in the menu - if ( !(aVerbs[n].VerbAttributes & embed::VerbAttributes::MS_VERBATTR_ONCONTAINERMENU) ) - continue; - - DBG_ASSERT(nSlotId <= SID_VERB_END, "Too many Verbs!"); - if (nSlotId > SID_VERB_END) - break; - - pMenu->InsertItem(nSlotId++, aVerbs[n].VerbName); - } - } - } - - rParent.EnableItem( GetId(), (sal_Bool)pMenu->GetItemCount() ); -} - -//-------------------------------------------------------------------- - -/* - Status notification: - Fill the menu with the current verbs from the ViewShell of the - the DocumentShell. If the functionality is disabled, the corresponding - menu entry in Parent menu is disabled, otherwise it is enabled. - */ - -void SfxObjectVerbsControl::StateChanged( - sal_uInt16 /*nSID*/, - SfxItemState eState, - const SfxPoolItem* /*pState*/ ) -{ - rParent.EnableItem(GetId(), SFX_ITEM_AVAILABLE == eState ); - if ( SFX_ITEM_AVAILABLE == eState ) - FillMenu(); -} - -//-------------------------------------------------------------------- - -/* - Select-Handler for Menus; - run the selected Verb, - */ - -IMPL_LINK_INLINE_START( SfxObjectVerbsControl, MenuSelect, Menu *, pSelMenu ) -{ - const sal_uInt16 nSlotId = pSelMenu->GetCurItemId(); - if( nSlotId ) - GetBindings().Execute(nSlotId); - return 1; -} -IMPL_LINK_INLINE_END( SfxObjectVerbsControl, MenuSelect, Menu *, pSelMenu ) - -//-------------------------------------------------------------------- - -/* - Destructor; releases the Menu. - */ - -SfxObjectVerbsControl::~SfxObjectVerbsControl() -{ - delete pMenu; -} - -//-------------------------------------------------------------------- - -PopupMenu* SfxObjectVerbsControl::GetPopup() const -{ - return pMenu; -} - - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |