Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:14:31

0001 /***********************************************************
0002 
0003 Copyright 1987, 1988, 1994, 1998  The Open Group
0004 
0005 Permission to use, copy, modify, distribute, and sell this software and its
0006 documentation for any purpose is hereby granted without fee, provided that
0007 the above copyright notice appear in all copies and that both that
0008 copyright notice and this permission notice appear in supporting
0009 documentation.
0010 
0011 The above copyright notice and this permission notice shall be included in
0012 all copies or substantial portions of the Software.
0013 
0014 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
0015 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
0016 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
0017 OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
0018 AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
0019 CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
0020 
0021 Except as contained in this notice, the name of The Open Group shall not be
0022 used in advertising or otherwise to promote the sale, use or other dealings
0023 in this Software without prior written authorization from The Open Group.
0024 
0025 
0026 Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts.
0027 
0028                         All Rights Reserved
0029 
0030 Permission to use, copy, modify, and distribute this software and its
0031 documentation for any purpose and without fee is hereby granted,
0032 provided that the above copyright notice appear in all copies and that
0033 both that copyright notice and this permission notice appear in
0034 supporting documentation, and that the name of Digital not be
0035 used in advertising or publicity pertaining to distribution of the
0036 software without specific, written prior permission.
0037 
0038 DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
0039 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
0040 DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
0041 ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
0042 WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
0043 ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
0044 SOFTWARE.
0045 
0046 ******************************************************************/
0047 
0048 /*
0049  * ShellP.h - Private definitions for Shell widget
0050  *
0051  * Author:  Paul Asente
0052  *      Digital Equipment Corporation
0053  *      Western Software Laboratory
0054  * Date:    Thu Dec 3, 1987
0055  */
0056 
0057 #ifndef _XtShellPrivate_h
0058 #define _XtShellPrivate_h
0059 
0060 #include <X11/Shell.h>
0061 
0062 /* *****
0063  * ***** VendorP.h is included later on; it needs fields defined in the first
0064  * ***** part of this header file
0065  * *****
0066  */
0067 
0068 _XFUNCPROTOBEGIN
0069 
0070 /***********************************************************************
0071  *
0072  * Shell Widget Private Data
0073  *
0074  ***********************************************************************/
0075 
0076 /* New fields for the Shell widget class record */
0077 
0078 typedef struct {
0079     XtPointer       extension;          /* pointer to extension record      */
0080 } ShellClassPart;
0081 
0082 typedef struct {
0083     XtPointer next_extension;   /* 1st 4 mandated for all extension records */
0084     XrmQuark record_type;   /* NULLQUARK; on ShellClassPart */
0085     long version;       /* must be XtShellExtensionVersion */
0086     Cardinal record_size;   /* sizeof(ShellClassExtensionRec) */
0087     XtGeometryHandler root_geometry_manager;
0088 } ShellClassExtensionRec, *ShellClassExtension;
0089 
0090 #define XtShellExtensionVersion 1L
0091 #define XtInheritRootGeometryManager ((XtGeometryHandler)_XtInherit)
0092 
0093 typedef struct _ShellClassRec {
0094     CoreClassPart      core_class;
0095     CompositeClassPart composite_class;
0096     ShellClassPart  shell_class;
0097 } ShellClassRec;
0098 
0099 externalref ShellClassRec shellClassRec;
0100 
0101 /* New fields for the shell widget */
0102 
0103 typedef struct {
0104     char       *geometry;
0105     XtCreatePopupChildProc  create_popup_child_proc;
0106     XtGrabKind  grab_kind;
0107     Boolean     spring_loaded;
0108     Boolean     popped_up;
0109     Boolean     allow_shell_resize;
0110     Boolean     client_specified; /* re-using old name */
0111 #define _XtShellPositionValid   ((Boolean)(1<<0))
0112 #define _XtShellNotReparented   ((Boolean)(1<<1))
0113 #define _XtShellPPositionOK ((Boolean)(1<<2))
0114 #define _XtShellGeometryParsed  ((Boolean)(1<<3))
0115     Boolean     save_under;
0116     Boolean     override_redirect;
0117 
0118     XtCallbackList popup_callback;
0119     XtCallbackList popdown_callback;
0120     Visual*     visual;
0121 } ShellPart;
0122 
0123 typedef  struct {
0124     CorePart    core;
0125     CompositePart   composite;
0126     ShellPart   shell;
0127 } ShellRec, *ShellWidget;
0128 
0129 /***********************************************************************
0130  *
0131  * OverrideShell Widget Private Data
0132  *
0133  ***********************************************************************/
0134 
0135 /* New fields for the OverrideShell widget class record */
0136 
0137 typedef struct {
0138     XtPointer       extension;          /* pointer to extension record      */
0139 } OverrideShellClassPart;
0140 
0141 typedef struct _OverrideShellClassRec {
0142     CoreClassPart      core_class;
0143     CompositeClassPart composite_class;
0144     ShellClassPart  shell_class;
0145     OverrideShellClassPart  override_shell_class;
0146 } OverrideShellClassRec;
0147 
0148 externalref OverrideShellClassRec overrideShellClassRec;
0149 
0150 /* No new fields for the override shell widget */
0151 
0152 typedef struct {int frabjous;} OverrideShellPart;
0153 
0154 typedef  struct {
0155     CorePart    core;
0156     CompositePart   composite;
0157     ShellPart   shell;
0158     OverrideShellPart override;
0159 } OverrideShellRec, *OverrideShellWidget;
0160 
0161 /***********************************************************************
0162  *
0163  * WMShell Widget Private Data
0164  *
0165  ***********************************************************************/
0166 
0167 /* New fields for the WMShell widget class record */
0168 
0169 typedef struct {
0170     XtPointer       extension;          /* pointer to extension record      */
0171 } WMShellClassPart;
0172 
0173 typedef struct _WMShellClassRec {
0174     CoreClassPart      core_class;
0175     CompositeClassPart composite_class;
0176     ShellClassPart  shell_class;
0177     WMShellClassPart wm_shell_class;
0178 } WMShellClassRec;
0179 
0180 externalref WMShellClassRec wmShellClassRec;
0181 
0182 /* New fields for the WM shell widget */
0183 
0184 typedef struct {
0185     char       *title;
0186     int         wm_timeout;
0187     Boolean     wait_for_wm;
0188     Boolean     transient;
0189     Boolean     urgency;
0190     Widget      client_leader;
0191     String      window_role;
0192     struct _OldXSizeHints { /* pre-R4 Xlib structure */
0193         long flags;
0194         int x, y;
0195         int width, height;
0196         int min_width, min_height;
0197         int max_width, max_height;
0198         int width_inc, height_inc;
0199         struct {
0200             int x;
0201             int y;
0202         } min_aspect, max_aspect;
0203     } size_hints;
0204     XWMHints    wm_hints;
0205     int base_width, base_height;
0206     int win_gravity;
0207     Atom title_encoding;
0208 } WMShellPart;
0209 
0210 typedef  struct {
0211     CorePart    core;
0212     CompositePart   composite;
0213     ShellPart   shell;
0214     WMShellPart wm;
0215 } WMShellRec, *WMShellWidget;
0216 
0217 _XFUNCPROTOEND
0218 
0219 #include <X11/VendorP.h>
0220 
0221 _XFUNCPROTOBEGIN
0222 
0223 /***********************************************************************
0224  *
0225  * TransientShell Widget Private Data
0226  *
0227  ***********************************************************************/
0228 
0229 /* New fields for the TransientShell widget class record */
0230 
0231 typedef struct {
0232     XtPointer       extension;          /* pointer to extension record      */
0233 } TransientShellClassPart;
0234 
0235 typedef struct _TransientShellClassRec {
0236     CoreClassPart      core_class;
0237     CompositeClassPart composite_class;
0238     ShellClassPart  shell_class;
0239     WMShellClassPart   wm_shell_class;
0240     VendorShellClassPart vendor_shell_class;
0241     TransientShellClassPart transient_shell_class;
0242 } TransientShellClassRec;
0243 
0244 externalref TransientShellClassRec transientShellClassRec;
0245 
0246 /* New fields for the transient shell widget */
0247 
0248 typedef struct {
0249     Widget transient_for;
0250 } TransientShellPart;
0251 
0252 typedef  struct {
0253     CorePart    core;
0254     CompositePart   composite;
0255     ShellPart   shell;
0256     WMShellPart wm;
0257     VendorShellPart vendor;
0258     TransientShellPart transient;
0259 } TransientShellRec, *TransientShellWidget;
0260 
0261 /***********************************************************************
0262  *
0263  * TopLevelShell Widget Private Data
0264  *
0265  ***********************************************************************/
0266 
0267 /* New fields for the TopLevelShell widget class record */
0268 
0269 typedef struct {
0270     XtPointer       extension;          /* pointer to extension record      */
0271 } TopLevelShellClassPart;
0272 
0273 typedef struct _TopLevelShellClassRec {
0274     CoreClassPart      core_class;
0275     CompositeClassPart composite_class;
0276     ShellClassPart  shell_class;
0277     WMShellClassPart   wm_shell_class;
0278     VendorShellClassPart vendor_shell_class;
0279     TopLevelShellClassPart top_level_shell_class;
0280 } TopLevelShellClassRec;
0281 
0282 externalref TopLevelShellClassRec topLevelShellClassRec;
0283 
0284 /* New fields for the top level shell widget */
0285 
0286 typedef struct {
0287     char       *icon_name;
0288     Boolean     iconic;
0289     Atom        icon_name_encoding;
0290 } TopLevelShellPart;
0291 
0292 typedef  struct {
0293     CorePart    core;
0294     CompositePart   composite;
0295     ShellPart   shell;
0296     WMShellPart wm;
0297     VendorShellPart vendor;
0298     TopLevelShellPart topLevel;
0299 } TopLevelShellRec, *TopLevelShellWidget;
0300 
0301 /***********************************************************************
0302  *
0303  * ApplicationShell Widget Private Data
0304  *
0305  ***********************************************************************/
0306 
0307 /* New fields for the ApplicationShell widget class record */
0308 
0309 typedef struct {
0310     XtPointer       extension;          /* pointer to extension record      */
0311 } ApplicationShellClassPart;
0312 
0313 typedef struct _ApplicationShellClassRec {
0314     CoreClassPart      core_class;
0315     CompositeClassPart composite_class;
0316     ShellClassPart  shell_class;
0317     WMShellClassPart   wm_shell_class;
0318     VendorShellClassPart vendor_shell_class;
0319     TopLevelShellClassPart top_level_shell_class;
0320     ApplicationShellClassPart application_shell_class;
0321 } ApplicationShellClassRec;
0322 
0323 externalref ApplicationShellClassRec applicationShellClassRec;
0324 
0325 /* New fields for the application shell widget */
0326 
0327 typedef struct {
0328 #if defined(__cplusplus) || defined(c_plusplus)
0329     char *c_class;
0330 #else
0331     char *class;
0332 #endif
0333     XrmClass xrm_class;
0334     int argc;
0335     _XtString *argv;
0336 } ApplicationShellPart;
0337 
0338 typedef  struct {
0339     CorePart    core;
0340     CompositePart   composite;
0341     ShellPart   shell;
0342     WMShellPart wm;
0343     VendorShellPart vendor;
0344     TopLevelShellPart topLevel;
0345     ApplicationShellPart application;
0346 } ApplicationShellRec, *ApplicationShellWidget;
0347 
0348 /***********************************************************************
0349  *
0350  * SessionShell Widget Private Data
0351  *
0352  ***********************************************************************/
0353 
0354 /* New fields for the SessionShell widget class record */
0355 
0356 typedef struct {
0357     XtPointer       extension;          /* pointer to extension record */
0358 } SessionShellClassPart;
0359 
0360 typedef struct _SessionShellClassRec {
0361     CoreClassPart      core_class;
0362     CompositeClassPart composite_class;
0363     ShellClassPart  shell_class;
0364     WMShellClassPart   wm_shell_class;
0365     VendorShellClassPart vendor_shell_class;
0366     TopLevelShellClassPart top_level_shell_class;
0367     ApplicationShellClassPart application_shell_class;
0368     SessionShellClassPart session_shell_class;
0369 } SessionShellClassRec;
0370 
0371 externalref SessionShellClassRec sessionShellClassRec;
0372 
0373 typedef struct _XtSaveYourselfRec *XtSaveYourself; /* implementation-private */
0374 
0375 /* New fields for the session shell widget */
0376 
0377 typedef struct {
0378     SmcConn         connection;
0379     _XtString       session_id;
0380     _XtString*      restart_command;
0381     _XtString*      clone_command;
0382     _XtString*      discard_command;
0383     _XtString*      resign_command;
0384     _XtString*      shutdown_command;
0385     _XtString*      environment;
0386     _XtString       current_dir;
0387     String          program_path;
0388     unsigned char   restart_style;
0389     unsigned char   checkpoint_state;
0390     Boolean         join_session;
0391     XtCallbackList  save_callbacks;
0392     XtCallbackList  interact_callbacks;
0393     XtCallbackList  cancel_callbacks;
0394     XtCallbackList  save_complete_callbacks;
0395     XtCallbackList  die_callbacks;
0396     XtCallbackList  error_callbacks;
0397     XtSaveYourself  save;
0398     XtInputId       input_id;
0399     XtPointer       ses20;
0400     XtPointer       ses19;
0401     XtPointer       ses18;
0402     XtPointer       ses17;
0403     XtPointer       ses16;
0404     XtPointer       ses15;
0405     XtPointer       ses14;
0406     XtPointer       ses13;
0407     XtPointer       ses12;
0408     XtPointer       ses11;
0409     XtPointer       ses10;
0410     XtPointer       ses9;
0411     XtPointer       ses8;
0412     XtPointer       ses7;
0413     XtPointer       ses6;
0414     XtPointer       ses5;
0415     XtPointer       ses4;
0416     XtPointer       ses3;
0417     XtPointer       ses2;
0418     XtPointer       ses1;
0419 } SessionShellPart;
0420 
0421 typedef  struct {
0422     CorePart    core;
0423     CompositePart   composite;
0424     ShellPart   shell;
0425     WMShellPart wm;
0426     VendorShellPart vendor;
0427     TopLevelShellPart topLevel;
0428     ApplicationShellPart application;
0429     SessionShellPart session;
0430 } SessionShellRec, *SessionShellWidget;
0431 
0432 _XFUNCPROTOEND
0433 
0434 #endif /* _XtShellPrivate_h */