/************************************************************************* * * 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 * * for a copy of the LGPLv3 License. * ************************************************************************/ #ifndef __com_sun_star_awt_XPopupMenuExtended_idl__ #define __com_sun_star_awt_XPopupMenuExtended_idl__ #ifndef __com_sun_star_uno_XInterface_idl__ #include #endif #ifndef __com_sun_star_awt_XPopupMenu_idl__ #include #endif #ifndef __com_sun_star_awt_XMenuExtended2_idl__ #include #endif #ifndef __com_sun_star_awt_MenuLogo_idl__ #include #endif #ifndef __com_sun_star_container_NoSuchElementException_idl__ #include #endif #ifndef __com_sun_star_awt_KeyEvent_idl__ #include #endif #ifndef com_sun_star_graphic_XGraphic_idl #include #endif //============================================================================= module com { module sun { module star { module awt { /** specifies extended functions for a PopupMenu. @since OOo 3.1 */ interface XPopupMenuExtended { /** specifies basic functions for a popup menu. */ interface ::com::sun::star::awt::XPopupMenu; /** specifies extended menu functions, available for both MenuBar and PopupMenu. */ interface ::com::sun::star::awt::XMenuExtended2; //========================================================================= /** queries if the PopupMenu is being executed as a result of invoking XPopupMenu::execute(); that is, for a PopupMenu activated by a MenuBar item, this methods returns . @return if the PopupMenu is being executed, otherwise. @see XPopupMenu::execute() @since OOo 3.1 */ boolean isInExecute(); /** ends the execution of the PopupMenu. XPopupMenu::execute() will then return 0. @see XPopupMenu::execute() @since OOo 3.1 */ void endExecute(); //============================================================================= /** sets the MenuLogo for this PopupMenu. @param aMenuLogo the MenuLogo. @since OOo 3.1 */ void setLogo( [in] ::com::sun::star::awt::MenuLogo aMenuLogo ); /** retrieves the MenuLogo for this PopupMenu. @return the MenuLogo. @since OOo 3.1 */ ::com::sun::star::awt::MenuLogo getLogo(); //========================================================================= /** specifies whether mnemonics are automatically assigned to menu items, or not. @param bEnable if , mnemonics are automatically assigned to menu items. */ void enableAutoMnemonics( [in] boolean bEnable ); //========================================================================= /** sets the KeyEvent for the menu item.

The KeyEvent is only used as a container to transport the shortcut information, this methods only draws the text corresponding to this keyboard shortcut. The client code is responsible for listening to keyboard events (typicaly done via XUserInputInterception), and dispatch the respective command.

