749N/A/*
749N/A * $XConsortium: SimpleMenu.h,v 1.22 94/04/17 20:12:47 kaleb Exp $
749N/A *
749N/ACopyright (c) 1989, 1994 X Consortium
749N/A
749N/APermission is hereby granted, free of charge, to any person obtaining a copy
749N/Aof this software and associated documentation files (the "Software"), to deal
749N/Ain the Software without restriction, including without limitation the rights
749N/Ato use, copy, modify, merge, publish, distribute, sublicense, and/or sell
749N/Acopies of the Software, and to permit persons to whom the Software is
749N/Afurnished to do so, subject to the following conditions:
749N/A
749N/AThe above copyright notice and this permission notice shall be included in
749N/Aall copies or substantial portions of the Software.
749N/A
749N/ATHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
749N/AIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
749N/AFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
749N/AX CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
749N/AAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
749N/ACONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
749N/A
749N/AExcept as contained in this notice, the name of the X Consortium shall not be
749N/Aused in advertising or otherwise to promote the sale, use or other dealings
749N/Ain this Software without prior written authorization from the X Consortium.
749N/A *
749N/A * Author: Chris D. Peterson, MIT X Consortium
749N/A */
749N/A
749N/A/*
749N/A * SimpleMenu.h - Public Header file for SimpleMenu widget.
749N/A *
749N/A * This is the public header file for the Athena SimpleMenu widget.
749N/A * It is intended to provide one pane pulldown and popup menus within
749N/A * the framework of the X Toolkit. As the name implies it is a first and
749N/A * by no means complete implementation of menu code. It does not attempt to
749N/A * fill the needs of all applications, but does allow a resource oriented
749N/A * interface to menus.
749N/A *
749N/A * Date: April 3, 1989
749N/A *
749N/A * By: Chris D. Peterson
749N/A * MIT X Consortium
749N/A * kit@expo.lcs.mit.edu
749N/A */
749N/A
749N/A#ifndef _SimpleMenu_h
749N/A#define _SimpleMenu_h
749N/A
749N/A#include <X11/Shell.h>
749N/A#include <X11/Xmu/Converters.h>
749N/A
749N/A/****************************************************************
749N/A *
749N/A * SimpleMenu widget
749N/A *
749N/A ****************************************************************/
749N/A
749N/A/* SimpleMenu Resources:
749N/A
749N/A Name Class RepType Default Value
749N/A ---- ----- ------- -------------
749N/A background Background Pixel XtDefaultBackground
749N/A backgroundPixmap BackgroundPixmap Pixmap None
749N/A borderColor BorderColor Pixel XtDefaultForeground
749N/A borderPixmap BorderPixmap Pixmap None
749N/A borderWidth BorderWidth Dimension 1
749N/A bottomMargin VerticalMargins Dimension VerticalSpace
749N/A columnWidth ColumnWidth Dimension Width of widest text
749N/A cursor Cursor Cursor None
749N/A destroyCallback Callback Pointer NULL
749N/A height Height Dimension 0
749N/A label Label String NULL (No label)
749N/A labelClass LabelClass Pointer smeBSBObjectClass
749N/A mappedWhenManaged MappedWhenManaged Boolean True
749N/A rowHeight RowHeight Dimension Height of Font
749N/A sensitive Sensitive Boolean True
749N/A topMargin VerticalMargins Dimension VerticalSpace
749N/A width Width Dimension 0
749N/A x Position Position 0n
749N/A y Position Position 0
749N/A
749N/A*/
749N/A
749N/Atypedef struct _SimpleMenuClassRec* SimpleMenuWidgetClass;
749N/Atypedef struct _SimpleMenuRec* SimpleMenuWidget;
749N/A
749N/Aextern WidgetClass simpleMenuWidgetClass;
749N/A
749N/A#define XtNcursor "cursor"
749N/A#define XtNbottomMargin "bottomMargin"
749N/A#define XtNcolumnWidth "columnWidth"
749N/A#define XtNlabelClass "labelClass"
749N/A#define XtNmenuOnScreen "menuOnScreen"
749N/A#define XtNpopupOnEntry "popupOnEntry"
749N/A#define XtNrowHeight "rowHeight"
749N/A#define XtNtopMargin "topMargin"
749N/A
749N/A#define XtCColumnWidth "ColumnWidth"
749N/A#define XtCLabelClass "LabelClass"
749N/A#define XtCMenuOnScreen "MenuOnScreen"
749N/A#define XtCPopupOnEntry "PopupOnEntry"
749N/A#define XtCRowHeight "RowHeight"
749N/A#define XtCVerticalMargins "VerticalMargins"
749N/A
749N/A/************************************************************
749N/A *
749N/A * Public Functions.
749N/A *
749N/A ************************************************************/
749N/A
749N/A_XFUNCPROTOBEGIN
749N/A
749N/A/* Function Name: XawSimpleMenuAddGlobalActions
749N/A * Description: adds the global actions to the simple menu widget.
749N/A * Arguments: app_con - the appcontext.
749N/A * Returns: none.
749N/A */
749N/A
749N/Aextern void XawSimpleMenuAddGlobalActions(
749N/A#if NeedFunctionPrototypes
749N/A XtAppContext /* app_con */
749N/A#endif
749N/A);
749N/A
749N/A/* Function Name: XawSimpleMenuGetActiveEntry
749N/A * Description: Gets the currently active (set) entry.
749N/A * Arguments: w - the smw widget.
749N/A * Returns: the currently set entry or NULL if none is set.
749N/A */
749N/A
749N/Aextern Widget XawSimpleMenuGetActiveEntry(
749N/A#if NeedFunctionPrototypes
749N/A Widget /* w */
749N/A#endif
749N/A);
749N/A
749N/A/* Function Name: XawSimpleMenuClearActiveEntry
749N/A * Description: Unsets the currently active (set) entry.
749N/A * Arguments: w - the smw widget.
749N/A * Returns: none.
749N/A */
749N/A
749N/Aextern void XawSimpleMenuClearActiveEntry(
749N/A#if NeedFunctionPrototypes
749N/A Widget /* w */
749N/A#endif
749N/A);
749N/A
749N/A_XFUNCPROTOEND
749N/A
749N/A#endif /* _SimpleMenu_h */