gdk3 2.0.2 → 2.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/Rakefile +6 -2
- data/ext/gdk3/extconf.rb +4 -1
- data/ext/gdk3/gdk3.def +2 -2
- data/ext/gdk3/rbgdk.c +5 -51
- data/ext/gdk3/rbgdk3.h +6 -4
- data/ext/gdk3/rbgdk3conversions.h +5 -2
- data/ext/gdk3/rbgdk3private.h +1 -6
- data/ext/gdk3/rbgdkcairo.c +0 -4
- data/ext/gdk3/rbgdkdevice.c +60 -4
- data/ext/gdk3/rbgdkdevicemanager.c +39 -0
- data/ext/gdk3/rbgdkdisplay.c +8 -63
- data/ext/gdk3/rbgdkevent.c +644 -396
- data/ext/gdk3/rbgdkwindow.c +29 -32
- data/lib/gdk3/deprecated.rb +13 -1
- data/test/test-gdk-event.rb +598 -0
- data/test/test-gdk-rgba.rb +2 -2
- metadata +14 -18
data/ext/gdk3/rbgdkevent.c
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C)
|
4
|
-
* Copyright (C) 2002-2004 Ruby-GNOME2 Project Team
|
3
|
+
* Copyright (C) 2002-2013 Ruby-GNOME2 Project Team
|
5
4
|
* Copyright (C) 1998-2000 Yukihiro Matsumoto,
|
6
5
|
* Daisuke Kanda,
|
7
6
|
* Hiroshi Igarashi
|
@@ -24,25 +23,344 @@
|
|
24
23
|
|
25
24
|
#include "rbgdk3private.h"
|
26
25
|
|
27
|
-
static VALUE
|
26
|
+
static VALUE rb_cGdkEvent;
|
27
|
+
static VALUE rb_cGdkEventAny;
|
28
|
+
static VALUE rb_cGdkEventExpose;
|
29
|
+
static VALUE rb_cGdkEventVisibility;
|
30
|
+
static VALUE rb_cGdkEventMotion;
|
31
|
+
static VALUE rb_cGdkEventButton;
|
32
|
+
static VALUE rb_cGdkEventTouch;
|
33
|
+
static VALUE rb_cGdkEventScroll;
|
34
|
+
static VALUE rb_cGdkEventKey;
|
35
|
+
static VALUE rb_cGdkEventCrossing;
|
36
|
+
static VALUE rb_cGdkEventFocus;
|
37
|
+
static VALUE rb_cGdkEventConfigure;
|
38
|
+
static VALUE rb_cGdkEventProperty;
|
39
|
+
static VALUE rb_cGdkEventSelection;
|
40
|
+
static VALUE rb_cGdkEventOwnerChange;
|
41
|
+
static VALUE rb_cGdkEventProximity;
|
42
|
+
static VALUE rb_cGdkEventDND;
|
43
|
+
static VALUE rb_cGdkEventWindowState;
|
44
|
+
static VALUE rb_cGdkEventSetting;
|
45
|
+
static VALUE rb_cGdkEventGrabBroken;
|
46
|
+
|
47
|
+
#define DEFINE_EVENT_TYPE(type_lower_case, type_upper_case) \
|
48
|
+
static GType \
|
49
|
+
rb_gdk_event_ ## type_lower_case ## _get_type(void) \
|
50
|
+
{ \
|
51
|
+
static GType type = 0; \
|
52
|
+
if (type == 0) { \
|
53
|
+
type = g_boxed_type_register_static("GdkEvent" # type_upper_case, \
|
54
|
+
(GBoxedCopyFunc)gdk_event_copy, \
|
55
|
+
(GBoxedFreeFunc)gdk_event_free); \
|
56
|
+
} \
|
57
|
+
return type; \
|
58
|
+
}
|
59
|
+
|
60
|
+
DEFINE_EVENT_TYPE(any, Any)
|
61
|
+
DEFINE_EVENT_TYPE(expose, Expose)
|
62
|
+
DEFINE_EVENT_TYPE(visibility, Visibility)
|
63
|
+
DEFINE_EVENT_TYPE(motion, Motion)
|
64
|
+
DEFINE_EVENT_TYPE(button, Button)
|
65
|
+
DEFINE_EVENT_TYPE(touch, Touch)
|
66
|
+
DEFINE_EVENT_TYPE(scroll, Scroll)
|
67
|
+
DEFINE_EVENT_TYPE(key, Key)
|
68
|
+
DEFINE_EVENT_TYPE(crossing, Crossing)
|
69
|
+
DEFINE_EVENT_TYPE(focus, Focus)
|
70
|
+
DEFINE_EVENT_TYPE(configure, Configure)
|
71
|
+
DEFINE_EVENT_TYPE(property, Property)
|
72
|
+
DEFINE_EVENT_TYPE(selection, Selection)
|
73
|
+
DEFINE_EVENT_TYPE(owner_change, OwnerChange)
|
74
|
+
DEFINE_EVENT_TYPE(proximity, Proximity)
|
75
|
+
DEFINE_EVENT_TYPE(dnd, DND)
|
76
|
+
DEFINE_EVENT_TYPE(window_state, WindowState)
|
77
|
+
DEFINE_EVENT_TYPE(setting, Setting)
|
78
|
+
DEFINE_EVENT_TYPE(grab_broken, GrabBroken)
|
79
|
+
|
80
|
+
#define GDK_TYPE_EVENT_ANY (rb_gdk_event_any_get_type())
|
81
|
+
#define GDK_TYPE_EVENT_EXPOSE (rb_gdk_event_expose_get_type())
|
82
|
+
#define GDK_TYPE_EVENT_VISIBILITY (rb_gdk_event_visibility_get_type())
|
83
|
+
#define GDK_TYPE_EVENT_MOTION (rb_gdk_event_motion_get_type())
|
84
|
+
#define GDK_TYPE_EVENT_BUTTON (rb_gdk_event_button_get_type())
|
85
|
+
#define GDK_TYPE_EVENT_TOUCH (rb_gdk_event_touch_get_type())
|
86
|
+
#define GDK_TYPE_EVENT_SCROLL (rb_gdk_event_scroll_get_type())
|
87
|
+
#define GDK_TYPE_EVENT_KEY (rb_gdk_event_key_get_type())
|
88
|
+
#define GDK_TYPE_EVENT_CROSSING (rb_gdk_event_crossing_get_type())
|
89
|
+
#define GDK_TYPE_EVENT_FOCUS (rb_gdk_event_focus_get_type())
|
90
|
+
#define GDK_TYPE_EVENT_CONFIGURE (rb_gdk_event_configure_get_type())
|
91
|
+
#define GDK_TYPE_EVENT_PROPERTY (rb_gdk_event_property_get_type())
|
92
|
+
#define GDK_TYPE_EVENT_SELECTION (rb_gdk_event_selection_get_type())
|
93
|
+
#define GDK_TYPE_EVENT_OWNER_CHANGE (rb_gdk_event_owner_change_get_type())
|
94
|
+
#define GDK_TYPE_EVENT_PROXIMITY (rb_gdk_event_proximity_get_type())
|
95
|
+
#define GDK_TYPE_EVENT_DND (rb_gdk_event_dnd_get_type())
|
96
|
+
#define GDK_TYPE_EVENT_WINDOW_STATE (rb_gdk_event_window_state_get_type())
|
97
|
+
#define GDK_TYPE_EVENT_SETTING (rb_gdk_event_setting_get_type())
|
98
|
+
#define GDK_TYPE_EVENT_GRAB_BROKEN (rb_gdk_event_grab_broken_get_type())
|
28
99
|
|
29
100
|
/***********************************************/
|
30
101
|
|
31
|
-
|
32
|
-
|
102
|
+
static GType
|
103
|
+
rb_gdk_event_type_to_gtype(GdkEventType event_type)
|
104
|
+
{
|
105
|
+
GType gtype = GDK_TYPE_EVENT_ANY;
|
106
|
+
|
107
|
+
switch (event_type) {
|
108
|
+
case GDK_NOTHING:
|
109
|
+
case GDK_DELETE:
|
110
|
+
case GDK_DESTROY:
|
111
|
+
break;
|
112
|
+
case GDK_EXPOSE:
|
113
|
+
gtype = GDK_TYPE_EVENT_EXPOSE;
|
114
|
+
break;
|
115
|
+
case GDK_MOTION_NOTIFY:
|
116
|
+
gtype = GDK_TYPE_EVENT_MOTION;
|
117
|
+
break;
|
118
|
+
case GDK_BUTTON_PRESS:
|
119
|
+
case GDK_2BUTTON_PRESS:
|
120
|
+
case GDK_3BUTTON_PRESS:
|
121
|
+
case GDK_BUTTON_RELEASE:
|
122
|
+
gtype = GDK_TYPE_EVENT_BUTTON;
|
123
|
+
break;
|
124
|
+
case GDK_KEY_PRESS:
|
125
|
+
case GDK_KEY_RELEASE:
|
126
|
+
gtype = GDK_TYPE_EVENT_KEY;
|
127
|
+
break;
|
128
|
+
case GDK_ENTER_NOTIFY:
|
129
|
+
case GDK_LEAVE_NOTIFY:
|
130
|
+
gtype = GDK_TYPE_EVENT_CROSSING;
|
131
|
+
break;
|
132
|
+
case GDK_FOCUS_CHANGE:
|
133
|
+
gtype = GDK_TYPE_EVENT_FOCUS;
|
134
|
+
break;
|
135
|
+
case GDK_CONFIGURE:
|
136
|
+
gtype = GDK_TYPE_EVENT_CONFIGURE;
|
137
|
+
break;
|
138
|
+
case GDK_MAP:
|
139
|
+
case GDK_UNMAP:
|
140
|
+
break;
|
141
|
+
case GDK_PROPERTY_NOTIFY:
|
142
|
+
gtype = GDK_TYPE_EVENT_PROPERTY;
|
143
|
+
break;
|
144
|
+
case GDK_SELECTION_CLEAR:
|
145
|
+
case GDK_SELECTION_REQUEST:
|
146
|
+
case GDK_SELECTION_NOTIFY:
|
147
|
+
gtype = GDK_TYPE_EVENT_SELECTION;
|
148
|
+
break;
|
149
|
+
case GDK_PROXIMITY_IN:
|
150
|
+
case GDK_PROXIMITY_OUT:
|
151
|
+
gtype = GDK_TYPE_EVENT_PROXIMITY;
|
152
|
+
break;
|
153
|
+
case GDK_DRAG_ENTER:
|
154
|
+
case GDK_DRAG_LEAVE:
|
155
|
+
case GDK_DRAG_MOTION:
|
156
|
+
case GDK_DRAG_STATUS:
|
157
|
+
case GDK_DROP_START:
|
158
|
+
case GDK_DROP_FINISHED:
|
159
|
+
gtype = GDK_TYPE_EVENT_DND;
|
160
|
+
break;
|
161
|
+
case GDK_CLIENT_EVENT:
|
162
|
+
break;
|
163
|
+
case GDK_VISIBILITY_NOTIFY:
|
164
|
+
gtype = GDK_TYPE_EVENT_VISIBILITY;
|
165
|
+
break;
|
166
|
+
case GDK_SCROLL:
|
167
|
+
gtype = GDK_TYPE_EVENT_SCROLL;
|
168
|
+
break;
|
169
|
+
case GDK_WINDOW_STATE:
|
170
|
+
gtype = GDK_TYPE_EVENT_WINDOW_STATE;
|
171
|
+
break;
|
172
|
+
case GDK_SETTING:
|
173
|
+
gtype = GDK_TYPE_EVENT_SETTING;
|
174
|
+
break;
|
175
|
+
case GDK_OWNER_CHANGE:
|
176
|
+
gtype = GDK_TYPE_EVENT_OWNER_CHANGE;
|
177
|
+
break;
|
178
|
+
case GDK_GRAB_BROKEN:
|
179
|
+
gtype = GDK_TYPE_EVENT_GRAB_BROKEN;
|
180
|
+
break;
|
181
|
+
case GDK_DAMAGE:
|
182
|
+
gtype = GDK_TYPE_EVENT_EXPOSE;
|
183
|
+
break;
|
184
|
+
case GDK_TOUCH_BEGIN:
|
185
|
+
case GDK_TOUCH_UPDATE:
|
186
|
+
case GDK_TOUCH_END:
|
187
|
+
case GDK_TOUCH_CANCEL:
|
188
|
+
gtype = GDK_TYPE_EVENT_TOUCH;
|
189
|
+
break;
|
190
|
+
case GDK_EVENT_LAST:
|
191
|
+
break;
|
192
|
+
default:
|
193
|
+
break;
|
194
|
+
}
|
195
|
+
|
196
|
+
return gtype;
|
197
|
+
}
|
198
|
+
|
199
|
+
static VALUE
|
200
|
+
rb_gdk_event_type_to_class(GdkEventType event_type)
|
201
|
+
{
|
202
|
+
VALUE klass = Qnil;
|
203
|
+
|
204
|
+
switch (event_type) {
|
205
|
+
case GDK_NOTHING:
|
206
|
+
case GDK_DELETE:
|
207
|
+
case GDK_DESTROY:
|
208
|
+
break;
|
209
|
+
case GDK_EXPOSE:
|
210
|
+
klass = rb_cGdkEventExpose;
|
211
|
+
break;
|
212
|
+
case GDK_MOTION_NOTIFY:
|
213
|
+
klass = rb_cGdkEventMotion;
|
214
|
+
break;
|
215
|
+
case GDK_BUTTON_PRESS:
|
216
|
+
case GDK_2BUTTON_PRESS:
|
217
|
+
case GDK_3BUTTON_PRESS:
|
218
|
+
case GDK_BUTTON_RELEASE:
|
219
|
+
klass = rb_cGdkEventButton;
|
220
|
+
break;
|
221
|
+
case GDK_KEY_PRESS:
|
222
|
+
case GDK_KEY_RELEASE:
|
223
|
+
klass = rb_cGdkEventKey;
|
224
|
+
break;
|
225
|
+
case GDK_ENTER_NOTIFY:
|
226
|
+
case GDK_LEAVE_NOTIFY:
|
227
|
+
klass = rb_cGdkEventCrossing;
|
228
|
+
break;
|
229
|
+
case GDK_FOCUS_CHANGE:
|
230
|
+
klass = rb_cGdkEventFocus;
|
231
|
+
break;
|
232
|
+
case GDK_CONFIGURE:
|
233
|
+
klass = rb_cGdkEventConfigure;
|
234
|
+
break;
|
235
|
+
case GDK_MAP:
|
236
|
+
case GDK_UNMAP:
|
237
|
+
break;
|
238
|
+
case GDK_PROPERTY_NOTIFY:
|
239
|
+
klass = rb_cGdkEventProperty;
|
240
|
+
break;
|
241
|
+
case GDK_SELECTION_CLEAR:
|
242
|
+
case GDK_SELECTION_REQUEST:
|
243
|
+
case GDK_SELECTION_NOTIFY:
|
244
|
+
klass = rb_cGdkEventSelection;
|
245
|
+
break;
|
246
|
+
case GDK_PROXIMITY_IN:
|
247
|
+
case GDK_PROXIMITY_OUT:
|
248
|
+
klass = rb_cGdkEventProximity;
|
249
|
+
break;
|
250
|
+
case GDK_DRAG_ENTER:
|
251
|
+
case GDK_DRAG_LEAVE:
|
252
|
+
case GDK_DRAG_MOTION:
|
253
|
+
case GDK_DRAG_STATUS:
|
254
|
+
case GDK_DROP_START:
|
255
|
+
case GDK_DROP_FINISHED:
|
256
|
+
klass = rb_cGdkEventDND;
|
257
|
+
break;
|
258
|
+
case GDK_CLIENT_EVENT:
|
259
|
+
break;
|
260
|
+
case GDK_VISIBILITY_NOTIFY:
|
261
|
+
klass = rb_cGdkEventVisibility;
|
262
|
+
break;
|
263
|
+
case GDK_SCROLL:
|
264
|
+
klass = rb_cGdkEventScroll;
|
265
|
+
break;
|
266
|
+
case GDK_WINDOW_STATE:
|
267
|
+
klass = rb_cGdkEventWindowState;
|
268
|
+
break;
|
269
|
+
case GDK_SETTING:
|
270
|
+
klass = rb_cGdkEventSetting;
|
271
|
+
break;
|
272
|
+
case GDK_OWNER_CHANGE:
|
273
|
+
klass = rb_cGdkEventOwnerChange;
|
274
|
+
break;
|
275
|
+
case GDK_GRAB_BROKEN:
|
276
|
+
klass = rb_cGdkEventGrabBroken;
|
277
|
+
break;
|
278
|
+
case GDK_DAMAGE:
|
279
|
+
klass = rb_cGdkEventExpose;
|
280
|
+
break;
|
281
|
+
case GDK_TOUCH_BEGIN:
|
282
|
+
case GDK_TOUCH_UPDATE:
|
283
|
+
case GDK_TOUCH_END:
|
284
|
+
case GDK_TOUCH_CANCEL:
|
285
|
+
klass = rb_cGdkEventTouch;
|
286
|
+
break;
|
287
|
+
case GDK_EVENT_LAST:
|
288
|
+
break;
|
289
|
+
default:
|
290
|
+
break;
|
291
|
+
}
|
292
|
+
|
293
|
+
if (NIL_P(klass)) {
|
294
|
+
klass = rb_cGdkEventAny;
|
295
|
+
}
|
296
|
+
|
297
|
+
return klass;
|
298
|
+
}
|
299
|
+
|
300
|
+
static GType
|
301
|
+
rb_gdk_event_to_gtype(VALUE event)
|
33
302
|
{
|
34
|
-
VALUE
|
35
|
-
|
303
|
+
VALUE klass;
|
304
|
+
GType type = GDK_TYPE_EVENT;
|
305
|
+
|
306
|
+
klass = rb_obj_class(event);
|
307
|
+
if (klass == rb_cGdkEvent) {
|
308
|
+
type = GDK_TYPE_EVENT;
|
309
|
+
} else if (klass == rb_cGdkEventAny) {
|
310
|
+
type = GDK_TYPE_EVENT_ANY;
|
311
|
+
} else if (klass == rb_cGdkEventExpose) {
|
312
|
+
type = GDK_TYPE_EVENT_EXPOSE;
|
313
|
+
} else if (klass == rb_cGdkEventVisibility) {
|
314
|
+
type = GDK_TYPE_EVENT_VISIBILITY;
|
315
|
+
} else if (klass == rb_cGdkEventMotion) {
|
316
|
+
type = GDK_TYPE_EVENT_MOTION;
|
317
|
+
} else if (klass == rb_cGdkEventButton) {
|
318
|
+
type = GDK_TYPE_EVENT_BUTTON;
|
319
|
+
} else if (klass == rb_cGdkEventScroll) {
|
320
|
+
type = GDK_TYPE_EVENT_SCROLL;
|
321
|
+
} else if (klass == rb_cGdkEventKey) {
|
322
|
+
type = GDK_TYPE_EVENT_KEY;
|
323
|
+
} else if (klass == rb_cGdkEventCrossing) {
|
324
|
+
type = GDK_TYPE_EVENT_CROSSING;
|
325
|
+
} else if (klass == rb_cGdkEventFocus) {
|
326
|
+
type = GDK_TYPE_EVENT_FOCUS;
|
327
|
+
} else if (klass == rb_cGdkEventConfigure) {
|
328
|
+
type = GDK_TYPE_EVENT_CONFIGURE;
|
329
|
+
} else if (klass == rb_cGdkEventProperty) {
|
330
|
+
type = GDK_TYPE_EVENT_PROPERTY;
|
331
|
+
} else if (klass == rb_cGdkEventSelection) {
|
332
|
+
type = GDK_TYPE_EVENT_SELECTION;
|
333
|
+
} else if (klass == rb_cGdkEventOwnerChange) {
|
334
|
+
type = GDK_TYPE_EVENT_OWNER_CHANGE;
|
335
|
+
} else if (klass == rb_cGdkEventProximity) {
|
336
|
+
type = GDK_TYPE_EVENT_PROXIMITY;
|
337
|
+
} else if (klass == rb_cGdkEventDND) {
|
338
|
+
type = GDK_TYPE_EVENT_DND;
|
339
|
+
} else if (klass == rb_cGdkEventWindowState) {
|
340
|
+
type = GDK_TYPE_EVENT_WINDOW_STATE;
|
341
|
+
} else if (klass == rb_cGdkEventSetting) {
|
342
|
+
type = GDK_TYPE_EVENT_SETTING;
|
343
|
+
} else if (klass == rb_cGdkEventGrabBroken) {
|
344
|
+
type = GDK_TYPE_EVENT_GRAB_BROKEN;
|
345
|
+
} else if (klass == rb_cGdkEventTouch) {
|
346
|
+
type = GDK_TYPE_EVENT_TOUCH;
|
347
|
+
} else {
|
348
|
+
rb_raise(rb_eArgError, "Not event object: %s", RBG_INSPECT(event));
|
349
|
+
}
|
350
|
+
|
351
|
+
return type;
|
352
|
+
}
|
36
353
|
|
37
|
-
|
38
|
-
|
39
|
-
|
354
|
+
VALUE
|
355
|
+
rbgdk_gdkevent2rval(GdkEvent *event)
|
356
|
+
{
|
357
|
+
return BOXED2RVAL(event, rb_gdk_event_type_to_gtype(event->any.type));
|
40
358
|
}
|
41
359
|
|
42
|
-
GdkEvent*
|
43
|
-
|
360
|
+
GdkEvent *
|
361
|
+
rbgdk_rval2gdkevent(VALUE event)
|
44
362
|
{
|
45
|
-
return
|
363
|
+
return RVAL2BOXED(event, rb_gdk_event_to_gtype(event));
|
46
364
|
}
|
47
365
|
|
48
366
|
/***********************************************/
|
@@ -50,12 +368,12 @@ get_gdkevent(VALUE event)
|
|
50
368
|
static VALUE \
|
51
369
|
gdkevent ## type ## _ ## name (VALUE self)\
|
52
370
|
{\
|
53
|
-
return CSTR2RVAL(
|
371
|
+
return CSTR2RVAL(RVAL2GDKEVENT(self)->type.name);\
|
54
372
|
}\
|
55
373
|
static VALUE \
|
56
374
|
gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
57
375
|
{\
|
58
|
-
|
376
|
+
RVAL2GDKEVENT(self)->type.name = (gchar *)RVAL2CSTR(val);\
|
59
377
|
return self;\
|
60
378
|
}
|
61
379
|
|
@@ -63,12 +381,12 @@ gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
|
63
381
|
static VALUE \
|
64
382
|
gdkevent ## type ## _ ## name (VALUE self)\
|
65
383
|
{\
|
66
|
-
return INT2NUM(
|
384
|
+
return INT2NUM(RVAL2GDKEVENT(self)->type.name);\
|
67
385
|
}\
|
68
386
|
static VALUE \
|
69
387
|
gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
70
388
|
{\
|
71
|
-
|
389
|
+
RVAL2GDKEVENT(self)->type.name = NUM2INT(val);\
|
72
390
|
return self;\
|
73
391
|
}
|
74
392
|
|
@@ -76,12 +394,12 @@ gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
|
76
394
|
static VALUE \
|
77
395
|
gdkevent ## type ## _ ## name (VALUE self)\
|
78
396
|
{\
|
79
|
-
return UINT2NUM(
|
397
|
+
return UINT2NUM(RVAL2GDKEVENT(self)->type.name);\
|
80
398
|
}\
|
81
399
|
static VALUE \
|
82
400
|
gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
83
401
|
{\
|
84
|
-
|
402
|
+
RVAL2GDKEVENT(self)->type.name = NUM2UINT(val);\
|
85
403
|
return self;\
|
86
404
|
}
|
87
405
|
|
@@ -89,12 +407,12 @@ gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
|
89
407
|
static VALUE \
|
90
408
|
gdkevent ## type ## _ ## name (VALUE self)\
|
91
409
|
{\
|
92
|
-
return GOBJ2RVAL(
|
410
|
+
return GOBJ2RVAL(RVAL2GDKEVENT(self)->type.name);\
|
93
411
|
}\
|
94
412
|
static VALUE \
|
95
413
|
gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
96
414
|
{\
|
97
|
-
|
415
|
+
RVAL2GDKEVENT(self)->type.name = RVAL2GDKWINDOW(val);\
|
98
416
|
return self;\
|
99
417
|
}
|
100
418
|
|
@@ -102,12 +420,12 @@ gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
|
102
420
|
static VALUE \
|
103
421
|
gdkevent ## type ## _ ## name (VALUE self)\
|
104
422
|
{\
|
105
|
-
return rb_float_new(
|
423
|
+
return rb_float_new(RVAL2GDKEVENT(self)->type.name);\
|
106
424
|
}\
|
107
425
|
static VALUE \
|
108
426
|
gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
109
427
|
{\
|
110
|
-
|
428
|
+
RVAL2GDKEVENT(self)->type.name = NUM2DBL(val);\
|
111
429
|
return self;\
|
112
430
|
}
|
113
431
|
|
@@ -115,13 +433,13 @@ gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
|
115
433
|
static VALUE \
|
116
434
|
gdkevent ## type ## _ ## name (VALUE self)\
|
117
435
|
{\
|
118
|
-
return GOBJ2RVAL(
|
436
|
+
return GOBJ2RVAL(RVAL2GDKEVENT(self)->type.name);\
|
119
437
|
}\
|
120
438
|
static VALUE \
|
121
439
|
gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
122
440
|
{\
|
123
441
|
GdkEvent *event;\
|
124
|
-
event =
|
442
|
+
event = RVAL2GDKEVENT(self);\
|
125
443
|
if (event->type.name)\
|
126
444
|
g_object_unref(event->type.name);\
|
127
445
|
event->type.name = RVAL2GOBJ(val);\
|
@@ -134,12 +452,12 @@ gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
|
134
452
|
static VALUE \
|
135
453
|
gdkevent ## type ## _ ## name (VALUE self)\
|
136
454
|
{\
|
137
|
-
return CBOOL2RVAL(
|
455
|
+
return CBOOL2RVAL(RVAL2GDKEVENT(self)->type.name);\
|
138
456
|
}\
|
139
457
|
static VALUE \
|
140
458
|
gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
141
459
|
{\
|
142
|
-
|
460
|
+
RVAL2GDKEVENT(self)->type.name = RVAL2CBOOL(val);\
|
143
461
|
return self;\
|
144
462
|
}
|
145
463
|
|
@@ -147,13 +465,13 @@ gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
|
147
465
|
static VALUE \
|
148
466
|
gdkevent ## type ## _ ## name (VALUE self)\
|
149
467
|
{\
|
150
|
-
GdkAtom atom =
|
468
|
+
GdkAtom atom = RVAL2GDKEVENT(self)->type.name;\
|
151
469
|
return GDKATOM2RVAL(atom);\
|
152
470
|
}\
|
153
471
|
static VALUE \
|
154
472
|
gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
155
473
|
{\
|
156
|
-
|
474
|
+
RVAL2GDKEVENT(self)->type.name = RVAL2ATOM(val);\
|
157
475
|
return self;\
|
158
476
|
}
|
159
477
|
|
@@ -161,12 +479,12 @@ gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
|
161
479
|
static VALUE \
|
162
480
|
gdkevent ## type ## _ ## name (VALUE self)\
|
163
481
|
{\
|
164
|
-
return GFLAGS2RVAL(
|
482
|
+
return GFLAGS2RVAL(RVAL2GDKEVENT(self)->type.name, gtype);\
|
165
483
|
}\
|
166
484
|
static VALUE \
|
167
485
|
gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
168
486
|
{\
|
169
|
-
|
487
|
+
RVAL2GDKEVENT(self)->type.name = RVAL2GFLAGS(val, gtype);\
|
170
488
|
return self;\
|
171
489
|
}
|
172
490
|
|
@@ -174,12 +492,12 @@ gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
|
174
492
|
static VALUE \
|
175
493
|
gdkevent ## type ## _ ## name (VALUE self)\
|
176
494
|
{\
|
177
|
-
return GENUM2RVAL(
|
495
|
+
return GENUM2RVAL(RVAL2GDKEVENT(self)->type.name, gtype);\
|
178
496
|
}\
|
179
497
|
static VALUE \
|
180
498
|
gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
181
499
|
{\
|
182
|
-
|
500
|
+
RVAL2GDKEVENT(self)->type.name = RVAL2GENUM(val, gtype);\
|
183
501
|
return self;\
|
184
502
|
}
|
185
503
|
|
@@ -187,7 +505,7 @@ gdkevent ## type ## _set_ ## name (VALUE self, VALUE val)\
|
|
187
505
|
static VALUE \
|
188
506
|
gdkevent ##type ## _axes(VALUE self)\
|
189
507
|
{\
|
190
|
-
gdkklass type =
|
508
|
+
gdkklass type = RVAL2GDKEVENT(self)->type;\
|
191
509
|
return type.axes ? rb_ary_new3(2, \
|
192
510
|
rb_float_new(type.axes[0]),\
|
193
511
|
rb_float_new(type.axes[1])) : Qnil;\
|
@@ -195,7 +513,7 @@ gdkevent ##type ## _axes(VALUE self)\
|
|
195
513
|
static VALUE \
|
196
514
|
gdkevent ## type ## _set_axes(VALUE self, VALUE x, VALUE y)\
|
197
515
|
{\
|
198
|
-
gdkklass val =
|
516
|
+
gdkklass val = RVAL2GDKEVENT(self)->type;\
|
199
517
|
val.axes[0] = NUM2DBL(x);\
|
200
518
|
val.axes[1] = NUM2DBL(y);\
|
201
519
|
return self;\
|
@@ -240,45 +558,42 @@ gdkevent_s_events_pending(G_GNUC_UNUSED VALUE self)
|
|
240
558
|
static VALUE
|
241
559
|
gdkevent_s_peek(G_GNUC_UNUSED VALUE self)
|
242
560
|
{
|
243
|
-
return
|
561
|
+
return GDKEVENT2RVAL(gdk_event_peek());
|
244
562
|
}
|
245
563
|
|
246
564
|
static VALUE
|
247
565
|
gdkevent_s_get(G_GNUC_UNUSED VALUE self)
|
248
566
|
{
|
249
|
-
return
|
250
|
-
}
|
251
|
-
|
252
|
-
/* deprecated
|
253
|
-
static VALUE
|
254
|
-
gdkevent_s_get_graphics_expose(G_GNUC_UNUSED VALUE self, VALUE window)
|
255
|
-
{
|
256
|
-
return make_gdkevent(gdk_event_get_graphics_expose(RVAL2GDKWINDOW(window)));
|
567
|
+
return GDKEVENT2RVAL(gdk_event_get());
|
257
568
|
}
|
258
|
-
*/
|
259
569
|
|
260
570
|
/* GdkEvent */
|
261
571
|
static VALUE
|
262
572
|
gdkevent_initialize(VALUE self, VALUE type)
|
263
573
|
{
|
264
|
-
GdkEventType
|
265
|
-
|
574
|
+
GdkEventType event_type;
|
575
|
+
VALUE klass;
|
576
|
+
|
577
|
+
event_type = RVAL2GDKEVENTTYPE(type);
|
578
|
+
klass = rb_gdk_event_type_to_class(event_type);
|
579
|
+
if (!RVAL2CBOOL(rb_obj_is_kind_of(self, klass))) {
|
266
580
|
rb_raise(rb_eArgError, "Wrong event type for this class.");
|
581
|
+
}
|
267
582
|
|
268
|
-
G_INITIALIZE(self, gdk_event_new(
|
583
|
+
G_INITIALIZE(self, gdk_event_new(event_type));
|
269
584
|
return Qnil;
|
270
585
|
}
|
271
586
|
|
272
587
|
static VALUE
|
273
588
|
gdkevent_type(VALUE self)
|
274
589
|
{
|
275
|
-
return GDKEVENTTYPE2RVAL(
|
590
|
+
return GDKEVENTTYPE2RVAL(RVAL2GDKEVENT(self)->type);
|
276
591
|
}
|
277
592
|
|
278
593
|
static VALUE
|
279
594
|
gdkevent_put(VALUE self)
|
280
595
|
{
|
281
|
-
gdk_event_put(
|
596
|
+
gdk_event_put(RVAL2GDKEVENT(self));
|
282
597
|
return self;
|
283
598
|
}
|
284
599
|
|
@@ -292,7 +607,7 @@ static VALUE
|
|
292
607
|
gdkevent_get_axis(VALUE self, VALUE axis_use)
|
293
608
|
{
|
294
609
|
gdouble value;
|
295
|
-
gboolean ret = gdk_event_get_axis(
|
610
|
+
gboolean ret = gdk_event_get_axis(RVAL2GDKEVENT(self),
|
296
611
|
RVAL2GDKAXISUSE(axis_use), &value);
|
297
612
|
return ret ? rb_float_new(value) : Qnil;
|
298
613
|
}
|
@@ -301,7 +616,7 @@ static VALUE
|
|
301
616
|
gdkevent_get_coords(VALUE self)
|
302
617
|
{
|
303
618
|
gdouble x_win, y_win;
|
304
|
-
gboolean ret = gdk_event_get_coords(
|
619
|
+
gboolean ret = gdk_event_get_coords(RVAL2GDKEVENT(self), &x_win, &y_win);
|
305
620
|
|
306
621
|
return ret ? rb_ary_new3(2, rb_float_new(x_win), rb_float_new(y_win)) : Qnil;
|
307
622
|
}
|
@@ -310,7 +625,7 @@ static VALUE
|
|
310
625
|
gdkevent_get_root_coords(VALUE self)
|
311
626
|
{
|
312
627
|
gdouble x_root, y_root;
|
313
|
-
gboolean ret = gdk_event_get_root_coords(
|
628
|
+
gboolean ret = gdk_event_get_root_coords(RVAL2GDKEVENT(self), &x_root, &y_root);
|
314
629
|
|
315
630
|
return ret ? rb_ary_new3(2, rb_float_new(x_root), rb_float_new(y_root)) : Qnil;
|
316
631
|
}
|
@@ -318,7 +633,7 @@ gdkevent_get_root_coords(VALUE self)
|
|
318
633
|
static void
|
319
634
|
handler_func(GdkEvent *event, gpointer func)
|
320
635
|
{
|
321
|
-
rb_funcall((VALUE)func, id_call, 1,
|
636
|
+
rb_funcall((VALUE)func, id_call, 1, GDKEVENT2RVAL(event));
|
322
637
|
}
|
323
638
|
|
324
639
|
static VALUE
|
@@ -347,14 +662,14 @@ gdkevent_s_set_show_events(VALUE self, VALUE show_events)
|
|
347
662
|
static VALUE
|
348
663
|
gdkevent_set_screen(VALUE self, VALUE screen)
|
349
664
|
{
|
350
|
-
gdk_event_set_screen(
|
665
|
+
gdk_event_set_screen(RVAL2GDKEVENT(self), RVAL2GDKSCREEN(screen));
|
351
666
|
return self;
|
352
667
|
}
|
353
668
|
|
354
669
|
static VALUE
|
355
670
|
gdkevent_screen(VALUE self)
|
356
671
|
{
|
357
|
-
return GOBJ2RVAL(gdk_event_get_screen(
|
672
|
+
return GOBJ2RVAL(gdk_event_get_screen(RVAL2GDKEVENT(self)));
|
358
673
|
}
|
359
674
|
|
360
675
|
/*
|
@@ -405,6 +720,19 @@ ATTR_GOBJ(button, device);
|
|
405
720
|
ATTR_FLOAT(button, x_root);
|
406
721
|
ATTR_FLOAT(button, y_root);
|
407
722
|
|
723
|
+
/* GdkEventTouch */
|
724
|
+
ATTR_GOBJ(touch, window);
|
725
|
+
ATTR_BOOL(touch, send_event);
|
726
|
+
ATTR_UINT(touch, time);
|
727
|
+
ATTR_FLOAT(touch, x);
|
728
|
+
ATTR_FLOAT(touch, y);
|
729
|
+
ATTR_AXES(touch, GdkEventTouch);
|
730
|
+
ATTR_FLAGS(touch, state, GDK_TYPE_MODIFIER_TYPE);
|
731
|
+
ATTR_BOOL(touch, emulating_pointer);
|
732
|
+
ATTR_GOBJ(touch, device);
|
733
|
+
ATTR_FLOAT(touch, x_root);
|
734
|
+
ATTR_FLOAT(touch, y_root);
|
735
|
+
|
408
736
|
/* GdkEventScroll */
|
409
737
|
ATTR_UINT(scroll, time);
|
410
738
|
ATTR_FLOAT(scroll, x);
|
@@ -431,45 +759,44 @@ GDKEVENT_INIT(motion, GDK_MOTION_NOTIFY);
|
|
431
759
|
static VALUE
|
432
760
|
gdkeventmotion_request_motions(VALUE self)
|
433
761
|
{
|
434
|
-
gdk_event_request_motions(&(
|
762
|
+
gdk_event_request_motions(&(RVAL2GDKEVENT(self)->motion));
|
435
763
|
return self;
|
436
764
|
}
|
437
765
|
|
438
766
|
/* GdkEventExpose */
|
439
|
-
/* deprecated
|
440
767
|
static VALUE
|
441
768
|
gdkeventexpose_area(VALUE self)
|
442
769
|
{
|
443
|
-
return GDKRECTANGLE2RVAL(&
|
770
|
+
return GDKRECTANGLE2RVAL(&RVAL2GDKEVENT(self)->expose.area);
|
444
771
|
}
|
445
|
-
|
772
|
+
|
446
773
|
static VALUE
|
447
774
|
gdkeventexpose_set_area(VALUE self, VALUE rect)
|
448
775
|
{
|
449
776
|
GdkRectangle* grect = RVAL2GDKRECTANGLE(rect);
|
450
|
-
GdkEventExpose event =
|
451
|
-
event
|
452
|
-
event
|
453
|
-
event
|
454
|
-
event
|
777
|
+
GdkEventExpose *event = &(RVAL2GDKEVENT(self)->expose);
|
778
|
+
event->area.x = grect->x;
|
779
|
+
event->area.y = grect->y;
|
780
|
+
event->area.width = grect->width;
|
781
|
+
event->area.height = grect->height;
|
455
782
|
return self;
|
456
783
|
}
|
457
784
|
|
458
785
|
static VALUE
|
459
786
|
gdkeventexpose_region(VALUE self)
|
460
787
|
{
|
461
|
-
return
|
788
|
+
return CRREGION2RVAL(RVAL2GDKEVENT(self)->expose.region);
|
462
789
|
}
|
790
|
+
|
463
791
|
static VALUE
|
464
792
|
gdkeventexpose_set_region(VALUE self, VALUE region)
|
465
793
|
{
|
466
|
-
|
794
|
+
RVAL2GDKEVENT(self)->expose.region = RVAL2CRREGION(region);
|
467
795
|
return self;
|
468
796
|
}
|
469
797
|
|
470
798
|
ATTR_INT(expose, count);
|
471
799
|
GDKEVENT_INIT(expose, GDK_EXPOSE);
|
472
|
-
*/
|
473
800
|
|
474
801
|
/* GdkEventVisibility */
|
475
802
|
ATTR_ENUM(visibility, state, GDK_TYPE_VISIBILITY_STATE);
|
@@ -521,88 +848,6 @@ ATTR_INT(dnd, y_root);
|
|
521
848
|
ATTR_UINT(proximity, time);
|
522
849
|
ATTR_GOBJ(proximity, device);
|
523
850
|
|
524
|
-
/* GdkEventClient */
|
525
|
-
/* deprecated
|
526
|
-
ATTR_ATOM(client, message_type);
|
527
|
-
GDKEVENT_INIT(client, GDK_CLIENT_EVENT);
|
528
|
-
|
529
|
-
static VALUE
|
530
|
-
gdkeventclient_data_format(VALUE self)
|
531
|
-
{
|
532
|
-
return INT2NUM(get_gdkevent(self)->client.data_format);
|
533
|
-
}
|
534
|
-
|
535
|
-
static VALUE
|
536
|
-
gdkeventclient_data(VALUE self)
|
537
|
-
{
|
538
|
-
int i;
|
539
|
-
VALUE ary = Qnil;
|
540
|
-
gushort format = get_gdkevent(self)->client.data_format;
|
541
|
-
|
542
|
-
if (format == 8) {
|
543
|
-
ary = rb_ary_new2(20);
|
544
|
-
for (i = 0; i < 20; i++)
|
545
|
-
rb_ary_push(ary, INT2FIX(get_gdkevent(self)->client.data.b[i]));
|
546
|
-
} else if (format == 16) {
|
547
|
-
ary = rb_ary_new2(10);
|
548
|
-
for (i = 0; i<10; i++)
|
549
|
-
rb_ary_push(ary, INT2FIX(get_gdkevent(self)->client.data.s[i]));
|
550
|
-
} else if (format == 32){
|
551
|
-
ary = rb_ary_new2(5);
|
552
|
-
for (i = 0; i < 5; i++)
|
553
|
-
rb_ary_push(ary, INT2NUM(get_gdkevent(self)->client.data.l[i]));
|
554
|
-
} else {
|
555
|
-
rb_warn("The format is not supported.");
|
556
|
-
}
|
557
|
-
return ary;
|
558
|
-
}
|
559
|
-
|
560
|
-
static VALUE
|
561
|
-
gdkeventclient_send_client_message(int argc, VALUE *argv, VALUE self)
|
562
|
-
{
|
563
|
-
VALUE xid, display;
|
564
|
-
rb_scan_args(argc, argv, "11", &xid, &display);
|
565
|
-
if (NIL_P(display)){
|
566
|
-
return CBOOL2RVAL(gdk_event_send_client_message(
|
567
|
-
get_gdkevent(self), RVAL2GDKNATIVEWINDOW(xid)));
|
568
|
-
} else {
|
569
|
-
return CBOOL2RVAL(gdk_event_send_client_message_for_display(
|
570
|
-
RVAL2GDKDISPLAYOBJECT(display),
|
571
|
-
get_gdkevent(self),
|
572
|
-
RVAL2GDKNATIVEWINDOW(xid)));
|
573
|
-
}
|
574
|
-
}
|
575
|
-
|
576
|
-
static VALUE
|
577
|
-
gdkeventclient_send_clientmessage_toall(VALUE self)
|
578
|
-
{
|
579
|
-
gdk_event_send_clientmessage_toall(get_gdkevent(self));
|
580
|
-
return self;
|
581
|
-
}
|
582
|
-
|
583
|
-
static GdkFilterReturn
|
584
|
-
filter_func(GdkXEvent *xevent, GdkEvent *event, gpointer func)
|
585
|
-
{
|
586
|
-
VALUE ret = rb_funcall((VALUE)func, id_call, 2, LONG2NUM((glong)xevent), make_gdkevent(event));
|
587
|
-
return RVAL2GDKFILTERRETURN(ret);
|
588
|
-
}
|
589
|
-
|
590
|
-
static VALUE
|
591
|
-
gdkevent_s_add_client_message_filter(VALUE self, VALUE message_type)
|
592
|
-
{
|
593
|
-
volatile VALUE func = rb_block_proc();
|
594
|
-
G_RELATIVE(self, func);
|
595
|
-
gdk_add_client_message_filter(RVAL2ATOM(message_type),
|
596
|
-
(GdkFilterFunc)filter_func, (gpointer)func);
|
597
|
-
return self;
|
598
|
-
}
|
599
|
-
*/
|
600
|
-
|
601
|
-
/* GdkEventNoExpose */
|
602
|
-
/* deprecated
|
603
|
-
GDKEVENT_INIT(noexpose, GDK_NO_EXPOSE);
|
604
|
-
*/
|
605
|
-
|
606
851
|
/* GdkEventWindowState */
|
607
852
|
ATTR_FLAGS(window_state, changed_mask, GDK_TYPE_WINDOW_STATE);
|
608
853
|
ATTR_FLAGS(window_state, new_window_state, GDK_TYPE_WINDOW_STATE);
|
@@ -628,299 +873,302 @@ ATTR_GOBJ(grab_broken, grab_window);
|
|
628
873
|
GDKEVENT_INIT(grab_broken, GDK_GRAB_BROKEN);
|
629
874
|
|
630
875
|
/* MISC */
|
631
|
-
static VALUE
|
876
|
+
static VALUE
|
632
877
|
gdkevent_g2r(const GValue *values)
|
633
878
|
{
|
634
|
-
return
|
879
|
+
return GDKEVENT2RVAL(g_value_get_boxed(&values[0]));
|
635
880
|
}
|
636
881
|
|
637
882
|
void
|
638
883
|
Init_gdk_event(VALUE mGdk)
|
639
884
|
{
|
640
|
-
|
641
|
-
|
642
|
-
|
885
|
+
/* GdkEvent */
|
886
|
+
rb_cGdkEvent = G_DEF_CLASS(GDK_TYPE_EVENT, "Event", mGdk);
|
887
|
+
rbg_define_method(rb_cGdkEvent, "initialize", gdkevent_initialize, 1);
|
888
|
+
rbg_define_method(rb_cGdkEvent, "event_type", gdkevent_type, 0);
|
889
|
+
|
890
|
+
rbg_define_singleton_method(rb_cGdkEvent, "events_pending?", gdkevent_s_events_pending, 0);
|
891
|
+
rbg_define_singleton_method(rb_cGdkEvent, "peek", gdkevent_s_peek, 0);
|
892
|
+
rbg_define_singleton_method(rb_cGdkEvent, "get", gdkevent_s_get, 0);
|
893
|
+
rbg_define_method(rb_cGdkEvent, "put", gdkevent_put, 0);
|
894
|
+
rbg_define_method(rb_cGdkEvent, "get_axis", gdkevent_get_axis, 1);
|
895
|
+
rbg_define_method(rb_cGdkEvent, "coords", gdkevent_get_coords, 0);
|
896
|
+
rbg_define_method(rb_cGdkEvent, "root_coords", gdkevent_get_root_coords, 0);
|
897
|
+
|
898
|
+
rbg_define_singleton_method(rb_cGdkEvent, "handler_set", gdkevent_s_handler_set, 0);
|
899
|
+
rbg_define_singleton_method(rb_cGdkEvent, "show_events?", gdkevent_s_get_show_events, 0);
|
900
|
+
rbg_define_singleton_method(rb_cGdkEvent, "set_show_events", gdkevent_s_set_show_events, 1);
|
901
|
+
rbg_define_singleton_method(rb_cGdkEvent, "setting_get", gdkevent_s_setting_get, -1);
|
902
|
+
rbg_define_method(rb_cGdkEvent, "screen", gdkevent_screen, 0);
|
903
|
+
rbg_define_method(rb_cGdkEvent, "set_screen", gdkevent_set_screen, 1);
|
643
904
|
|
644
|
-
|
645
|
-
|
905
|
+
/*
|
906
|
+
* GdkEvent's Constants
|
907
|
+
*/
|
908
|
+
rb_define_const(rb_cGdkEvent, "CURRENT_TIME", INT2FIX(GDK_CURRENT_TIME));
|
909
|
+
rb_define_const(rb_cGdkEvent, "PRIORITY_EVENTS", INT2FIX(GDK_PRIORITY_EVENTS));
|
910
|
+
rb_define_const(rb_cGdkEvent, "PRIORITY_REDRAW", INT2FIX(GDK_PRIORITY_REDRAW));
|
646
911
|
|
647
|
-
|
648
|
-
|
649
|
-
|
650
|
-
|
651
|
-
|
652
|
-
|
653
|
-
|
654
|
-
|
655
|
-
gdkevents[GDK_3BUTTON_PRESS] = gdkevents[GDK_BUTTON_PRESS];
|
656
|
-
gdkevents[GDK_BUTTON_RELEASE]= gdkevents[GDK_BUTTON_PRESS];
|
657
|
-
gdkevents[GDK_KEY_PRESS] = rb_define_class_under(mGdk, "EventKey", gdkEventAny);
|
658
|
-
gdkevents[GDK_KEY_RELEASE] = gdkevents[GDK_KEY_PRESS];
|
659
|
-
gdkevents[GDK_ENTER_NOTIFY] = rb_define_class_under(mGdk, "EventCrossing", gdkEventAny);
|
660
|
-
gdkevents[GDK_LEAVE_NOTIFY] = gdkevents[GDK_ENTER_NOTIFY];
|
661
|
-
gdkevents[GDK_FOCUS_CHANGE] = rb_define_class_under(mGdk, "EventFocus", gdkEventAny);
|
662
|
-
gdkevents[GDK_CONFIGURE] = rb_define_class_under(mGdk, "EventConfigure", gdkEventAny);
|
663
|
-
gdkevents[GDK_MAP] = gdkEventAny;
|
664
|
-
gdkevents[GDK_UNMAP] = gdkEventAny;
|
665
|
-
gdkevents[GDK_PROPERTY_NOTIFY]= rb_define_class_under(mGdk, "EventProperty", gdkEventAny);
|
666
|
-
gdkevents[GDK_SELECTION_CLEAR]= rb_define_class_under(mGdk, "EventSelection", gdkEventAny);
|
667
|
-
gdkevents[GDK_SELECTION_REQUEST]= gdkevents[GDK_SELECTION_CLEAR];
|
668
|
-
gdkevents[GDK_SELECTION_NOTIFY] = gdkevents[GDK_SELECTION_CLEAR];
|
669
|
-
gdkevents[GDK_PROXIMITY_IN] = rb_define_class_under(mGdk, "EventProximity", gdkEventAny);
|
670
|
-
gdkevents[GDK_PROXIMITY_OUT] = gdkevents[GDK_PROXIMITY_IN];
|
671
|
-
gdkevents[GDK_DRAG_ENTER] = rb_define_class_under(mGdk, "EventDND", gdkEventAny);
|
672
|
-
gdkevents[GDK_DRAG_LEAVE] = gdkevents[GDK_DRAG_ENTER];
|
673
|
-
gdkevents[GDK_DRAG_MOTION] = gdkevents[GDK_DRAG_ENTER];
|
674
|
-
gdkevents[GDK_DRAG_STATUS] = gdkevents[GDK_DRAG_ENTER];
|
675
|
-
gdkevents[GDK_DROP_START] = gdkevents[GDK_DRAG_ENTER];
|
676
|
-
gdkevents[GDK_DROP_FINISHED] = gdkevents[GDK_DRAG_ENTER];
|
677
|
-
gdkevents[GDK_CLIENT_EVENT] = rb_define_class_under(mGdk, "EventClient", gdkEventAny);
|
678
|
-
gdkevents[GDK_VISIBILITY_NOTIFY] = rb_define_class_under(mGdk, "EventVisibility", gdkEventAny);
|
679
|
-
/* deprecated
|
680
|
-
gdkevents[GDK_NO_EXPOSE] = rb_define_class_under(mGdk, "EventNoExpose", gdkEventAny);
|
681
|
-
*/
|
682
|
-
gdkevents[GDK_SCROLL] = rb_define_class_under(mGdk, "EventScroll", gdkEventAny);
|
683
|
-
gdkevents[GDK_WINDOW_STATE] = rb_define_class_under(mGdk, "EventWindowState", gdkEventAny);
|
684
|
-
gdkevents[GDK_SETTING] = rb_define_class_under(mGdk, "EventSetting", gdkEventAny);
|
685
|
-
gdkevents[GDK_OWNER_CHANGE] = rb_define_class_under(mGdk, "EventOwnerChange", gdkEventAny);
|
686
|
-
gdkevents[GDK_GRAB_BROKEN] = rb_define_class_under(mGdk, "EventGrabBroken", gdkEventAny);
|
912
|
+
/* GdkEventType */
|
913
|
+
/* XXX */
|
914
|
+
G_RENAME_CONSTANT("2BUTTON_PRESS","BUTTON2_PRESS");
|
915
|
+
G_RENAME_CONSTANT("3BUTTON_PRESS","BUTTON3_PRESS");
|
916
|
+
G_DEF_CLASS(GDK_TYPE_EVENT_TYPE, "Type", rb_cGdkEvent);
|
917
|
+
G_RENAME_CONSTANT("2BUTTON_PRESS","BUTTON2_PRESS");
|
918
|
+
G_RENAME_CONSTANT("3BUTTON_PRESS","BUTTON3_PRESS");
|
919
|
+
G_DEF_CONSTANTS(rb_cGdkEvent, GDK_TYPE_EVENT_TYPE, "GDK_");
|
687
920
|
|
688
|
-
/*
|
689
|
-
|
690
|
-
|
691
|
-
|
692
|
-
rbg_define_singleton_method(gdkEvent, "events_pending?", gdkevent_s_events_pending, 0);
|
693
|
-
rbg_define_singleton_method(gdkEvent, "peek", gdkevent_s_peek, 0);
|
694
|
-
rbg_define_singleton_method(gdkEvent, "get", gdkevent_s_get, 0);
|
695
|
-
rbg_define_method(gdkEvent, "put", gdkevent_put, 0);
|
696
|
-
rbg_define_method(gdkEvent, "get_axis", gdkevent_get_axis, 1);
|
697
|
-
rbg_define_method(gdkEvent, "coords", gdkevent_get_coords, 0);
|
698
|
-
rbg_define_method(gdkEvent, "root_coords", gdkevent_get_root_coords, 0);
|
699
|
-
|
700
|
-
rbg_define_singleton_method(gdkEvent, "handler_set", gdkevent_s_handler_set, 0);
|
701
|
-
rbg_define_singleton_method(gdkEvent, "show_events?", gdkevent_s_get_show_events, 0);
|
702
|
-
rbg_define_singleton_method(gdkEvent, "set_show_events", gdkevent_s_set_show_events, 1);
|
703
|
-
rbg_define_singleton_method(gdkEvent, "setting_get", gdkevent_s_setting_get, -1);
|
704
|
-
/* deprecated
|
705
|
-
rbg_define_singleton_method(gdkEvent, "add_client_message_filter", gdkevent_s_add_client_message_filter, 1);
|
706
|
-
*/
|
707
|
-
rbg_define_method(gdkEvent, "screen", gdkevent_screen, 0);
|
708
|
-
rbg_define_method(gdkEvent, "set_screen", gdkevent_set_screen, 1);
|
921
|
+
/* GdkEventMask */
|
922
|
+
G_DEF_CLASS(GDK_TYPE_EVENT_MASK, "Mask", rb_cGdkEvent);
|
923
|
+
G_DEF_CONSTANTS(rb_cGdkEvent, GDK_TYPE_EVENT_MASK, "GDK_");
|
709
924
|
|
710
925
|
/* GdkEventAny */
|
711
|
-
|
712
|
-
|
713
|
-
|
714
|
-
|
715
|
-
|
716
|
-
|
717
|
-
DEFINE_ACCESSOR(ev, key, time);
|
718
|
-
DEFINE_ACCESSOR(ev, key, state);
|
719
|
-
DEFINE_ACCESSOR(ev, key, keyval);
|
720
|
-
DEFINE_ACCESSOR(ev, key, hardware_keycode);
|
721
|
-
DEFINE_ACCESSOR(ev, key, group);
|
926
|
+
rb_cGdkEventAny =
|
927
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_ANY, "EventAny",
|
928
|
+
mGdk, rb_cGdkEvent);
|
929
|
+
DEFINE_ACCESSOR(rb_cGdkEventAny, any, window);
|
930
|
+
rbg_define_method(rb_cGdkEventAny, "send_event?", gdkeventany_send_event, 0);
|
931
|
+
rbg_define_method(rb_cGdkEventAny, "set_send_event", gdkeventany_set_send_event, 1);
|
722
932
|
|
723
|
-
/*
|
724
|
-
|
725
|
-
|
726
|
-
|
727
|
-
DEFINE_ACCESSOR(
|
728
|
-
|
729
|
-
|
730
|
-
|
731
|
-
DEFINE_ACCESSOR(ev, button, button);
|
732
|
-
DEFINE_ACCESSOR(ev, button, device);
|
733
|
-
DEFINE_ACCESSOR(ev, button, x_root);
|
734
|
-
DEFINE_ACCESSOR(ev, button, y_root);
|
933
|
+
/* GdkEventExpose */
|
934
|
+
rb_cGdkEventExpose =
|
935
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_EXPOSE, "EventExpose",
|
936
|
+
mGdk, rb_cGdkEvent);
|
937
|
+
DEFINE_ACCESSOR(rb_cGdkEventExpose, expose, area);
|
938
|
+
DEFINE_ACCESSOR(rb_cGdkEventExpose, expose, region);
|
939
|
+
DEFINE_ACCESSOR(rb_cGdkEventExpose, expose, count);
|
940
|
+
DEFINE_INIT(rb_cGdkEventExpose, expose);
|
735
941
|
|
736
|
-
/*
|
737
|
-
|
738
|
-
|
739
|
-
|
740
|
-
DEFINE_ACCESSOR(
|
741
|
-
|
742
|
-
DEFINE_ACCESSOR(ev, scroll, direction);
|
743
|
-
DEFINE_ACCESSOR(ev, scroll, device);
|
744
|
-
DEFINE_ACCESSOR(ev, scroll, x_root);
|
745
|
-
DEFINE_ACCESSOR(ev, scroll, y_root);
|
746
|
-
DEFINE_INIT(ev, scroll);
|
942
|
+
/* GdkEventVisibility */
|
943
|
+
rb_cGdkEventVisibility =
|
944
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_VISIBILITY, "EventVisibility",
|
945
|
+
mGdk, rb_cGdkEvent);
|
946
|
+
DEFINE_ACCESSOR(rb_cGdkEventVisibility, visibility, state);
|
947
|
+
DEFINE_INIT(rb_cGdkEventVisibility, visibility);
|
747
948
|
|
748
|
-
/*
|
749
|
-
G_DEF_CLASS(
|
949
|
+
/* GdkVisibilityState */
|
950
|
+
G_DEF_CLASS(GDK_TYPE_VISIBILITY_STATE, "State", rb_cGdkEventVisibility);
|
951
|
+
G_DEF_CONSTANTS(rb_cGdkEventVisibility,
|
952
|
+
GDK_TYPE_VISIBILITY_STATE, "GDK_VISIBILITY_");
|
750
953
|
|
751
954
|
/* GdkEventMotion */
|
752
|
-
|
753
|
-
|
754
|
-
|
755
|
-
DEFINE_ACCESSOR(
|
756
|
-
|
757
|
-
|
758
|
-
|
759
|
-
rbg_define_method(
|
760
|
-
|
761
|
-
|
762
|
-
|
763
|
-
DEFINE_ACCESSOR(
|
764
|
-
|
765
|
-
|
955
|
+
rb_cGdkEventMotion =
|
956
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_MOTION, "EventMotion",
|
957
|
+
mGdk, rb_cGdkEvent);
|
958
|
+
DEFINE_ACCESSOR(rb_cGdkEventMotion, motion, time);
|
959
|
+
DEFINE_ACCESSOR(rb_cGdkEventMotion, motion, x);
|
960
|
+
DEFINE_ACCESSOR(rb_cGdkEventMotion, motion, y);
|
961
|
+
rbg_define_method(rb_cGdkEventMotion, "axes", gdkeventmotion_axes, 0);
|
962
|
+
rbg_define_method(rb_cGdkEventMotion, "set_axes", gdkeventmotion_set_axes, 1);
|
963
|
+
DEFINE_ACCESSOR(rb_cGdkEventMotion, motion, state);
|
964
|
+
rbg_define_method(rb_cGdkEventMotion, "hint?", gdkeventmotion_is_hint, 0);
|
965
|
+
rbg_define_method(rb_cGdkEventMotion, "set_hint", gdkeventmotion_set_is_hint, 1);
|
966
|
+
DEFINE_ACCESSOR(rb_cGdkEventMotion, motion, device);
|
967
|
+
DEFINE_ACCESSOR(rb_cGdkEventMotion, motion, x_root);
|
968
|
+
DEFINE_ACCESSOR(rb_cGdkEventMotion, motion, y_root);
|
969
|
+
DEFINE_INIT(rb_cGdkEventMotion, motion);
|
970
|
+
rbg_define_method(rb_cGdkEventMotion, "request", gdkeventmotion_request_motions, 0);
|
766
971
|
|
767
|
-
/*
|
768
|
-
|
769
|
-
|
770
|
-
|
771
|
-
DEFINE_ACCESSOR(
|
772
|
-
DEFINE_ACCESSOR(
|
773
|
-
|
774
|
-
|
775
|
-
|
776
|
-
|
972
|
+
/* GdkEventButton */
|
973
|
+
rb_cGdkEventButton =
|
974
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_BUTTON, "EventButton",
|
975
|
+
mGdk, rb_cGdkEvent);
|
976
|
+
DEFINE_ACCESSOR(rb_cGdkEventButton, button, time);
|
977
|
+
DEFINE_ACCESSOR(rb_cGdkEventButton, button, x);
|
978
|
+
DEFINE_ACCESSOR(rb_cGdkEventButton, button, y);
|
979
|
+
rbg_define_method(rb_cGdkEventButton, "axes", gdkeventbutton_axes, 0);
|
980
|
+
rbg_define_method(rb_cGdkEventButton, "set_axes", gdkeventbutton_set_axes, 2);
|
981
|
+
DEFINE_ACCESSOR(rb_cGdkEventButton, button, state);
|
982
|
+
DEFINE_ACCESSOR(rb_cGdkEventButton, button, button);
|
983
|
+
DEFINE_ACCESSOR(rb_cGdkEventButton, button, device);
|
984
|
+
DEFINE_ACCESSOR(rb_cGdkEventButton, button, x_root);
|
985
|
+
DEFINE_ACCESSOR(rb_cGdkEventButton, button, y_root);
|
986
|
+
|
987
|
+
/* GdkEventTouch */
|
988
|
+
rb_cGdkEventTouch =
|
989
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_TOUCH, "EventTouch",
|
990
|
+
mGdk, rb_cGdkEvent);
|
991
|
+
DEFINE_ACCESSOR(rb_cGdkEventTouch, touch, window);
|
992
|
+
rbg_define_method(rb_cGdkEventTouch, "send_event?", gdkeventtouch_send_event, 0);
|
993
|
+
rbg_define_method(rb_cGdkEventTouch, "set_send_event", gdkeventtouch_set_send_event, 1);
|
994
|
+
DEFINE_ACCESSOR(rb_cGdkEventTouch, touch, time);
|
995
|
+
DEFINE_ACCESSOR(rb_cGdkEventTouch, touch, x);
|
996
|
+
DEFINE_ACCESSOR(rb_cGdkEventTouch, touch, y);
|
997
|
+
rbg_define_method(rb_cGdkEventTouch, "axes", gdkeventtouch_axes, 0);
|
998
|
+
rbg_define_method(rb_cGdkEventTouch, "set_axes", gdkeventtouch_set_axes, 2);
|
999
|
+
DEFINE_ACCESSOR(rb_cGdkEventTouch, touch, state);
|
1000
|
+
DEFINE_ACCESSOR(rb_cGdkEventTouch, touch, emulating_pointer);
|
1001
|
+
DEFINE_ACCESSOR(rb_cGdkEventTouch, touch, device);
|
1002
|
+
DEFINE_ACCESSOR(rb_cGdkEventTouch, touch, x_root);
|
1003
|
+
DEFINE_ACCESSOR(rb_cGdkEventTouch, touch, y_root);
|
777
1004
|
|
778
|
-
/*
|
779
|
-
|
780
|
-
|
781
|
-
|
1005
|
+
/* GdkEventScroll */
|
1006
|
+
rb_cGdkEventScroll =
|
1007
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_SCROLL, "EventScroll",
|
1008
|
+
mGdk, rb_cGdkEvent);
|
1009
|
+
DEFINE_ACCESSOR(rb_cGdkEventScroll, scroll, time);
|
1010
|
+
DEFINE_ACCESSOR(rb_cGdkEventScroll, scroll, x);
|
1011
|
+
DEFINE_ACCESSOR(rb_cGdkEventScroll, scroll, y);
|
1012
|
+
DEFINE_ACCESSOR(rb_cGdkEventScroll, scroll, state);
|
1013
|
+
DEFINE_ACCESSOR(rb_cGdkEventScroll, scroll, direction);
|
1014
|
+
DEFINE_ACCESSOR(rb_cGdkEventScroll, scroll, device);
|
1015
|
+
DEFINE_ACCESSOR(rb_cGdkEventScroll, scroll, x_root);
|
1016
|
+
DEFINE_ACCESSOR(rb_cGdkEventScroll, scroll, y_root);
|
1017
|
+
DEFINE_INIT(rb_cGdkEventScroll, scroll);
|
782
1018
|
|
783
|
-
/*
|
784
|
-
G_DEF_CLASS(
|
1019
|
+
/* GdkScrollDirection */
|
1020
|
+
G_DEF_CLASS(GDK_TYPE_SCROLL_DIRECTION, "Direction", rb_cGdkEventScroll);
|
1021
|
+
G_DEF_CONSTANTS(rb_cGdkEventScroll,
|
1022
|
+
GDK_TYPE_SCROLL_DIRECTION, "GDK_SCROLL_");
|
1023
|
+
|
1024
|
+
/* GdkEventKey */
|
1025
|
+
rb_cGdkEventKey =
|
1026
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_KEY, "EventKey",
|
1027
|
+
mGdk, rb_cGdkEvent);
|
1028
|
+
DEFINE_ACCESSOR(rb_cGdkEventKey, key, time);
|
1029
|
+
DEFINE_ACCESSOR(rb_cGdkEventKey, key, state);
|
1030
|
+
DEFINE_ACCESSOR(rb_cGdkEventKey, key, keyval);
|
1031
|
+
DEFINE_ACCESSOR(rb_cGdkEventKey, key, hardware_keycode);
|
1032
|
+
DEFINE_ACCESSOR(rb_cGdkEventKey, key, group);
|
785
1033
|
|
786
1034
|
/* GdkEventCrossing */
|
787
|
-
|
788
|
-
|
789
|
-
|
790
|
-
DEFINE_ACCESSOR(
|
791
|
-
DEFINE_ACCESSOR(
|
792
|
-
DEFINE_ACCESSOR(
|
793
|
-
DEFINE_ACCESSOR(
|
794
|
-
DEFINE_ACCESSOR(
|
795
|
-
DEFINE_ACCESSOR(
|
796
|
-
|
797
|
-
|
798
|
-
|
1035
|
+
rb_cGdkEventCrossing =
|
1036
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_CROSSING, "EventCrossing",
|
1037
|
+
mGdk, rb_cGdkEvent);
|
1038
|
+
DEFINE_ACCESSOR(rb_cGdkEventCrossing, crossing, subwindow);
|
1039
|
+
DEFINE_ACCESSOR(rb_cGdkEventCrossing, crossing, time);
|
1040
|
+
DEFINE_ACCESSOR(rb_cGdkEventCrossing, crossing, x);
|
1041
|
+
DEFINE_ACCESSOR(rb_cGdkEventCrossing, crossing, y);
|
1042
|
+
DEFINE_ACCESSOR(rb_cGdkEventCrossing, crossing, x_root);
|
1043
|
+
DEFINE_ACCESSOR(rb_cGdkEventCrossing, crossing, y_root);
|
1044
|
+
DEFINE_ACCESSOR(rb_cGdkEventCrossing, crossing, mode);
|
1045
|
+
DEFINE_ACCESSOR(rb_cGdkEventCrossing, crossing, detail);
|
1046
|
+
rbg_define_method(rb_cGdkEventCrossing, "focus?", gdkeventcrossing_focus, 0);
|
1047
|
+
rbg_define_method(rb_cGdkEventCrossing, "set_focus", gdkeventcrossing_set_focus, 1);
|
1048
|
+
DEFINE_ACCESSOR(rb_cGdkEventCrossing, crossing, state);
|
799
1049
|
|
800
1050
|
/* GdkCrossingMode */
|
801
|
-
G_DEF_CLASS(GDK_TYPE_CROSSING_MODE, "Mode",
|
1051
|
+
G_DEF_CLASS(GDK_TYPE_CROSSING_MODE, "Mode", rb_cGdkEventCrossing);
|
1052
|
+
G_DEF_CONSTANTS(rb_cGdkEventCrossing,
|
1053
|
+
GDK_TYPE_CROSSING_MODE, "GDK_CROSSING_");
|
802
1054
|
/* GdkNotifyType */
|
803
|
-
G_DEF_CLASS(GDK_TYPE_NOTIFY_TYPE, "NotifyType",
|
1055
|
+
G_DEF_CLASS(GDK_TYPE_NOTIFY_TYPE, "NotifyType", rb_cGdkEventScroll);
|
1056
|
+
G_DEF_CONSTANTS(rb_cGdkEventScroll, GDK_TYPE_NOTIFY_TYPE, "GDK_");
|
804
1057
|
|
805
1058
|
/* GdkEventFocus */
|
806
|
-
|
807
|
-
|
808
|
-
|
809
|
-
|
1059
|
+
rb_cGdkEventFocus =
|
1060
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_FOCUS, "EventFocus",
|
1061
|
+
mGdk, rb_cGdkEvent);
|
1062
|
+
rbg_define_method(rb_cGdkEventFocus, "in?", gdkeventfocus_change_in, 0);
|
1063
|
+
rbg_define_method(rb_cGdkEventFocus, "set_in",
|
1064
|
+
gdkeventfocus_change_set_in, 1);
|
1065
|
+
DEFINE_INIT(rb_cGdkEventFocus, focus_change);
|
810
1066
|
|
811
1067
|
/* GdkEventConfigure */
|
812
|
-
|
813
|
-
|
814
|
-
|
815
|
-
DEFINE_ACCESSOR(
|
816
|
-
DEFINE_ACCESSOR(
|
817
|
-
|
1068
|
+
rb_cGdkEventConfigure =
|
1069
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_CONFIGURE, "EventConfigure",
|
1070
|
+
mGdk, rb_cGdkEvent);
|
1071
|
+
DEFINE_ACCESSOR(rb_cGdkEventConfigure, configure, x);
|
1072
|
+
DEFINE_ACCESSOR(rb_cGdkEventConfigure, configure, y);
|
1073
|
+
DEFINE_ACCESSOR(rb_cGdkEventConfigure, configure, width);
|
1074
|
+
DEFINE_ACCESSOR(rb_cGdkEventConfigure, configure, height);
|
1075
|
+
DEFINE_INIT(rb_cGdkEventConfigure, configure);
|
818
1076
|
|
819
1077
|
/* GdkEventProperty */
|
820
|
-
|
821
|
-
|
822
|
-
|
823
|
-
DEFINE_ACCESSOR(
|
824
|
-
|
825
|
-
|
826
|
-
|
827
|
-
|
1078
|
+
rb_cGdkEventProperty =
|
1079
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_PROPERTY, "EventProperty",
|
1080
|
+
mGdk, rb_cGdkEvent);
|
1081
|
+
DEFINE_ACCESSOR(rb_cGdkEventProperty, property, atom);
|
1082
|
+
DEFINE_ACCESSOR(rb_cGdkEventProperty, property, time);
|
1083
|
+
DEFINE_ACCESSOR(rb_cGdkEventProperty, property, state);
|
1084
|
+
DEFINE_INIT(rb_cGdkEventProperty, property);
|
1085
|
+
|
1086
|
+
/* GdkPropertyState */
|
1087
|
+
G_DEF_CLASS(GDK_TYPE_PROPERTY_STATE, "State", rb_cGdkEventProperty);
|
1088
|
+
G_DEF_CONSTANTS(rb_cGdkEventProperty, GDK_TYPE_PROPERTY_STATE, "GDK_");
|
828
1089
|
|
829
1090
|
/* GdkEventSelection */
|
830
|
-
|
831
|
-
|
832
|
-
|
833
|
-
DEFINE_ACCESSOR(
|
834
|
-
DEFINE_ACCESSOR(
|
835
|
-
DEFINE_ACCESSOR(
|
1091
|
+
rb_cGdkEventSelection =
|
1092
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_SELECTION, "EventSelection",
|
1093
|
+
mGdk, rb_cGdkEvent);
|
1094
|
+
DEFINE_ACCESSOR(rb_cGdkEventSelection, selection, selection);
|
1095
|
+
DEFINE_ACCESSOR(rb_cGdkEventSelection, selection, target);
|
1096
|
+
DEFINE_ACCESSOR(rb_cGdkEventSelection, selection, property);
|
1097
|
+
DEFINE_ACCESSOR(rb_cGdkEventSelection, selection, requestor);
|
1098
|
+
DEFINE_ACCESSOR(rb_cGdkEventSelection, selection, time);
|
836
1099
|
|
837
|
-
/*
|
838
|
-
|
839
|
-
|
840
|
-
|
841
|
-
DEFINE_ACCESSOR(
|
842
|
-
DEFINE_ACCESSOR(
|
1100
|
+
/* GdkEventOwnerChange */
|
1101
|
+
rb_cGdkEventOwnerChange =
|
1102
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_OWNER_CHANGE, "EventOwnerChange",
|
1103
|
+
mGdk, rb_cGdkEvent);
|
1104
|
+
DEFINE_ACCESSOR(rb_cGdkEventOwnerChange, owner_change, owner);
|
1105
|
+
DEFINE_ACCESSOR(rb_cGdkEventOwnerChange, owner_change, reason);
|
1106
|
+
DEFINE_ACCESSOR(rb_cGdkEventOwnerChange, owner_change, selection);
|
1107
|
+
DEFINE_ACCESSOR(rb_cGdkEventOwnerChange, owner_change, time);
|
1108
|
+
DEFINE_ACCESSOR(rb_cGdkEventOwnerChange, owner_change, selection_time);
|
1109
|
+
DEFINE_INIT(rb_cGdkEventOwnerChange, owner_change);
|
1110
|
+
|
1111
|
+
/* GdkOwnerChange */
|
1112
|
+
G_DEF_CLASS(GDK_TYPE_OWNER_CHANGE, "OwnerChange", rb_cGdkEventScroll);
|
1113
|
+
G_DEF_CONSTANTS(rb_cGdkEventScroll,
|
1114
|
+
GDK_TYPE_OWNER_CHANGE, "GDK_OWNER_CHANGE_");
|
843
1115
|
|
844
1116
|
/* GdkEventProximity */
|
845
|
-
|
846
|
-
|
847
|
-
|
848
|
-
|
849
|
-
|
850
|
-
/* deprecated
|
851
|
-
ev = gdkevents[GDK_CLIENT_EVENT];
|
852
|
-
DEFINE_ACCESSOR(ev, client, message_type);
|
853
|
-
rbg_define_method(ev, "data_format", gdkeventclient_data_format, 0);
|
854
|
-
rbg_define_method(ev, "data", gdkeventclient_data, 0);
|
855
|
-
rbg_define_method(ev, "send_client_message",
|
856
|
-
gdkeventclient_send_client_message, -1);
|
857
|
-
rbg_define_method(ev, "send_clientmessage_toall",
|
858
|
-
gdkeventclient_send_clientmessage_toall, 0);
|
859
|
-
DEFINE_INIT(ev, client);
|
860
|
-
*/
|
1117
|
+
rb_cGdkEventProximity =
|
1118
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_PROXIMITY, "EventProximity",
|
1119
|
+
mGdk, rb_cGdkEvent);
|
1120
|
+
DEFINE_ACCESSOR(rb_cGdkEventProximity, proximity, time);
|
1121
|
+
DEFINE_ACCESSOR(rb_cGdkEventProximity, proximity, device);
|
861
1122
|
|
862
|
-
/*
|
863
|
-
|
864
|
-
|
865
|
-
|
866
|
-
|
1123
|
+
/* GdkEventDND */
|
1124
|
+
rb_cGdkEventDND =
|
1125
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_DND, "EventDND",
|
1126
|
+
mGdk, rb_cGdkEvent);
|
1127
|
+
DEFINE_ACCESSOR(rb_cGdkEventDND, dnd, context);
|
1128
|
+
DEFINE_ACCESSOR(rb_cGdkEventDND, dnd, time);
|
1129
|
+
DEFINE_ACCESSOR(rb_cGdkEventDND, dnd, x_root);
|
1130
|
+
DEFINE_ACCESSOR(rb_cGdkEventDND, dnd, y_root);
|
867
1131
|
|
868
1132
|
/* GdkEventWindowState */
|
869
|
-
|
870
|
-
|
871
|
-
|
872
|
-
|
1133
|
+
rb_cGdkEventWindowState =
|
1134
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_WINDOW_STATE, "EventWindowState",
|
1135
|
+
mGdk, rb_cGdkEvent);
|
1136
|
+
DEFINE_ACCESSOR(rb_cGdkEventWindowState, window_state, changed_mask);
|
1137
|
+
DEFINE_ACCESSOR(rb_cGdkEventWindowState, window_state, new_window_state);
|
1138
|
+
DEFINE_INIT(rb_cGdkEventWindowState, window_state);
|
873
1139
|
|
874
1140
|
/* GdkWindowState */
|
875
|
-
G_DEF_CLASS(GDK_TYPE_WINDOW_STATE, "WindowState",
|
1141
|
+
G_DEF_CLASS(GDK_TYPE_WINDOW_STATE, "WindowState", rb_cGdkEventScroll);
|
1142
|
+
G_DEF_CONSTANTS(rb_cGdkEventWindowState,
|
1143
|
+
GDK_TYPE_WINDOW_STATE, "GDK_WINDOW_STATE_");
|
876
1144
|
|
877
1145
|
/* GdkEventSetting */
|
878
|
-
|
879
|
-
|
880
|
-
|
881
|
-
|
1146
|
+
rb_cGdkEventSetting =
|
1147
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_SETTING, "EventSetting",
|
1148
|
+
mGdk, rb_cGdkEvent);
|
1149
|
+
DEFINE_ACCESSOR(rb_cGdkEventSetting, setting, action);
|
1150
|
+
DEFINE_ACCESSOR(rb_cGdkEventSetting, setting, name);
|
1151
|
+
DEFINE_INIT(rb_cGdkEventSetting, setting);
|
882
1152
|
|
883
1153
|
/* GdkSettingAction */
|
884
|
-
G_DEF_CLASS(GDK_TYPE_SETTING_ACTION, "Action",
|
885
|
-
|
886
|
-
|
887
|
-
ev = gdkevents[GDK_OWNER_CHANGE];
|
888
|
-
DEFINE_ACCESSOR(ev, owner_change, owner);
|
889
|
-
DEFINE_ACCESSOR(ev, owner_change, reason);
|
890
|
-
DEFINE_ACCESSOR(ev, owner_change, selection);
|
891
|
-
DEFINE_ACCESSOR(ev, owner_change, time);
|
892
|
-
DEFINE_ACCESSOR(ev, owner_change, selection_time);
|
893
|
-
DEFINE_INIT(ev, owner_change);
|
894
|
-
|
895
|
-
/* GdkOwnerChange */
|
896
|
-
G_DEF_CLASS(GDK_TYPE_OWNER_CHANGE, "OwnerChange", ev);
|
1154
|
+
G_DEF_CLASS(GDK_TYPE_SETTING_ACTION, "Action", rb_cGdkEventScroll);
|
1155
|
+
G_DEF_CONSTANTS(rb_cGdkEventSetting,
|
1156
|
+
GDK_TYPE_SETTING_ACTION, "GDK_SETTING_");
|
897
1157
|
|
898
1158
|
/* GdkEventGrabBroken */
|
899
|
-
|
900
|
-
|
901
|
-
|
902
|
-
rbg_define_method(
|
903
|
-
|
904
|
-
|
905
|
-
|
1159
|
+
rb_cGdkEventGrabBroken =
|
1160
|
+
G_DEF_CLASS_WITH_PARENT(GDK_TYPE_EVENT_GRAB_BROKEN, "EventGrabBroken",
|
1161
|
+
mGdk, rb_cGdkEvent);
|
1162
|
+
rbg_define_method(rb_cGdkEventGrabBroken,
|
1163
|
+
"keyboard?", gdkeventgrab_broken_keyboard, 0);
|
1164
|
+
rbg_define_method(rb_cGdkEventGrabBroken,
|
1165
|
+
"set_keyboard", gdkeventgrab_broken_set_keyboard, 1);
|
1166
|
+
rbg_define_method(rb_cGdkEventGrabBroken,
|
1167
|
+
"implicit?", gdkeventgrab_broken_implicit, 0);
|
1168
|
+
rbg_define_method(rb_cGdkEventGrabBroken,
|
1169
|
+
"set_implicit", gdkeventgrab_broken_set_implicit, 1);
|
1170
|
+
DEFINE_ACCESSOR(rb_cGdkEventGrabBroken, grab_broken, grab_window);
|
1171
|
+
DEFINE_INIT(rb_cGdkEventGrabBroken, grab_broken);
|
906
1172
|
|
907
1173
|
rbgobj_register_g2r_func(GDK_TYPE_EVENT, &gdkevent_g2r);
|
908
|
-
|
909
|
-
/*
|
910
|
-
* GdkEvent's Constants
|
911
|
-
*/
|
912
|
-
rb_define_const(gdkEvent, "CURRENT_TIME", INT2FIX(GDK_CURRENT_TIME));
|
913
|
-
rb_define_const(gdkEvent, "PRIORITY_EVENTS", INT2FIX(GDK_PRIORITY_EVENTS));
|
914
|
-
rb_define_const(gdkEvent, "PRIORITY_REDRAW", INT2FIX(GDK_PRIORITY_REDRAW));
|
915
|
-
|
916
|
-
/* GdkEventType */
|
917
|
-
/* XXX */
|
918
|
-
G_RENAME_CONSTANT("2BUTTON_PRESS","BUTTON2_PRESS");
|
919
|
-
G_RENAME_CONSTANT("3BUTTON_PRESS","BUTTON3_PRESS");
|
920
|
-
G_DEF_CLASS(GDK_TYPE_EVENT_TYPE, "Type", gdkEvent);
|
921
|
-
G_RENAME_CONSTANT("2BUTTON_PRESS","BUTTON2_PRESS");
|
922
|
-
G_RENAME_CONSTANT("3BUTTON_PRESS","BUTTON3_PRESS");
|
923
|
-
|
924
|
-
/* GdkEventMask */
|
925
|
-
G_DEF_CLASS(GDK_TYPE_EVENT_MASK, "Mask", gdkEvent);
|
926
1174
|
}
|