tomwalters@0
|
1 /*
|
tomwalters@0
|
2 Copyright (c) Applied Psychology Unit, Medical Research Council. 1993
|
tomwalters@0
|
3 ===========================================================================
|
tomwalters@0
|
4
|
tomwalters@0
|
5 Permission to use, copy, modify, and distribute this software without fee
|
tomwalters@0
|
6 is hereby granted for research purposes, provided that this copyright
|
tomwalters@0
|
7 notice appears in all copies and in all supporting documentation, and that
|
tomwalters@0
|
8 the software is not redistributed for any fee (except for a nominal
|
tomwalters@0
|
9 shipping charge). Anyone wanting to incorporate all or part of this
|
tomwalters@0
|
10 software in a commercial product must obtain a license from the Medical
|
tomwalters@0
|
11 Research Council.
|
tomwalters@0
|
12
|
tomwalters@0
|
13 The MRC makes no representations about the suitability of this
|
tomwalters@0
|
14 software for any purpose. It is provided "as is" without express or
|
tomwalters@0
|
15 implied warranty.
|
tomwalters@0
|
16
|
tomwalters@0
|
17 THE MRC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
|
tomwalters@0
|
18 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
|
tomwalters@0
|
19 THE A.P.U. BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES
|
tomwalters@0
|
20 OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
|
tomwalters@0
|
21 WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
|
tomwalters@0
|
22 ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
|
tomwalters@0
|
23 SOFTWARE.
|
tomwalters@0
|
24 */
|
tomwalters@0
|
25 /*
|
tomwalters@0
|
26 * buttons.c
|
tomwalters@0
|
27 * ---------
|
tomwalters@0
|
28 * Defines the size, position, and input-option-possibilites of the buttons
|
tomwalters@0
|
29 * that appear on the Controls Window.
|
tomwalters@0
|
30 *
|
tomwalters@0
|
31 * M. Akeroyd. July 1993. version 1.10
|
tomwalters@0
|
32 * Revisions: MAA: Christmas 1993.
|
tomwalters@0
|
33 *
|
tomwalters@0
|
34 */
|
tomwalters@0
|
35
|
tomwalters@0
|
36
|
tomwalters@0
|
37
|
tomwalters@0
|
38 #include <X11/Xlib.h>
|
tomwalters@0
|
39 #include <X11/Xutil.h>
|
tomwalters@0
|
40 #include <X11/Xos.h>
|
tomwalters@0
|
41 #include <X11/Xatom.h>
|
tomwalters@0
|
42 #include <stdio.h>
|
tomwalters@0
|
43
|
tomwalters@0
|
44 #include "xreview.h"
|
tomwalters@0
|
45
|
tomwalters@0
|
46
|
tomwalters@0
|
47
|
tomwalters@0
|
48
|
tomwalters@0
|
49 /* X .......................*/
|
tomwalters@0
|
50
|
tomwalters@0
|
51 extern Display *display;
|
tomwalters@0
|
52 extern int screen_num;
|
tomwalters@0
|
53 extern Screen *screen_ptr;
|
tomwalters@0
|
54
|
tomwalters@0
|
55 extern toplevelWindow control;
|
tomwalters@0
|
56 extern Pixmap stipple_pixmap;
|
tomwalters@0
|
57
|
tomwalters@0
|
58 extern buttonWindow button_quit, button_close;
|
tomwalters@0
|
59 extern buttonWindow button_animate;
|
tomwalters@0
|
60 extern buttonWindow button_startf, button_startb, button_stopf, button_stopb;
|
tomwalters@0
|
61 extern buttonWindow button_skipf, button_skipb, button_faster, button_slower;
|
tomwalters@0
|
62 extern buttonWindow button_firstframe, button_lastframe, button_middle;
|
tomwalters@0
|
63 extern buttonWindow button_stepf, button_stepff, button_stepb, button_stepbb;
|
tomwalters@0
|
64
|
tomwalters@0
|
65 extern buttonWindow info_speed, info_start, info_stop, info_skip;
|
tomwalters@0
|
66 extern buttonWindow info_title, info_frame;
|
tomwalters@0
|
67 extern buttonWindow info_time, info_freq, info_frstep;
|
tomwalters@0
|
68
|
tomwalters@0
|
69 extern GC button_gc;
|
tomwalters@0
|
70 extern XFontStruct *font_info;
|
tomwalters@0
|
71
|
tomwalters@0
|
72 extern int button_borderwidth ;
|
tomwalters@0
|
73
|
tomwalters@0
|
74
|
tomwalters@0
|
75 /* Command line .............*/
|
tomwalters@0
|
76
|
tomwalters@0
|
77 extern double scale; /* scale factor of Controls Window size */
|
tomwalters@0
|
78
|
tomwalters@0
|
79
|
tomwalters@0
|
80
|
tomwalters@0
|
81
|
tomwalters@0
|
82
|
tomwalters@0
|
83
|
tomwalters@0
|
84 /*-------------------------------------------------------------------------*/
|
tomwalters@0
|
85 /*-------------------------------------------------------------------------*/
|
tomwalters@0
|
86
|
tomwalters@0
|
87
|
tomwalters@0
|
88
|
tomwalters@0
|
89
|
tomwalters@0
|
90
|
tomwalters@0
|
91 Window create_button(int x, int y, int width, int height)
|
tomwalters@0
|
92 {
|
tomwalters@0
|
93 return (Window) XCreateSimpleWindow(display, control.win, \
|
tomwalters@0
|
94 x, y, width, height, \
|
tomwalters@0
|
95 button_borderwidth, \
|
tomwalters@0
|
96 BlackPixel(display, screen_num),\
|
tomwalters@0
|
97 WhitePixel(display, screen_num));
|
tomwalters@0
|
98 }
|
tomwalters@0
|
99
|
tomwalters@0
|
100
|
tomwalters@0
|
101
|
tomwalters@0
|
102
|
tomwalters@0
|
103
|
tomwalters@0
|
104
|
tomwalters@0
|
105 /*-------------------------------------------------------------------------*/
|
tomwalters@0
|
106 /*-------------------------------------------------------------------------*/
|
tomwalters@0
|
107
|
tomwalters@0
|
108
|
tomwalters@0
|
109
|
tomwalters@0
|
110
|
tomwalters@0
|
111
|
tomwalters@0
|
112 void initialise_buttons()
|
tomwalters@0
|
113 {
|
tomwalters@0
|
114 button_gc = XCreateGC(display, RootWindow(display, screen_num),\
|
tomwalters@0
|
115 control.valuemask, &control.values);
|
tomwalters@0
|
116 XSetForeground(display, button_gc, BlackPixel(display, screen_num));
|
tomwalters@0
|
117 XSetFillStyle(display, button_gc, FillSolid);
|
tomwalters@0
|
118 XSetFont(display, button_gc, font_info->fid);
|
tomwalters@0
|
119
|
tomwalters@0
|
120 /*------------------------------*/
|
tomwalters@0
|
121 /* Button Positions: all relative to top-left Controls corner.
|
tomwalters@0
|
122 * All in pixels */
|
tomwalters@0
|
123
|
tomwalters@0
|
124 button_quit.x = 20 * scale; button_quit.y = 10 * scale;
|
tomwalters@0
|
125 button_close.x = 20 * scale; button_close.y = 44 * scale;
|
tomwalters@0
|
126
|
tomwalters@0
|
127 button_animate.x = 500 * scale; button_animate.y = 90 * scale;
|
tomwalters@0
|
128 button_startf.x = 64 * scale; button_startf.y = 124 * scale;
|
tomwalters@0
|
129 button_startb.x = 14 * scale; button_startb.y = 124 * scale;
|
tomwalters@0
|
130 button_stopf.x = 184 * scale; button_stopf.y = 124 * scale;
|
tomwalters@0
|
131 button_stopb.x = 134 * scale; button_stopb.y = 124 * scale;
|
tomwalters@0
|
132 button_skipf.x = 304 * scale; button_skipf.y = 124 * scale;
|
tomwalters@0
|
133 button_skipb.x = 254 * scale; button_skipb.y = 124 * scale;
|
tomwalters@0
|
134 button_faster.x = 372 * scale; button_faster.y = 124 * scale;
|
tomwalters@0
|
135 button_slower.x = 422 * scale; button_slower.y = 124 * scale;
|
tomwalters@0
|
136
|
tomwalters@0
|
137 button_firstframe.x = 10 * scale; button_firstframe.y = 174 * scale;
|
tomwalters@0
|
138 button_stepbb.x = 80 * scale; button_stepbb.y = 174 * scale;
|
tomwalters@0
|
139 button_stepb.x = 150 * scale; button_stepb.y = 174 * scale;
|
tomwalters@0
|
140 button_middle.x = 220 * scale; button_middle.y = 174 * scale;
|
tomwalters@0
|
141 button_stepf.x = 290 * scale; button_stepf.y = 174 * scale;
|
tomwalters@0
|
142 button_stepff.x = 360 * scale; button_stepff.y = 174 * scale;
|
tomwalters@0
|
143 button_lastframe.x = 430 * scale; button_lastframe.y = 174 * scale;
|
tomwalters@0
|
144
|
tomwalters@0
|
145 /* Button sizes: also in pixels */
|
tomwalters@0
|
146
|
tomwalters@0
|
147 button_quit.width = 60 * scale; button_quit.height = 25 * scale;
|
tomwalters@0
|
148 button_close.width = 60 * scale; button_close.height = 25 * scale;
|
tomwalters@0
|
149 button_animate.width = 100 * scale; button_animate.height = 60 * scale;
|
tomwalters@0
|
150 button_startf.width = 40 * scale; button_startf.height = 25 * scale;
|
tomwalters@0
|
151 button_startb.width = 40 * scale; button_startb.height = 25 * scale;
|
tomwalters@0
|
152 button_stopf.width = 40 * scale; button_stopf.height = 25 * scale;
|
tomwalters@0
|
153 button_stopb.width = 40 * scale; button_stopb.height = 25 * scale;
|
tomwalters@0
|
154 button_skipf.width = 40 * scale; button_skipf.height = 25 * scale;
|
tomwalters@0
|
155 button_skipb.width = 40 * scale; button_skipb.height = 25 * scale;
|
tomwalters@0
|
156 button_faster.width = 45 * scale; button_faster.height = 25 * scale;
|
tomwalters@0
|
157 button_slower.width = 45 * scale; button_slower.height = 25 * scale;
|
tomwalters@0
|
158 button_lastframe.width = 60 * scale; button_lastframe.height = 25 *scale;
|
tomwalters@0
|
159 button_firstframe.width = 60 * scale; button_firstframe.height = 25 *scale;
|
tomwalters@0
|
160 button_middle.width = 60 * scale; button_middle.height = 25 * scale;
|
tomwalters@0
|
161 button_stepf.width = 60 * scale; button_stepf.height = 25 * scale;
|
tomwalters@0
|
162 button_stepff.width = 60 * scale; button_stepff.height = 25 * scale;
|
tomwalters@0
|
163 button_stepb.width = 60 * scale; button_stepb.height = 25 * scale;
|
tomwalters@0
|
164 button_stepbb.width = 60 * scale; button_stepbb.height = 25 * scale;
|
tomwalters@0
|
165
|
tomwalters@0
|
166 /*------------------------------*/
|
tomwalters@0
|
167 /* make the things */
|
tomwalters@0
|
168
|
tomwalters@0
|
169 button_quit.win = create_button(button_quit.x, button_quit.y, \
|
tomwalters@0
|
170 button_quit.width, button_quit.height);
|
tomwalters@0
|
171 button_close.win = create_button(button_close.x, button_close.y, \
|
tomwalters@0
|
172 button_close.width, button_close.height);
|
tomwalters@0
|
173 button_animate.win = create_button(button_animate.x, button_animate.y, \
|
tomwalters@0
|
174 button_animate.width, button_animate.height);
|
tomwalters@0
|
175 button_startf.win = create_button(button_startf.x, button_startf.y, \
|
tomwalters@0
|
176 button_startf.width, button_startf.height);
|
tomwalters@0
|
177 button_startb.win = create_button(button_startb.x, button_startb.y, \
|
tomwalters@0
|
178 button_startb.width, button_startb.height);
|
tomwalters@0
|
179 button_stopf.win = create_button(button_stopf.x, button_stopf.y, \
|
tomwalters@0
|
180 button_stopf.width, button_stopf.height);
|
tomwalters@0
|
181 button_stopb.win = create_button(button_stopb.x, button_stopb.y, \
|
tomwalters@0
|
182 button_stopb.width, button_stopb.height);
|
tomwalters@0
|
183 button_skipf.win = create_button(button_skipf.x, button_skipf.y, \
|
tomwalters@0
|
184 button_skipf.width, button_skipf.height);
|
tomwalters@0
|
185 button_skipb.win = create_button(button_skipb.x, button_skipb.y, \
|
tomwalters@0
|
186 button_skipb.width, button_skipb.height);
|
tomwalters@0
|
187 button_faster.win = create_button(button_faster.x, button_faster.y, \
|
tomwalters@0
|
188 button_faster.width, button_faster.height);
|
tomwalters@0
|
189 button_slower.win = create_button(button_slower.x, button_slower.y, \
|
tomwalters@0
|
190 button_slower.width, button_slower.height);
|
tomwalters@0
|
191 button_lastframe.win =create_button(button_lastframe.x, button_lastframe.y,\
|
tomwalters@0
|
192 button_lastframe.width, button_lastframe.height);
|
tomwalters@0
|
193 button_firstframe.win=create_button(button_firstframe.x,button_firstframe.y,\
|
tomwalters@0
|
194 button_firstframe.width, button_firstframe.height);
|
tomwalters@0
|
195 button_middle.win =create_button(button_middle.x, button_middle.y, \
|
tomwalters@0
|
196 button_middle.width, button_middle.height);
|
tomwalters@0
|
197 button_stepf.win = create_button(button_stepf.x, button_stepf.y, \
|
tomwalters@0
|
198 button_stepf.width, button_stepf.height);
|
tomwalters@0
|
199 button_stepff.win = create_button(button_stepff.x, button_stepff.y, \
|
tomwalters@0
|
200 button_stepff.width, button_stepff.height);
|
tomwalters@0
|
201 button_stepb.win = create_button(button_stepb.x, button_stepb.y, \
|
tomwalters@0
|
202 button_stepb.width, button_stepb.height);
|
tomwalters@0
|
203 button_stepbb.win = create_button(button_stepbb.x, button_stepbb.y, \
|
tomwalters@0
|
204 button_stepbb.width, button_stepbb.height);
|
tomwalters@0
|
205
|
tomwalters@0
|
206 /*---------------------------*/
|
tomwalters@0
|
207 /* Info positions and sizes. */
|
tomwalters@0
|
208
|
tomwalters@0
|
209 info_speed.x = 370 * scale; info_speed.y = 94 * scale;
|
tomwalters@0
|
210 info_start.x = 10 * scale; info_start.y = 94 * scale;
|
tomwalters@0
|
211 info_stop.x = 130 * scale; info_stop.y = 94 * scale;
|
tomwalters@0
|
212 info_skip.x = 250 * scale; info_skip.y = 94 * scale;
|
tomwalters@0
|
213 info_frame.x = 500 * scale; info_frame.y = 174 * scale;
|
tomwalters@0
|
214 info_title.x = 100 * scale; info_title.y = 10 * scale;
|
tomwalters@0
|
215 info_freq.x = 100 * scale; info_freq.y = 44 * scale;
|
tomwalters@0
|
216 info_time.x = 275 * scale; info_time.y = 44 * scale;
|
tomwalters@0
|
217 info_frstep.x = 475 * scale; info_frstep.y = 44 * scale;
|
tomwalters@0
|
218
|
tomwalters@0
|
219 info_speed.width = 100 * scale; info_speed.height = 25 * scale;
|
tomwalters@0
|
220 info_start.width = 100 * scale; info_start.height = 25 * scale;
|
tomwalters@0
|
221 info_stop.width = 100 * scale; info_stop.height = 25 * scale;
|
tomwalters@0
|
222 info_skip.width = 100 * scale; info_skip.height = 25 * scale;
|
tomwalters@0
|
223 info_frame.width = 100 * scale; info_frame.height = 25 * scale;
|
tomwalters@0
|
224 info_title.width = 500 * scale; info_title.height = 25 * scale;
|
tomwalters@0
|
225 info_freq.width = 175 * scale; info_freq.height = 25 * scale;
|
tomwalters@0
|
226 info_time.width = 175 * scale; info_time.height = 25 * scale;
|
tomwalters@0
|
227 info_frstep.width = 115 * scale; info_frstep.height = 25 * scale;
|
tomwalters@0
|
228
|
tomwalters@0
|
229 info_speed.win = create_button(info_speed.x, info_speed.y, \
|
tomwalters@0
|
230 info_speed.width, info_speed.height);
|
tomwalters@0
|
231 info_start.win = create_button(info_start.x, info_start.y, \
|
tomwalters@0
|
232 info_start.width, info_start.height);
|
tomwalters@0
|
233 info_stop.win = create_button(info_stop.x, info_stop.y, \
|
tomwalters@0
|
234 info_stop.width, info_stop.height);
|
tomwalters@0
|
235 info_skip.win = create_button(info_skip.x, info_skip.y, \
|
tomwalters@0
|
236 info_skip.width, info_skip.height);
|
tomwalters@0
|
237 info_frame.win = create_button(info_frame.x, info_frame.y, \
|
tomwalters@0
|
238 info_frame.width, info_frame.height);
|
tomwalters@0
|
239 info_title.win = create_button(info_title.x, info_title.y, \
|
tomwalters@0
|
240 info_title.width, info_title.height);
|
tomwalters@0
|
241 info_freq.win = create_button(info_freq.x, info_freq.y, \
|
tomwalters@0
|
242 info_freq.width, info_freq.height);
|
tomwalters@0
|
243 info_time.win = create_button(info_time.x, info_time.y, \
|
tomwalters@0
|
244 info_time.width, info_time.height);
|
tomwalters@0
|
245 info_frstep.win = create_button(info_frstep.x, info_frstep.y, \
|
tomwalters@0
|
246 info_frstep.width, info_frstep.height);
|
tomwalters@0
|
247
|
tomwalters@0
|
248
|
tomwalters@0
|
249 /*------------------------------*/
|
tomwalters@0
|
250 /* Define the allowed inputs to the buttons.
|
tomwalters@0
|
251 */
|
tomwalters@0
|
252 XSelectInput(display, button_quit.win, ButtonPressMask );
|
tomwalters@0
|
253 XSelectInput(display, button_close.win, ButtonPressMask );
|
tomwalters@0
|
254 XSelectInput(display, button_animate.win, ButtonPressMask );
|
tomwalters@0
|
255 XSelectInput(display, button_startf.win, ButtonPressMask );
|
tomwalters@0
|
256 XSelectInput(display, button_startb.win, ButtonPressMask );
|
tomwalters@0
|
257 XSelectInput(display, button_stopf.win, ButtonPressMask );
|
tomwalters@0
|
258 XSelectInput(display, button_stopb.win, ButtonPressMask );
|
tomwalters@0
|
259 XSelectInput(display, button_skipf.win, ButtonPressMask );
|
tomwalters@0
|
260 XSelectInput(display, button_skipb.win, ButtonPressMask );
|
tomwalters@0
|
261 XSelectInput(display, button_faster.win, ButtonPressMask );
|
tomwalters@0
|
262 XSelectInput(display, button_slower.win, ButtonPressMask );
|
tomwalters@0
|
263 XSelectInput(display, button_lastframe.win, ButtonPressMask );
|
tomwalters@0
|
264 XSelectInput(display, button_firstframe.win, ButtonPressMask );
|
tomwalters@0
|
265 XSelectInput(display, button_middle.win, ButtonPressMask );
|
tomwalters@0
|
266 XSelectInput(display, button_stepf.win, ButtonPressMask );
|
tomwalters@0
|
267 XSelectInput(display, button_stepff.win, ButtonPressMask );
|
tomwalters@0
|
268 XSelectInput(display, button_stepb.win, ButtonPressMask );
|
tomwalters@0
|
269 XSelectInput(display, button_stepbb.win, ButtonPressMask );
|
tomwalters@0
|
270
|
tomwalters@0
|
271 XSelectInput(display, info_speed.win, ButtonPressMask);
|
tomwalters@0
|
272 XSelectInput(display, info_start.win, ButtonPressMask);
|
tomwalters@0
|
273 XSelectInput(display, info_stop.win, ButtonPressMask);
|
tomwalters@0
|
274 XSelectInput(display, info_skip.win, ButtonPressMask);
|
tomwalters@0
|
275 XSelectInput(display, info_frame.win, ButtonPressMask);
|
tomwalters@0
|
276 XSelectInput(display, info_title.win, ButtonPressMask);
|
tomwalters@0
|
277 XSelectInput(display, info_freq.win, ButtonPressMask);
|
tomwalters@0
|
278 XSelectInput(display, info_time.win, ButtonPressMask);
|
tomwalters@0
|
279 XSelectInput(display, info_frstep.win, ButtonPressMask);
|
tomwalters@0
|
280
|
tomwalters@0
|
281 /* Define the backgrounds. */
|
tomwalters@0
|
282
|
tomwalters@0
|
283 XSetWindowBackgroundPixmap(display, button_quit.win, stipple_pixmap);
|
tomwalters@0
|
284 XSetWindowBackgroundPixmap(display, button_close.win, stipple_pixmap);
|
tomwalters@0
|
285 XSetWindowBackgroundPixmap(display, button_animate.win, stipple_pixmap);
|
tomwalters@0
|
286 XSetWindowBackgroundPixmap(display, button_startf.win, stipple_pixmap);
|
tomwalters@0
|
287 XSetWindowBackgroundPixmap(display, button_startb.win, stipple_pixmap);
|
tomwalters@0
|
288 XSetWindowBackgroundPixmap(display, button_stopf.win, stipple_pixmap);
|
tomwalters@0
|
289 XSetWindowBackgroundPixmap(display, button_stopb.win, stipple_pixmap);
|
tomwalters@0
|
290 XSetWindowBackgroundPixmap(display, button_skipf.win, stipple_pixmap);
|
tomwalters@0
|
291 XSetWindowBackgroundPixmap(display, button_skipb.win, stipple_pixmap);
|
tomwalters@0
|
292 XSetWindowBackgroundPixmap(display, button_faster.win, stipple_pixmap);
|
tomwalters@0
|
293 XSetWindowBackgroundPixmap(display, button_slower.win, stipple_pixmap);
|
tomwalters@0
|
294 XSetWindowBackgroundPixmap(display, button_lastframe.win, stipple_pixmap);
|
tomwalters@0
|
295 XSetWindowBackgroundPixmap(display, button_firstframe.win, stipple_pixmap);
|
tomwalters@0
|
296 XSetWindowBackgroundPixmap(display, button_middle.win, stipple_pixmap);
|
tomwalters@0
|
297 XSetWindowBackgroundPixmap(display, button_stepf.win, stipple_pixmap);
|
tomwalters@0
|
298 XSetWindowBackgroundPixmap(display, button_stepff.win, stipple_pixmap);
|
tomwalters@0
|
299 XSetWindowBackgroundPixmap(display, button_stepb.win, stipple_pixmap);
|
tomwalters@0
|
300 XSetWindowBackgroundPixmap(display, button_stepbb.win, stipple_pixmap);
|
tomwalters@0
|
301
|
tomwalters@0
|
302 XSetWindowBackgroundPixmap(display, info_speed.win, stipple_pixmap);
|
tomwalters@0
|
303 XSetWindowBackgroundPixmap(display, info_start.win, stipple_pixmap);
|
tomwalters@0
|
304 XSetWindowBackgroundPixmap(display, info_stop.win, stipple_pixmap);
|
tomwalters@0
|
305 XSetWindowBackgroundPixmap(display, info_skip.win, stipple_pixmap);
|
tomwalters@0
|
306 XSetWindowBackgroundPixmap(display, info_frame.win, stipple_pixmap);
|
tomwalters@0
|
307 XSetWindowBackgroundPixmap(display, info_title.win, stipple_pixmap);
|
tomwalters@0
|
308 XSetWindowBackgroundPixmap(display, info_freq.win, stipple_pixmap);
|
tomwalters@0
|
309 XSetWindowBackgroundPixmap(display, info_time.win, stipple_pixmap);
|
tomwalters@0
|
310 XSetWindowBackgroundPixmap(display, info_frstep.win, stipple_pixmap);
|
tomwalters@0
|
311 }
|
tomwalters@0
|
312
|
tomwalters@0
|
313
|
tomwalters@0
|
314
|
tomwalters@0
|
315
|
tomwalters@0
|
316 /* The End */
|
tomwalters@0
|
317 /*------------------------------------------------------------------------*/
|
tomwalters@0
|
318 /*------------------------------------------------------------------------*/
|
tomwalters@0
|
319
|
tomwalters@0
|
320
|
tomwalters@0
|
321
|
tomwalters@0
|
322
|