x11 0.0.1a1
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/X11/X.rb +33 -0
- data/lib/X11/X/c.rb +48 -0
- data/lib/X11/Xdefs.rb +29 -0
- data/lib/X11/Xdefs/c.rb +54 -0
- data/lib/X11/Xlib.rb +37 -0
- data/lib/X11/Xlib/c.rb +36 -0
- data/lib/X11/Xlib/c/functions.rb +54 -0
- data/lib/X11/Xlib/c/type/any_event.rb +36 -0
- data/lib/X11/Xlib/c/type/button_event.rb +46 -0
- data/lib/X11/Xlib/c/type/circulate_event.rb +38 -0
- data/lib/X11/Xlib/c/type/circulate_request_event.rb +38 -0
- data/lib/X11/Xlib/c/type/client_message_event.rb +46 -0
- data/lib/X11/Xlib/c/type/colormap_event.rb +39 -0
- data/lib/X11/Xlib/c/type/configure_event.rb +44 -0
- data/lib/X11/Xlib/c/type/configure_request_event.rb +45 -0
- data/lib/X11/Xlib/c/type/create_window_event.rb +43 -0
- data/lib/X11/Xlib/c/type/crossing_event.rb +48 -0
- data/lib/X11/Xlib/c/type/destroy_window_event.rb +37 -0
- data/lib/X11/Xlib/c/type/display.rb +75 -0
- data/lib/X11/Xlib/c/type/error_event.rb +38 -0
- data/lib/X11/Xlib/c/type/event.rb +67 -0
- data/lib/X11/Xlib/c/type/expose_event.rb +41 -0
- data/lib/X11/Xlib/c/type/focus_change_event.rb +38 -0
- data/lib/X11/Xlib/c/type/gc.rb +33 -0
- data/lib/X11/Xlib/c/type/generic_event.rb +37 -0
- data/lib/X11/Xlib/c/type/generic_event_cookie.rb +39 -0
- data/lib/X11/Xlib/c/type/graphics_expose_event.rb +44 -0
- data/lib/X11/Xlib/c/type/gravity_event.rb +39 -0
- data/lib/X11/Xlib/c/type/key_event.rb +46 -0
- data/lib/X11/Xlib/c/type/keymap_event.rb +37 -0
- data/lib/X11/Xlib/c/type/map_event.rb +38 -0
- data/lib/X11/Xlib/c/type/map_request_event.rb +41 -0
- data/lib/X11/Xlib/c/type/mapping_event.rb +39 -0
- data/lib/X11/Xlib/c/type/motion_event.rb +46 -0
- data/lib/X11/Xlib/c/type/no_expose_event.rb +38 -0
- data/lib/X11/Xlib/c/type/property_event.rb +39 -0
- data/lib/X11/Xlib/c/type/reparent_event.rb +41 -0
- data/lib/X11/Xlib/c/type/resize_request_event.rb +38 -0
- data/lib/X11/Xlib/c/type/screen.rb +50 -0
- data/lib/X11/Xlib/c/type/selection_clear_event.rb +38 -0
- data/lib/X11/Xlib/c/type/selection_event.rb +40 -0
- data/lib/X11/Xlib/c/type/selection_request_event.rb +41 -0
- data/lib/X11/Xlib/c/type/unmap_event.rb +38 -0
- data/lib/X11/Xlib/c/type/visibility_event.rb +37 -0
- data/lib/X11/Xlib/c/type/visual.rb +39 -0
- data/lib/X11/Xlib/c/type/window_attributes.rb +54 -0
- data/lib/X11/Xlib/c/types.rb +71 -0
- data/lib/X11/Xlib/display.rb +101 -0
- data/lib/X11/Xlib/event.rb +55 -0
- data/lib/X11/Xlib/event/any.rb +33 -0
- data/lib/X11/Xlib/event/button_press.rb +44 -0
- data/lib/X11/Xlib/event/button_release.rb +44 -0
- data/lib/X11/Xlib/event/circulate_notify.rb +36 -0
- data/lib/X11/Xlib/event/circulate_request.rb +36 -0
- data/lib/X11/Xlib/event/client_message.rb +37 -0
- data/lib/X11/Xlib/event/colormap_notify.rb +37 -0
- data/lib/X11/Xlib/event/configure_notify.rb +42 -0
- data/lib/X11/Xlib/event/configure_request.rb +43 -0
- data/lib/X11/Xlib/event/create_notify.rb +41 -0
- data/lib/X11/Xlib/event/destroy_notify.rb +35 -0
- data/lib/X11/Xlib/event/enter_notify.rb +31 -0
- data/lib/X11/Xlib/event/expose.rb +39 -0
- data/lib/X11/Xlib/event/focus_in.rb +36 -0
- data/lib/X11/Xlib/event/focus_out.rb +36 -0
- data/lib/X11/Xlib/event/generic_event.rb +38 -0
- data/lib/X11/Xlib/event/graphics_expose.rb +38 -0
- data/lib/X11/Xlib/event/gravity_notify.rb +37 -0
- data/lib/X11/Xlib/event/helper.rb +117 -0
- data/lib/X11/Xlib/event/key_press.rb +44 -0
- data/lib/X11/Xlib/event/key_release.rb +45 -0
- data/lib/X11/Xlib/event/keymap_notify.rb +39 -0
- data/lib/X11/Xlib/event/leave_notify.rb +43 -0
- data/lib/X11/Xlib/event/map_notify.rb +36 -0
- data/lib/X11/Xlib/event/map_request.rb +35 -0
- data/lib/X11/Xlib/event/mapping_notify.rb +37 -0
- data/lib/X11/Xlib/event/motion_notify.rb +44 -0
- data/lib/X11/Xlib/event/no_expose.rb +24 -0
- data/lib/X11/Xlib/event/property_notify.rb +37 -0
- data/lib/X11/Xlib/event/reparent_notify.rb +39 -0
- data/lib/X11/Xlib/event/resize_request.rb +36 -0
- data/lib/X11/Xlib/event/selection_clear.rb +36 -0
- data/lib/X11/Xlib/event/selection_notify.rb +39 -0
- data/lib/X11/Xlib/event/selection_request.rb +40 -0
- data/lib/X11/Xlib/event/unmap_notify.rb +36 -0
- data/lib/X11/Xlib/event/visibility_notify.rb +35 -0
- data/lib/X11/Xlib/events.rb +65 -0
- data/lib/X11/Xlib/mask.rb +72 -0
- data/lib/X11/Xlib/screen.rb +54 -0
- data/lib/X11/Xlib/visual.rb +48 -0
- data/lib/X11/Xlib/window.rb +104 -0
- data/lib/X11/Xlib/window/attributes.rb +67 -0
- data/lib/X11/Xmd.rb +29 -0
- data/lib/X11/Xmd/c.rb +49 -0
- data/lib/X11/extensions.rb +83 -0
- metadata +179 -0
@@ -0,0 +1,38 @@
|
|
1
|
+
#--
|
2
|
+
# Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
|
3
|
+
#
|
4
|
+
# Redistribution and use in source and binary forms, with or without modification, are
|
5
|
+
# permitted provided that the following conditions are met:
|
6
|
+
#
|
7
|
+
# 1. Redistributions of source code must retain the above copyright notice, this list of
|
8
|
+
# conditions and the following disclaimer.
|
9
|
+
#
|
10
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
|
11
|
+
# of conditions and the following disclaimer in the documentation and/or other materials
|
12
|
+
# provided with the distribution.
|
13
|
+
#
|
14
|
+
# THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ''AS IS'' AND ANY EXPRESS OR IMPLIED
|
15
|
+
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
16
|
+
# FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> OR
|
17
|
+
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
18
|
+
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
19
|
+
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
20
|
+
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
21
|
+
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
22
|
+
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
23
|
+
#
|
24
|
+
# The views and conclusions contained in the software and documentation are those of the
|
25
|
+
# authors and should not be interpreted as representing official policies, either expressed
|
26
|
+
# or implied.
|
27
|
+
#++
|
28
|
+
|
29
|
+
class X11::Event::GenericEvent < X11::Event::Helper
|
30
|
+
attribute :xgeneric
|
31
|
+
|
32
|
+
manage :display, X11::Display
|
33
|
+
manage :resourceid
|
34
|
+
manage :serial
|
35
|
+
manage :error_code
|
36
|
+
manage :request_code
|
37
|
+
manage :minor_code
|
38
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
#--
|
2
|
+
# Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
|
3
|
+
#
|
4
|
+
# Redistribution and use in source and binary forms, with or without modification, are
|
5
|
+
# permitted provided that the following conditions are met:
|
6
|
+
#
|
7
|
+
# 1. Redistributions of source code must retain the above copyright notice, this list of
|
8
|
+
# conditions and the following disclaimer.
|
9
|
+
#
|
10
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
|
11
|
+
# of conditions and the following disclaimer in the documentation and/or other materials
|
12
|
+
# provided with the distribution.
|
13
|
+
#
|
14
|
+
# THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ''AS IS'' AND ANY EXPRESS OR IMPLIED
|
15
|
+
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
16
|
+
# FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> OR
|
17
|
+
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
18
|
+
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
19
|
+
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
20
|
+
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
21
|
+
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
22
|
+
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
23
|
+
#
|
24
|
+
# The views and conclusions contained in the software and documentation are those of the
|
25
|
+
# authors and should not be interpreted as representing official policies, either expressed
|
26
|
+
# or implied.
|
27
|
+
#++
|
28
|
+
|
29
|
+
class X11::Event::GraphicsExpose < X11::Event::Helper
|
30
|
+
attribute :xnoexpose
|
31
|
+
|
32
|
+
manage :serial
|
33
|
+
manage [:send_event, :send_event?]
|
34
|
+
manage :display
|
35
|
+
manage :drawable
|
36
|
+
manage :major_code
|
37
|
+
manage :minor_code
|
38
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
#--
|
2
|
+
# Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
|
3
|
+
#
|
4
|
+
# Redistribution and use in source and binary forms, with or without modification, are
|
5
|
+
# permitted provided that the following conditions are met:
|
6
|
+
#
|
7
|
+
# 1. Redistributions of source code must retain the above copyright notice, this list of
|
8
|
+
# conditions and the following disclaimer.
|
9
|
+
#
|
10
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
|
11
|
+
# of conditions and the following disclaimer in the documentation and/or other materials
|
12
|
+
# provided with the distribution.
|
13
|
+
#
|
14
|
+
# THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ''AS IS'' AND ANY EXPRESS OR IMPLIED
|
15
|
+
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
16
|
+
# FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> OR
|
17
|
+
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
18
|
+
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
19
|
+
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
20
|
+
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
21
|
+
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
22
|
+
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
23
|
+
#
|
24
|
+
# The views and conclusions contained in the software and documentation are those of the
|
25
|
+
# authors and should not be interpreted as representing official policies, either expressed
|
26
|
+
# or implied.
|
27
|
+
#++
|
28
|
+
|
29
|
+
class X11::Event::GravityNotify < X11::Event::Helper
|
30
|
+
attribute :xgravity
|
31
|
+
|
32
|
+
include X11::Event::Common
|
33
|
+
|
34
|
+
manage :event, X11::Event::Window
|
35
|
+
manage :x
|
36
|
+
manage :y
|
37
|
+
end
|
@@ -0,0 +1,117 @@
|
|
1
|
+
#--
|
2
|
+
# Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
|
3
|
+
#
|
4
|
+
# Redistribution and use in source and binary forms, with or without modification, are
|
5
|
+
# permitted provided that the following conditions are met:
|
6
|
+
#
|
7
|
+
# 1. Redistributions of source code must retain the above copyright notice, this list of
|
8
|
+
# conditions and the following disclaimer.
|
9
|
+
#
|
10
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
|
11
|
+
# of conditions and the following disclaimer in the documentation and/or other materials
|
12
|
+
# provided with the distribution.
|
13
|
+
#
|
14
|
+
# THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ''AS IS'' AND ANY EXPRESS OR IMPLIED
|
15
|
+
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
16
|
+
# FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> OR
|
17
|
+
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
18
|
+
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
19
|
+
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
20
|
+
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
21
|
+
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
22
|
+
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
23
|
+
#
|
24
|
+
# The views and conclusions contained in the software and documentation are those of the
|
25
|
+
# authors and should not be interpreted as representing official policies, either expressed
|
26
|
+
# or implied.
|
27
|
+
#++
|
28
|
+
|
29
|
+
module X11; class Event
|
30
|
+
|
31
|
+
Events << nil
|
32
|
+
|
33
|
+
class Helper
|
34
|
+
def self.inherited (klass)
|
35
|
+
Events << klass
|
36
|
+
end
|
37
|
+
|
38
|
+
def self.attribute (which=nil)
|
39
|
+
@attribute = which.to_s.to_sym if which
|
40
|
+
end
|
41
|
+
|
42
|
+
def self.attach_method (meth, &block)
|
43
|
+
return unless block
|
44
|
+
|
45
|
+
class_eval {
|
46
|
+
define_method(meth, &block)
|
47
|
+
}
|
48
|
+
end
|
49
|
+
|
50
|
+
def self.manage (name, *args)
|
51
|
+
if name.is_a?(Array)
|
52
|
+
original, new = name[0, 2]
|
53
|
+
else
|
54
|
+
original, new = [name] * 2
|
55
|
+
end
|
56
|
+
|
57
|
+
args.flatten!
|
58
|
+
|
59
|
+
case args.size
|
60
|
+
when 0
|
61
|
+
attach_method(new) {
|
62
|
+
struct[@attribute][original]
|
63
|
+
}
|
64
|
+
|
65
|
+
attach_method("#{new}=") {|x|
|
66
|
+
struct[@attribute][original] = x
|
67
|
+
}
|
68
|
+
when 1
|
69
|
+
if args.first.is_a?(Class)
|
70
|
+
attach_method(new) {
|
71
|
+
args.first.new(struct[@attribute][original])
|
72
|
+
}
|
73
|
+
|
74
|
+
attach_method("#{new}=") {|x|
|
75
|
+
struct[@attribute][original] = x.to_c
|
76
|
+
}
|
77
|
+
else
|
78
|
+
manage([original, new], args.first, nil)
|
79
|
+
end
|
80
|
+
when 2
|
81
|
+
attach_method(new) {
|
82
|
+
self.instance_exec(struct[@attribute][original], &args[0])
|
83
|
+
} if args[0]
|
84
|
+
|
85
|
+
attach_method("#{new}=") {|x|
|
86
|
+
struct[attribute][original] = self.instance_exec(x, &args[1])
|
87
|
+
} if args[1]
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
def initialize (struct)
|
92
|
+
@struct = struct
|
93
|
+
end
|
94
|
+
|
95
|
+
def struct
|
96
|
+
@struct
|
97
|
+
end
|
98
|
+
|
99
|
+
alias to_c struct
|
100
|
+
end
|
101
|
+
|
102
|
+
X11::Event::Window = [lambda {|w|
|
103
|
+
X11::Event::Window.new(display, w)
|
104
|
+
}, lambda(&:to_c)]
|
105
|
+
|
106
|
+
module X11::Event::Common
|
107
|
+
def self.included (klass)
|
108
|
+
klass.class_eval {
|
109
|
+
manage :serial
|
110
|
+
manage [:send_event, :send_event?]
|
111
|
+
manage :display, X11::Display
|
112
|
+
manage :window, X11::Event::Window
|
113
|
+
}
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
end; end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
#--
|
2
|
+
# Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
|
3
|
+
#
|
4
|
+
# Redistribution and use in source and binary forms, with or without modification, are
|
5
|
+
# permitted provided that the following conditions are met:
|
6
|
+
#
|
7
|
+
# 1. Redistributions of source code must retain the above copyright notice, this list of
|
8
|
+
# conditions and the following disclaimer.
|
9
|
+
#
|
10
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
|
11
|
+
# of conditions and the following disclaimer in the documentation and/or other materials
|
12
|
+
# provided with the distribution.
|
13
|
+
#
|
14
|
+
# THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ''AS IS'' AND ANY EXPRESS OR IMPLIED
|
15
|
+
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
16
|
+
# FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> OR
|
17
|
+
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
18
|
+
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
19
|
+
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
20
|
+
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
21
|
+
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
22
|
+
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
23
|
+
#
|
24
|
+
# The views and conclusions contained in the software and documentation are those of the
|
25
|
+
# authors and should not be interpreted as representing official policies, either expressed
|
26
|
+
# or implied.
|
27
|
+
#++
|
28
|
+
|
29
|
+
class X11::Event::KeyPress < X11::Event::Helper
|
30
|
+
attribute :xkey
|
31
|
+
|
32
|
+
include X11::Event::Common
|
33
|
+
|
34
|
+
manage :root, X11::Event::Window
|
35
|
+
manage :subwindow, X11::Event::Window
|
36
|
+
manage :time
|
37
|
+
manage :x
|
38
|
+
manage :y
|
39
|
+
manage :x_root
|
40
|
+
manage :y_root
|
41
|
+
manage :state
|
42
|
+
manage :keycode
|
43
|
+
manage [:same_screen, :same_screen?]
|
44
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
|
2
|
+
#--
|
3
|
+
# Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
|
4
|
+
#
|
5
|
+
# Redistribution and use in source and binary forms, with or without modification, are
|
6
|
+
# permitted provided that the following conditions are met:
|
7
|
+
#
|
8
|
+
# 1. Redistributions of source code must retain the above copyright notice, this list of
|
9
|
+
# conditions and the following disclaimer.
|
10
|
+
#
|
11
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
|
12
|
+
# of conditions and the following disclaimer in the documentation and/or other materials
|
13
|
+
# provided with the distribution.
|
14
|
+
#
|
15
|
+
# THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ''AS IS'' AND ANY EXPRESS OR IMPLIED
|
16
|
+
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
17
|
+
# FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> OR
|
18
|
+
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
19
|
+
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
20
|
+
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
21
|
+
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
22
|
+
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
23
|
+
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
24
|
+
#
|
25
|
+
# The views and conclusions contained in the software and documentation are those of the
|
26
|
+
# authors and should not be interpreted as representing official policies, either expressed
|
27
|
+
# or implied.
|
28
|
+
#++
|
29
|
+
|
30
|
+
class X11::Event::KeyRelease < X11::Event::Helper
|
31
|
+
attribute :xkey
|
32
|
+
|
33
|
+
include X11::Event::Common
|
34
|
+
|
35
|
+
manage :root, X11::Event::Window
|
36
|
+
manage :subwindow, X11::Event::Window
|
37
|
+
manage :time
|
38
|
+
manage :x
|
39
|
+
manage :y
|
40
|
+
manage :x_root
|
41
|
+
manage :y_root
|
42
|
+
manage :state
|
43
|
+
manage :keycode
|
44
|
+
manage [:same_screen, :same_screen?]
|
45
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
#--
|
2
|
+
# Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
|
3
|
+
#
|
4
|
+
# Redistribution and use in source and binary forms, with or without modification, are
|
5
|
+
# permitted provided that the following conditions are met:
|
6
|
+
#
|
7
|
+
# 1. Redistributions of source code must retain the above copyright notice, this list of
|
8
|
+
# conditions and the following disclaimer.
|
9
|
+
#
|
10
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
|
11
|
+
# of conditions and the following disclaimer in the documentation and/or other materials
|
12
|
+
# provided with the distribution.
|
13
|
+
#
|
14
|
+
# THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ''AS IS'' AND ANY EXPRESS OR IMPLIED
|
15
|
+
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
16
|
+
# FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> OR
|
17
|
+
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
18
|
+
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
19
|
+
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
20
|
+
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
21
|
+
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
22
|
+
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
23
|
+
#
|
24
|
+
# The views and conclusions contained in the software and documentation are those of the
|
25
|
+
# authors and should not be interpreted as representing official policies, either expressed
|
26
|
+
# or implied.
|
27
|
+
#++
|
28
|
+
|
29
|
+
class X11::Event::KeymapNotify < X11::Event::Helper
|
30
|
+
attribute :xkeymap
|
31
|
+
|
32
|
+
include X11::Event::Common
|
33
|
+
|
34
|
+
manage :key_vector, lambda { |v| v.to_a }, lambda {|v|
|
35
|
+
v = v.join if v.is_a?(Array)
|
36
|
+
|
37
|
+
FFI::MemoryPointer.from_string(v[0, 32])
|
38
|
+
}
|
39
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
#--
|
2
|
+
# Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
|
3
|
+
#
|
4
|
+
# Redistribution and use in source and binary forms, with or without modification, are
|
5
|
+
# permitted provided that the following conditions are met:
|
6
|
+
#
|
7
|
+
# 1. Redistributions of source code must retain the above copyright notice, this list of
|
8
|
+
# conditions and the following disclaimer.
|
9
|
+
#
|
10
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
|
11
|
+
# of conditions and the following disclaimer in the documentation and/or other materials
|
12
|
+
# provided with the distribution.
|
13
|
+
#
|
14
|
+
# THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ''AS IS'' AND ANY EXPRESS OR IMPLIED
|
15
|
+
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
16
|
+
# FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> OR
|
17
|
+
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
18
|
+
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
19
|
+
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
20
|
+
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
21
|
+
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
22
|
+
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
23
|
+
#
|
24
|
+
# The views and conclusions contained in the software and documentation are those of the
|
25
|
+
# authors and should not be interpreted as representing official policies, either expressed
|
26
|
+
# or implied.
|
27
|
+
#++
|
28
|
+
|
29
|
+
class X11::Event::EnterNotify < X11::Event::Helper
|
30
|
+
attribute :xcrossing
|
31
|
+
|
32
|
+
include X11::Event::Common
|
33
|
+
|
34
|
+
manage :root, X11::Event::Window
|
35
|
+
manage :subwindow, X11::Event::Window
|
36
|
+
manage :time
|
37
|
+
manage :x
|
38
|
+
manage :y
|
39
|
+
manage :x_root
|
40
|
+
manage :y_root
|
41
|
+
manage :mode
|
42
|
+
manage :detail
|
43
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
#--
|
2
|
+
# Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
|
3
|
+
#
|
4
|
+
# Redistribution and use in source and binary forms, with or without modification, are
|
5
|
+
# permitted provided that the following conditions are met:
|
6
|
+
#
|
7
|
+
# 1. Redistributions of source code must retain the above copyright notice, this list of
|
8
|
+
# conditions and the following disclaimer.
|
9
|
+
#
|
10
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
|
11
|
+
# of conditions and the following disclaimer in the documentation and/or other materials
|
12
|
+
# provided with the distribution.
|
13
|
+
#
|
14
|
+
# THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ''AS IS'' AND ANY EXPRESS OR IMPLIED
|
15
|
+
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
16
|
+
# FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> OR
|
17
|
+
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
18
|
+
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
19
|
+
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
20
|
+
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
21
|
+
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
22
|
+
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
23
|
+
#
|
24
|
+
# The views and conclusions contained in the software and documentation are those of the
|
25
|
+
# authors and should not be interpreted as representing official policies, either expressed
|
26
|
+
# or implied.
|
27
|
+
#++
|
28
|
+
|
29
|
+
class X11::Event::MapNotify < X11::Event::Helper
|
30
|
+
attribute :xmap
|
31
|
+
|
32
|
+
include X11::Event::Common
|
33
|
+
|
34
|
+
manage :event, X11::Event::Window
|
35
|
+
manage [:override_redirect, :override_redirect?]
|
36
|
+
end
|