/************************************************************** * * 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 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the 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 */ published 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