home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.5 Complementary Applications 2004 February / SGI IRIX 6.5 Complementary Applications 2004 February.iso / dist / cde.idb / usr / dt / share / include / Xm / MenuShellP.h.z / MenuShellP.h
Encoding:
C/C++ Source or Header  |  2003-11-18  |  4.2 KB  |  149 lines

  1. /*
  2.  * MenuShellP.h
  3.  *
  4.  * Copyright 2000, Silicon Graphics, Inc.
  5.  * ALL RIGHTS RESERVED
  6.  * 
  7.  * UNPUBLISHED -- Rights reserved under the copyright laws of the United
  8.  * States.   Use of a copyright notice is precautionary only and does not
  9.  * imply publication or disclosure.
  10.  *
  11.  * U.S. GOVERNMENT RESTRICTED RIGHTS LEGEND:
  12.  * Use, duplication or disclosure by the Government is subject to restrictions
  13.  * as set forth in FAR 52.227.19(c)(2) or subparagraph (c)(1)(ii) of the Rights
  14.  * in Technical Data and Computer Software clause at DFARS 252.227-7013 and/or
  15.  * in similar or successor clauses in the FAR, or the DOD or NASA FAR
  16.  * Supplement.  Contractor/manufacturer is Silicon Graphics, Inc.,
  17.  * 2011 N. Shoreline Blvd. Mountain View, CA 94039-7311.
  18.  *
  19.  * THE CONTENT OF THIS WORK CONTAINS CONFIDENTIAL AND PROPRIETARY
  20.  * INFORMATION OF SILICON GRAPHICS, INC. ANY DUPLICATION, MODIFICATION,
  21.  * DISTRIBUTION, OR DISCLOSURE IN ANY FORM, IN WHOLE, OR IN PART, IS STRICTLY
  22.  * PROHIBITED WITHOUT THE PRIOR EXPRESS WRITTEN PERMISSION OF SILICON
  23.  * GRAPHICS, INC.
  24.  */
  25. /* 
  26.  * @OSF_COPYRIGHT@
  27.  * (c) Copyright 1990, 1991, 1992, 1993, 1994 OPEN SOFTWARE FOUNDATION, INC.
  28.  * ALL RIGHTS RESERVED
  29.  *  
  30. */ 
  31. /*
  32.  * HISTORY
  33.  * Motif Release 1.2.5
  34. */
  35. /*   $XConsortium: MenuShellP.h /main/cde1_maint/2 1995/08/18 19:12:04 drk $ */
  36. /*
  37. *  (c) Copyright 1989, DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. */
  38. /*
  39. *  (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
  40. #ifndef _XmMenuShellP_h
  41. #define _XmMenuShellP_h
  42.  
  43. #include <Xm/MenuShell.h>
  44. #include <Xm/XmP.h>
  45. #include <X11/ShellP.h>
  46.  
  47. #ifdef __cplusplus
  48. extern "C" {
  49. #endif
  50.  
  51. /* The MenuShell instance record */
  52.  
  53. typedef struct 
  54. {
  55.     unsigned char        focus_policy;
  56.     XmFocusData            focus_data;
  57.     Boolean                 private_shell;
  58.     XmFontList              default_font_list;
  59.     XmFontList              button_font_list;
  60.     XmFontList              label_font_list;
  61. } XmMenuShellPart;
  62.  
  63.  
  64. /* Full instance record declaration */
  65.  
  66. typedef  struct _XmMenuShellRec 
  67. {
  68.     CorePart            core;
  69.     CompositePart        composite;
  70.     ShellPart            shell;
  71.     OverrideShellPart        override;
  72.     XmMenuShellPart        menu_shell;
  73. } XmMenuShellRec;
  74.  
  75. typedef  struct _XmMenuShellWidgetRec /* OBSOLETE (for compatibility only).*/
  76. {
  77.     CorePart            core;
  78.     CompositePart        composite;
  79.     ShellPart            shell;
  80.     OverrideShellPart        override;
  81.     XmMenuShellPart        menu_shell;
  82. } XmMenuShellWidgetRec;
  83.  
  84.  
  85.  
  86. /* MenuShell class structure */
  87.  
  88. typedef struct 
  89. {
  90.     XtActionProc popdownOne;  /* fnct to unpost portion or all of menu */
  91.     XtActionProc popdownEveryone; /* fnct to unpost portion of menu */
  92.     XtActionProc popdownDone;     /* fnct to unpost all menus */
  93.     XmMenuPopupProc popupSharedMenupane; /* fnct to post shared menus */
  94.                     /* Really should be popupSharedMenuShell */
  95.     XtPointer        extension;     /* Pointer to extension record */
  96. } XmMenuShellClassPart;
  97.  
  98.  
  99. /* Full class record declaration */
  100.  
  101. typedef struct _XmMenuShellClassRec 
  102. {
  103.     CoreClassPart        core_class;
  104.     CompositeClassPart        composite_class;
  105.     ShellClassPart        shell_class;
  106.     OverrideShellClassPart  override_shell_class;
  107.     XmMenuShellClassPart    menu_shell_class;
  108. } XmMenuShellClassRec;
  109.  
  110.  
  111. externalref XmMenuShellClassRec  xmMenuShellClassRec;
  112.  
  113. #define MS_FocusPolicy(m) \
  114.        (((XmMenuShellWidget)m)->menu_shell.focus_policy)
  115.  
  116. /********    Private Function Declarations    ********/
  117. #ifdef _NO_PROTO
  118.  
  119. extern void _XmEnterRowColumn() ;
  120. extern void _XmClearTraversal() ;
  121. extern void _XmSetLastManagedMenuTime() ;
  122.  
  123. #else
  124.  
  125. extern void _XmEnterRowColumn( 
  126.                         Widget widget,
  127.                         XtPointer closure,
  128.                         XEvent *event,
  129.                         Boolean *cont) ;
  130. extern void _XmClearTraversal( 
  131.                         Widget wid,
  132.                         XEvent *event,
  133.                         String *params,
  134.                         Cardinal *num_params) ;
  135. extern void _XmSetLastManagedMenuTime(
  136.             Widget wid,
  137.             Time newTime ) ;
  138.  
  139. #endif /* _NO_PROTO */
  140. /********    End Private Function Declarations    ********/
  141.  
  142.  
  143. #ifdef __cplusplus
  144. }  /* Close scope of 'extern "C"' declaration which encloses file. */
  145. #endif
  146.  
  147. #endif /* _XmMenuShellP_h */
  148. /* DON'T ADD STUFF AFTER THIS #endif */
  149.