@param nItemId specifies the menu item identifier for which the KeyEvent should be set. @param aKeyEvent specifies the KeyEvent for the menu item. @throws NoSuchElementException if there is no menu item with the identifier specified in nItemId. @since OOo 3.1 */ void setAcceleratorKeyEvent( [in] short nItemId, [in] ::com::sun::star::awt::KeyEvent aKeyEvent ) raises ( ::com::sun::star::container::NoSuchElementException ); /** retrieves the KeyEvent for the menu item.

The KeyEvent is only used as a container to transport the shortcut information, so that in this case EventObject::Source is .

@param nItemId specifies the menu item identifier for which the KeyEvent should be retrieved. @return the KeyEvent struct assigned to the requested menu item. @throws NoSuchElementException if there is no menu item with the identifier specified in nItemId. @since OOo 3.1 */ ::com::sun::star::awt::KeyEvent getAcceleratorKeyEvent( [in] short nItemId ) raises ( ::com::sun::star::container::NoSuchElementException ); //============================================================================= /** sets the help text for the menu item. @param nItemId specifies the menu item identifier for which the help text should be set. @param sHelpText specifies the help text for the menu item. @throws NoSuchElementException if there is no menu item with the identifier specified in nItemId. @since OOo 3.1 */ void setHelpText( [in] short nItemId, [in] string sHelpText ) raises ( ::com::sun::star::container::NoSuchElementException ); /** retrieves the help text for the menu item. @param nItemId specifies the menu item identifier for which the help text should be retrieved. @return a string with the help text. @throws NoSuchElementException if there is no menu item with the identifier specified in nItemId. @since OOo 3.1 */ string getHelpText( [in] short nItemId ) raises ( ::com::sun::star::container::NoSuchElementException ); //============================================================================= /** sets the tip help text for the menu item. @param nItemId specifies the menu item identifier for which the tip help text should be set. @param sTipHelpText specifies the tip help text for the menu item. @throws NoSuchElementException if there is no menu item with the identifier specified in nItemId. @since OOo 3.1 */ void setTipHelpText( [in] short nItemId, [in] string sTipHelpText ) raises ( ::com::sun::star::container::NoSuchElementException ); /** retrieves the tip help text for the menu item. @param nItemId specifies the menu item identifier for which the tip help text should be retrieved. @return a string with the tip help text. @throws NoSuchElementException if there is no menu item with the identifier specified in nItemId. @since OOo 3.1 */ string getTipHelpText( [in] short nItemId ) raises ( ::com::sun::star::container::NoSuchElementException ); //============================================================================= /** sets the image for the menu item. @param nItemId specifies the menu item identifier for which the image should be set. @param xGraphic specifies the image for the menu item. @param bScale if , the image will be scaled to the standard size used internally by the implementation. @throws NoSuchElementException if there is no menu item with the identifier specified in nItemId. @since OOo 3.1 */ void setItemImage( [in] short nItemId, [in] ::com::sun::star::graphic::XGraphic xGraphic, [in] boolean bScale ) raises ( ::com::sun::star::container::NoSuchElementException ); /** retrieves the image for the menu item. @param nItemId specifies the menu item identifier for which the image should be retrieved. @return a XGraphic reference to the current image for the requested menu item. @throws NoSuchElementException if there is no menu item with the identifier specified in nItemId. @since OOo 3.1 */ ::com::sun::star::graphic::XGraphic getItemImage( [in] short nItemId ) raises ( ::com::sun::star::container::NoSuchElementException ); //............................................................................. /** sets the rotation angle of a menu item image. @param nItemId specifies the menu item identifier for which the image angle should be set. @param nAngle specifies the rotation angle for the menu item image. @throws NoSuchElementException if there is no menu item with the identifier specified in nItemId. @since OOo 3.1 */ void setItemImageAngle( [in] short nItemId, [in] long nAngle ) raises ( ::com::sun::star::container::NoSuchElementException ); /** retrieves the rotation angle of a menu item image. @param nItemId specifies the menu item identifier for which the rotation angle should be retrieved. @return the rotation angle of the menu item image, or 0 if it has no rotation. @throws NoSuchElementException if there is no menu item with the identifier specified in nItemId. @since OOo 3.1 */ long getItemImageAngle( [in] short nItemId ) raises ( ::com::sun::star::container::NoSuchElementException ); //............................................................................. /** sets the mirror mode of a menu item image. @param nItemId specifies the menu item identifier for which the mirror mode should be set. @param bMirror if , the item image is mirrored. @throws NoSuchElementException if there is no menu item with the identifier specified in nItemId. @since OOo 3.1 */ void setItemImageMirrorMode( [in] short nItemId, [in] boolean bMirror ) raises ( ::com::sun::star::container::NoSuchElementException ); /** indicates whether the menu item image is mirrored. @param nItemId specifies the menu item identifier for which the image mirror mode should be checked. @return if the item image is mirrored, otherwise. @throws NoSuchElementException if there is no menu item with the identifier specified in nItemId. @since OOo 3.1 */ boolean isItemImageInMirrorMode( [in] short nItemId ) raises ( ::com::sun::star::container::NoSuchElementException ); }; }; }; }; }; #endif