1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
|
/* adapted from xlwradio.c in the XEmacs distribution.
Changes are Copyright (C) 2002-2004 the xdvik development team
Original copyright follows:
*/
/* Radio Widget for XEmacs.
Copyright (C) 1999 Edward A. Falk
This file is part of XEmacs.
XEmacs is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2, or (at your option) any
later version.
XEmacs is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/*
* RadioP.h - Private definitions for Radio widget
*
* Author: Edward A. Falk
* falk@falconer.vip.best.com
*
* Date: June 30, 1997
*
*/
#ifndef _XawRadioP_h
#define _XawRadioP_h
#include "xdvi-config.h"
#include "xlwradio.h"
#ifndef MOTIF
#include <X11/IntrinsicP.h>
#include <X11/StringDefs.h>
#include <X11/Intrinsic.h>
#include <X11/StringDefs.h>
#include <X11/Xos.h>
#include <X11/Xaw/Text.h>
#include <X11/Xaw/AsciiText.h>
#include <X11/Xaw/ToggleP.h>
/***********************************************************************
*
* Radio Widget Private Data
*
***********************************************************************/
typedef void (*XawDiamondProc) (Widget);
void RadioSet (Widget w,
XEvent *event,
String *params, /* unused */
Cardinal *num_params); /* unused */
void RadioUnset (Widget w,
XEvent *event,
String *params, /* unused */
Cardinal *num_params); /* unused */
/************************************
*
* Class structure
*
***********************************/
/* New fields for the Radio widget class record */
typedef struct _RadioClass {
Dimension dsize; /* diamond size */
XawDiamondProc drawDiamond;
/* pixmaps for the button */
Pixmap sel_radio; /* selected state */
Pixmap unsel_radio; /* unselected state */
Pixmap sel_menu; /* selected state */
Pixmap unsel_menu; /* unselected state */
/* TODO: 3-d and xaw-xpm features? */
XtPointer extension;
} RadioClassPart;
#define XtInheritDrawDiamond ((XawDiamondProc)_XtInherit)
/* Full class record declaration */
typedef struct _RadioClassRec {
CoreClassPart core_class;
SimpleClassPart simple_class;
#ifdef _ThreeDP_h
ThreeDClassPart threeD_class;
#endif
LabelClassPart label_class;
CommandClassPart command_class;
ToggleClassPart toggle_class;
RadioClassPart radio_class;
} RadioClassRec;
extern RadioClassRec radioClassRec;
/***************************************
*
* Instance (widget) structure
*
**************************************/
/* New fields for the Radio widget record */
typedef struct {
/* resources */
Boolean isRadio; /* radio if True, checkbox else */
/* TODO: 3-d and xaw-xpm features? */
/* private data */
XtPointer extension;
} RadioPart;
/* Full widget declaration */
typedef struct _RadioRec {
CorePart core;
SimplePart simple;
#ifdef _ThreeDP_h
ThreeDPart threeD;
#endif
LabelPart label;
CommandPart command;
TogglePart toggle;
RadioPart radio;
} RadioRec;
#endif /* MOTIF */
#endif /* _XawRadioP_h */
|