|
|
1.1 root 1: /*
2: * $Header: CommandPrivate.h,v 1.6 87/09/11 21:18:57 haynes Rel $
3: */
4:
5: /*
6: * Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
7: *
8: * All Rights Reserved
9: *
10: * Permission to use, copy, modify, and distribute this software and its
11: * documentation for any purpose and without fee is hereby granted,
12: * provided that the above copyright notice appear in all copies and that
13: * both that copyright notice and this permission notice appear in
14: * supporting documentation, and that the name of Digital Equipment
15: * Corporation not be used in advertising or publicity pertaining to
16: * distribution of the software without specific, written prior permission.
17: *
18: *
19: * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
20: * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
21: * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
22: * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
23: * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
24: * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
25: * SOFTWARE.
26: */
27: /*
28: * CommandPrivate.h - Private definitions for Command widget
29: *
30: * Author: Mark S. Ackerman
31: * MIT/Project Athena
32: * Date: Thu Aug 27 1987
33: */
34:
35: #ifndef _XtCommandPrivate_h
36: #define _XtCommandPrivate_h
37:
38: #define XtCallParentProcedure(proc,arg) \
39: (((commandWidgetClass->core_class.superclass))->core_class.proc)(arg)
40: #define XtCallParentProcedure2Args(proc,arg1,arg2) \
41: (((commandWidgetClass->core_class.superclass))->core_class.proc)(arg1,arg2)
42: #define XtCallParentProcedure3Args(proc,arg1,arg2,arg3) \
43: (((commandWidgetClass->core_class.superclass))->core_class.proc) \
44: (arg1,arg2,arg3)
45:
46: #define XtAddSingleCallback(f,resourceName,cb,cl,p) \
47: if (XrmAtomsEqual(resourceName, XtNfunction)) \
48: XtAddCallbackToList(f,cb,cl,p)
49:
50:
51:
52: /***********************************************************************
53: *
54: * Command Widget Private Data
55: *
56: ***********************************************************************/
57:
58: /************************************
59: *
60: * Class structure
61: *
62: ***********************************/
63:
64:
65: /* New fields for the Command widget class record */
66: typedef struct _CommandClass
67: {
68: int makes_compiler_happy; /* not used */
69: } CommandClassPart;
70:
71: /* Full class record declaration */
72: typedef struct _CommandClassRec {
73: CoreClassPart core_class;
74: LabelClassPart label_class;
75: CommandClassPart command_class;
76: } CommandClassRec;
77:
78: extern CommandClassRec commandClassRec;
79:
80: /***************************************
81: *
82: * Instance (widget) structure
83: *
84: **************************************/
85:
86: /* New fields for the Command widget record */
87: typedef struct {
88: Pixmap gray_pixmap;
89: GC highlight_GC;
90: GC inverse_GC;
91: GC inverse_text_GC;
92: Dimension highlight_thickness;
93: XtCallbackList callback_list;
94: XtCallbackProc callback;
95: Opaque closure;
96: Boolean set;
97: Boolean highlighted;
98: Boolean display_set;
99: Boolean display_highlighted;
100: } CommandPart;
101:
102:
103: /* XtEventsPtr eventTable;*/
104:
105:
106: /* Full widget declaration */
107: typedef struct _CommandRec {
108: CorePart core;
109: LabelPart label;
110: CommandPart command;
111: } CommandRec;
112:
113: #endif _XtCommandPrivate_h
114: /* DON'T ADD STUFF AFTER THIS #endif */
115:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.