xlib 1.0.0

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.
Files changed (109) hide show
  1. checksums.yaml +7 -0
  2. data/lib/x.rb +11 -0
  3. data/lib/x/constants.rb +614 -0
  4. data/lib/x/extensions.rb +10 -0
  5. data/lib/x/extensions/randr.rb +10 -0
  6. data/lib/x/extensions/randr/constants.rb +160 -0
  7. data/lib/x/extensions/randr/types.rb +18 -0
  8. data/lib/x/extensions/render.rb +10 -0
  9. data/lib/x/extensions/render/constants.rb +155 -0
  10. data/lib/x/extensions/render/types.rb +15 -0
  11. data/lib/x/types.rb +24 -0
  12. data/lib/xlib.rb +29 -0
  13. data/lib/xlib/constants.rb +119 -0
  14. data/lib/xlib/extensions.rb +10 -0
  15. data/lib/xlib/extensions/xrandr.rb +25 -0
  16. data/lib/xlib/extensions/xrandr/functions.rb +101 -0
  17. data/lib/xlib/extensions/xrandr/struct/crtc_change_notify_event.rb +24 -0
  18. data/lib/xlib/extensions/xrandr/struct/crtc_gamma.rb +16 -0
  19. data/lib/xlib/extensions/xrandr/struct/crtc_info.rb +24 -0
  20. data/lib/xlib/extensions/xrandr/struct/crtc_transform_attributes.rb +20 -0
  21. data/lib/xlib/extensions/xrandr/struct/mode_info.rb +26 -0
  22. data/lib/xlib/extensions/xrandr/struct/notify_event.rb +17 -0
  23. data/lib/xlib/extensions/xrandr/struct/output_change_notify_event.rb +24 -0
  24. data/lib/xlib/extensions/xrandr/struct/output_info.rb +27 -0
  25. data/lib/xlib/extensions/xrandr/struct/output_property_notify_event.rb +21 -0
  26. data/lib/xlib/extensions/xrandr/struct/panning.rb +25 -0
  27. data/lib/xlib/extensions/xrandr/struct/property_info.rb +17 -0
  28. data/lib/xlib/extensions/xrandr/struct/provider_change_notify_event.rb +20 -0
  29. data/lib/xlib/extensions/xrandr/struct/provider_info.rb +21 -0
  30. data/lib/xlib/extensions/xrandr/struct/provider_property_notify_event.rb +21 -0
  31. data/lib/xlib/extensions/xrandr/struct/provider_resources.rb +14 -0
  32. data/lib/xlib/extensions/xrandr/struct/resource_change_notify_event.rb +18 -0
  33. data/lib/xlib/extensions/xrandr/struct/screen_change_notify_event.rb +26 -0
  34. data/lib/xlib/extensions/xrandr/struct/screen_resources.rb +20 -0
  35. data/lib/xlib/extensions/xrandr/struct/screen_size.rb +16 -0
  36. data/lib/xlib/extensions/xrandr/types.rb +36 -0
  37. data/lib/xlib/extensions/xrender.rb +24 -0
  38. data/lib/xlib/extensions/xrender/constants.rb +28 -0
  39. data/lib/xlib/extensions/xrender/functions.rb +29 -0
  40. data/lib/xlib/extensions/xrender/struct/anim_cursor.rb +14 -0
  41. data/lib/xlib/extensions/xrender/struct/circle.rb +15 -0
  42. data/lib/xlib/extensions/xrender/struct/conical_gradient.rb +14 -0
  43. data/lib/xlib/extensions/xrender/struct/filters.rb +16 -0
  44. data/lib/xlib/extensions/xrender/struct/glyph_elt16.rb +17 -0
  45. data/lib/xlib/extensions/xrender/struct/glyph_elt32.rb +17 -0
  46. data/lib/xlib/extensions/xrender/struct/glyph_elt8.rb +17 -0
  47. data/lib/xlib/extensions/xrender/struct/glyph_info.rb +18 -0
  48. data/lib/xlib/extensions/xrender/struct/index_value.rb +17 -0
  49. data/lib/xlib/extensions/xrender/struct/line_fixed.rb +14 -0
  50. data/lib/xlib/extensions/xrender/struct/linear_gradient.rb +14 -0
  51. data/lib/xlib/extensions/xrender/struct/point_double.rb +14 -0
  52. data/lib/xlib/extensions/xrender/struct/point_fixed.rb +14 -0
  53. data/lib/xlib/extensions/xrender/struct/radial_gradient.rb +14 -0
  54. data/lib/xlib/extensions/xrender/struct/render_color.rb +16 -0
  55. data/lib/xlib/extensions/xrender/struct/render_direct_format.rb +20 -0
  56. data/lib/xlib/extensions/xrender/struct/render_pict_format.rb +17 -0
  57. data/lib/xlib/extensions/xrender/struct/render_picture_attributes.rb +25 -0
  58. data/lib/xlib/extensions/xrender/struct/span_fix.rb +15 -0
  59. data/lib/xlib/extensions/xrender/struct/transform.rb +13 -0
  60. data/lib/xlib/extensions/xrender/struct/trap.rb +14 -0
  61. data/lib/xlib/extensions/xrender/struct/trapezoid.rb +16 -0
  62. data/lib/xlib/extensions/xrender/struct/triangle.rb +15 -0
  63. data/lib/xlib/extensions/xrender/types.rb +37 -0
  64. data/lib/xlib/functions.rb +396 -0
  65. data/lib/xlib/struct/any_event.rb +17 -0
  66. data/lib/xlib/struct/button_event.rb +27 -0
  67. data/lib/xlib/struct/circulate_event.rb +19 -0
  68. data/lib/xlib/struct/circulate_request_event.rb +19 -0
  69. data/lib/xlib/struct/client_message_event.rb +27 -0
  70. data/lib/xlib/struct/colormap_event.rb +20 -0
  71. data/lib/xlib/struct/configure_event.rb +25 -0
  72. data/lib/xlib/struct/configure_request_event.rb +26 -0
  73. data/lib/xlib/struct/create_window_event.rb +24 -0
  74. data/lib/xlib/struct/crossing_event.rb +29 -0
  75. data/lib/xlib/struct/destroy_window_event.rb +18 -0
  76. data/lib/xlib/struct/display.rb +56 -0
  77. data/lib/xlib/struct/error_event.rb +19 -0
  78. data/lib/xlib/struct/event.rb +48 -0
  79. data/lib/xlib/struct/expose_event.rb +22 -0
  80. data/lib/xlib/struct/focus_change_event.rb +19 -0
  81. data/lib/xlib/struct/gc.rb +14 -0
  82. data/lib/xlib/struct/gc_values.rb +35 -0
  83. data/lib/xlib/struct/generic_event.rb +18 -0
  84. data/lib/xlib/struct/generic_event_cookie.rb +20 -0
  85. data/lib/xlib/struct/graphics_expose_event.rb +25 -0
  86. data/lib/xlib/struct/gravity_event.rb +20 -0
  87. data/lib/xlib/struct/image.rb +37 -0
  88. data/lib/xlib/struct/key_event.rb +27 -0
  89. data/lib/xlib/struct/key_sym.rb +28 -0
  90. data/lib/xlib/struct/keymap_event.rb +18 -0
  91. data/lib/xlib/struct/map_event.rb +19 -0
  92. data/lib/xlib/struct/map_request_event.rb +22 -0
  93. data/lib/xlib/struct/mapping_event.rb +20 -0
  94. data/lib/xlib/struct/motion_event.rb +27 -0
  95. data/lib/xlib/struct/no_expose_event.rb +19 -0
  96. data/lib/xlib/struct/point.rb +14 -0
  97. data/lib/xlib/struct/property_event.rb +20 -0
  98. data/lib/xlib/struct/reparent_event.rb +22 -0
  99. data/lib/xlib/struct/resize_request_event.rb +19 -0
  100. data/lib/xlib/struct/screen.rb +31 -0
  101. data/lib/xlib/struct/selection_clear_event.rb +19 -0
  102. data/lib/xlib/struct/selection_event.rb +21 -0
  103. data/lib/xlib/struct/selection_request_event.rb +22 -0
  104. data/lib/xlib/struct/unmap_event.rb +19 -0
  105. data/lib/xlib/struct/visibility_event.rb +18 -0
  106. data/lib/xlib/struct/visual.rb +20 -0
  107. data/lib/xlib/struct/window_attributes.rb +35 -0
  108. data/lib/xlib/types.rb +73 -0
  109. metadata +164 -0
@@ -0,0 +1,10 @@
1
+ #
2
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
3
+ #
4
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
5
+ # the LICENSE file found in the top-level directory of this distribution and at
6
+ # http://github.com/christopheraue/ruby-xlib.
7
+ #
8
+
9
+ require_relative 'extensions/xrender'
10
+ require_relative 'extensions/xrandr'
@@ -0,0 +1,25 @@
1
+ #
2
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
3
+ #
4
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
5
+ # the LICENSE file found in the top-level directory of this distribution and at
6
+ # http://github.com/christopheraue/ruby-xlib.
7
+ #
8
+
9
+ require 'xlib'
10
+ require_relative 'xrender'
11
+
12
+ module Xlib
13
+ begin
14
+ ffi_lib 'Xrandr'
15
+ def self.xrandr_available?; true end
16
+ rescue LoadError => e
17
+ def self.xrandr_available?; false end
18
+ end
19
+ end
20
+
21
+ require_relative 'xrandr/types'
22
+
23
+ if Xlib.xrandr_available?
24
+ require_relative 'xrandr/functions'
25
+ end
@@ -0,0 +1,101 @@
1
+ #
2
+ # Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
3
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
4
+ #
5
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
6
+ # the LICENSE file found in the top-level directory of this distribution and at
7
+ # http://github.com/christopheraue/ruby-xlib.
8
+ #
9
+
10
+ module Xlib
11
+
12
+ attach_function :XRRQueryExtension, [:pointer, :pointer, :pointer], :Bool
13
+ attach_function :XRRQueryVersion, [:pointer, :pointer, :pointer], :Status
14
+
15
+ attach_function :XRRGetScreenInfo, [:pointer, :Window], :pointer
16
+ attach_function :XRRFreeScreenConfigInfo, [:pointer], :void
17
+ attach_function :XRRSetScreenConfig, [:pointer, :pointer, :Drawable, :int, :Rotation, :Time], :Status
18
+ attach_function :XRRSetScreenConfigAndRate, [:pointer, :pointer, :Drawable, :int, :Rotation, :short, :Time], :Status
19
+
20
+ attach_function :XRRConfigRotations, [:pointer, :pointer], :Rotation
21
+ attach_function :XRRConfigTimes, [:pointer, :pointer], :Time
22
+ attach_function :XRRConfigSizes, [:pointer, :pointer], :pointer
23
+ attach_function :XRRConfigRates, [:pointer, :int, :pointer], :pointer
24
+
25
+ attach_function :XRRConfigCurrentConfiguration, [:pointer, :pointer], :SizeID
26
+ attach_function :XRRConfigCurrentRate, [:pointer], :short
27
+
28
+ attach_function :XRRRootToScreen, [:pointer, :Window], :int
29
+
30
+ attach_function :XRRSelectInput, [:pointer, :Window, :int], :void
31
+
32
+ attach_function :XRRRotations, [:pointer, :int, :pointer], :Rotation
33
+ attach_function :XRRSizes, [:pointer, :int, :pointer], :pointer
34
+ attach_function :XRRRates, [:pointer, :int, :int, :pointer], :pointer
35
+ attach_function :XRRTimes, [:pointer, :int, :pointer], :Time
36
+
37
+ # 1.2 additions
38
+ attach_function :XRRGetScreenSizeRange, [:pointer, :Window, :pointer, :pointer, :pointer, :pointer], :Status
39
+ attach_function :XRRSetScreenSize, [:pointer, :Window, :int, :int, :int, :int], :void
40
+
41
+ attach_function :XRRGetScreenResources, [:pointer, :Window], :pointer
42
+ attach_function :XRRFreeScreenResources, [:pointer], :void
43
+
44
+ attach_function :XRRGetOutputInfo, [:pointer, :pointer, :RROutput], :pointer
45
+ attach_function :XRRFreeOutputInfo, [:pointer], :void
46
+
47
+ attach_function :XRRListOutputProperties, [:pointer, :RROutput, :pointer], :pointer
48
+ attach_function :XRRQueryOutputProperty, [:pointer, :RROutput, :Atom], :pointer
49
+ attach_function :XRRConfigureOutputProperty, [:pointer, :RROutput, :Atom, :Bool, :Bool, :int, :pointer], :void
50
+ attach_function :XRRChangeOutputProperty, [:pointer, :RROutput, :Atom, :Atom, :int, :int, :pointer, :int], :void
51
+ attach_function :XRRDeleteOutputProperty, [:pointer, :RROutput, :Atom], :void
52
+ attach_function :XRRGetOutputProperty, [:pointer, :RROutput, :Atom, :long, :long, :Bool, :Bool, :Atom, :pointer, :pointer, :pointer, :pointer, :pointer], :int
53
+
54
+ attach_function :XRRAllocModeInfo, [:pointer, :int], :pointer
55
+ attach_function :XRRCreateMode, [:pointer, :Window, :pointer], :RRMode
56
+ attach_function :XRRDestroyMode, [:pointer, :RRMode], :void
57
+ attach_function :XRRAddOutputMode, [:pointer, :RROutput, :RRMode], :void
58
+ attach_function :XRRDeleteOutputMode, [:pointer, :RROutput, :RRMode], :void
59
+ attach_function :XRRFreeModeInfo, [:pointer], :void
60
+
61
+ attach_function :XRRGetCrtcInfo, [:pointer, :pointer, :RRCrtc], :pointer
62
+ attach_function :XRRFreeCrtcInfo, [:pointer], :void
63
+ attach_function :XRRSetCrtcConfig, [:pointer, :pointer, :RRCrtc, :Time, :int, :int, :RRMode, :Rotation, :pointer, :int], :Status
64
+
65
+ attach_function :XRRGetCrtcGammaSize, [:pointer, :RRCrtc], :int
66
+ attach_function :XRRGetCrtcGamma, [:pointer, :RRCrtc], :pointer
67
+ attach_function :XRRAllocGamma, [:int], :pointer
68
+ attach_function :XRRSetCrtcGamma, [:pointer, :RRCrtc, :pointer], :void
69
+ attach_function :XRRFreeGamma, [:pointer], :void
70
+
71
+ # 1.3 additions
72
+ attach_function :XRRGetScreenResourcesCurrent, [:pointer, :Window], :pointer
73
+ attach_function :XRRUpdateConfiguration, [:pointer], :int
74
+
75
+ attach_function :XRRSetCrtcTransform, [:pointer, :RRCrtc, :pointer, :string, :pointer, :int], :void
76
+ attach_function :XRRGetCrtcTransform, [:pointer, :RRCrtc, :pointer], :Status
77
+
78
+ attach_function :XRRGetPanning, [:pointer, :pointer, :RRCrtc], :pointer
79
+ attach_function :XRRFreePanning, [:pointer], :void
80
+ attach_function :XRRSetPanning, [:pointer, :pointer, :RRCrtc, :pointer], :Status
81
+
82
+ attach_function :XRRSetOutputPrimary, [:pointer, :Window, :RROutput], :void
83
+ attach_function :XRRGetOutputPrimary, [:pointer, :Window], :RROutput
84
+
85
+ attach_function :XRRGetProviderResources, [:pointer, :Window], :pointer
86
+ attach_function :XRRFreeProviderResources, [:pointer], :void
87
+
88
+ attach_function :XRRGetProviderInfo, [:pointer, :pointer, :RRProvider], :pointer
89
+ attach_function :XRRFreeProviderInfo, [:pointer], :void
90
+
91
+ attach_function :XRRSetProviderOutputSource, [:pointer, :XID, :XID], :int
92
+ attach_function :XRRSetProviderOffloadSink, [:pointer, :XID, :XID], :int
93
+
94
+ attach_function :XRRListProviderProperties, [:pointer, :RRProvider, :int], :pointer
95
+ attach_function :XRRQueryProviderProperty, [:pointer, :RRProvider, :Atom], :pointer
96
+ attach_function :XRRConfigureProviderProperty, [:pointer, :RRProvider, :Atom, :Bool, :Bool, :int, :long], :void
97
+ attach_function :XRRChangeProviderProperty, [:pointer, :RRProvider, :Atom, :Atom, :int, :int, :pointer, :int], :void
98
+ attach_function :XRRDeleteProviderProperty, [:pointer, :RRProvider, :Atom], :void
99
+ attach_function :XRRGetProviderProperty, [:pointer, :RRProvider, :Atom, :long, :long, :Bool, :Bool, :Atom, :pointer, :pointer, :pointer, :pointer, :pointer], :int
100
+
101
+ end
@@ -0,0 +1,24 @@
1
+ #
2
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
3
+ #
4
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
5
+ # the LICENSE file found in the top-level directory of this distribution and at
6
+ # http://github.com/christopheraue/ruby-xlib.
7
+ #
8
+
9
+ class Xlib::XRRCrtcChangeNotifyEvent < FFI::Struct
10
+ layout \
11
+ :type, :int,
12
+ :serial, :ulong,
13
+ :send_event, :Bool,
14
+ :display, :pointer,
15
+ :window, :Window,
16
+ :subtype, :int,
17
+ :crtc, :RRCrtc,
18
+ :mode, :RRMode,
19
+ :rotation, :Rotation,
20
+ :x, :int,
21
+ :y, :int,
22
+ :width, :uint,
23
+ :height, :uint
24
+ end
@@ -0,0 +1,16 @@
1
+ #
2
+ # Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
3
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
4
+ #
5
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
6
+ # the LICENSE file found in the top-level directory of this distribution and at
7
+ # http://github.com/christopheraue/ruby-xlib.
8
+ #
9
+
10
+ class Xlib::XRRCrtcGamma < FFI::Struct
11
+ layout \
12
+ :size, :int,
13
+ :red, :pointer,
14
+ :green, :pointer,
15
+ :blue, :pointer
16
+ end
@@ -0,0 +1,24 @@
1
+ #
2
+ # Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
3
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
4
+ #
5
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
6
+ # the LICENSE file found in the top-level directory of this distribution and at
7
+ # http://github.com/christopheraue/ruby-xlib.
8
+ #
9
+
10
+ class Xlib::XRRCrtcInfo < FFI::Struct
11
+ layout \
12
+ :timestamp, :Time,
13
+ :x, :int,
14
+ :y, :int,
15
+ :width, :uint,
16
+ :height, :uint,
17
+ :mode, :RRMode,
18
+ :rotation, :Rotation,
19
+ :noutput, :int,
20
+ :outputs, :pointer,
21
+ :rotations, :Rotation,
22
+ :npossible, :int,
23
+ :possible, :pointer
24
+ end
@@ -0,0 +1,20 @@
1
+ #
2
+ # Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
3
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
4
+ #
5
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
6
+ # the LICENSE file found in the top-level directory of this distribution and at
7
+ # http://github.com/christopheraue/ruby-xlib.
8
+ #
9
+
10
+ class Xlib::XRRCrtcTransformAttributes < FFI::Struct
11
+ layout \
12
+ :pendingTransform, Xlib::XTransform,
13
+ :pendingFilter, :string,
14
+ :pendingNparams, :int,
15
+ :pendingParams, :pointer,
16
+ :currentTransform, Xlib::XTransform,
17
+ :currentFilter, :string,
18
+ :currentNparams, :int,
19
+ :currentParams, :pointer
20
+ end
@@ -0,0 +1,26 @@
1
+ #
2
+ # Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
3
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
4
+ #
5
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
6
+ # the LICENSE file found in the top-level directory of this distribution and at
7
+ # http://github.com/christopheraue/ruby-xlib.
8
+ #
9
+
10
+ class Xlib::XRRModeInfo < FFI::Struct
11
+ layout \
12
+ :id, :RRMode,
13
+ :width, :uint,
14
+ :height, :uint,
15
+ :dotClock, :ulong,
16
+ :hSyncStart, :uint,
17
+ :hSyncEnd, :uint,
18
+ :hTotal, :uint,
19
+ :hSkew, :uint,
20
+ :vSyncStart, :uint,
21
+ :vSyncEnd, :uint,
22
+ :vTotal, :uint,
23
+ :name, :string,
24
+ :nameLength, :uint,
25
+ :modeFlags, :XRRModeFlags
26
+ end
@@ -0,0 +1,17 @@
1
+ #
2
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
3
+ #
4
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
5
+ # the LICENSE file found in the top-level directory of this distribution and at
6
+ # http://github.com/christopheraue/ruby-xlib.
7
+ #
8
+
9
+ class Xlib::XRRNotifyEvent < FFI::Struct
10
+ layout \
11
+ :type, :int,
12
+ :serial, :ulong,
13
+ :send_event, :Bool,
14
+ :display, :pointer,
15
+ :window, :Window,
16
+ :subtype, :int
17
+ end
@@ -0,0 +1,24 @@
1
+ #
2
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
3
+ #
4
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
5
+ # the LICENSE file found in the top-level directory of this distribution and at
6
+ # http://github.com/christopheraue/ruby-xlib.
7
+ #
8
+
9
+ class Xlib::XRROutputChangeNotifyEvent < FFI::Struct
10
+ layout \
11
+ :type, :int,
12
+ :serial, :ulong,
13
+ :send_event, :Bool,
14
+ :display, :pointer,
15
+ :window, :Window,
16
+ :subtype, :int,
17
+ :timestamp, :Time,
18
+ :output, :RROutput,
19
+ :crtc, :RRCrtc,
20
+ :mode, :RRMode,
21
+ :rotation, :Rotation,
22
+ :connection, :Connection,
23
+ :subpixel_order, :SubpixelOrder
24
+ end
@@ -0,0 +1,27 @@
1
+ #
2
+ # Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
3
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
4
+ #
5
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
6
+ # the LICENSE file found in the top-level directory of this distribution and at
7
+ # http://github.com/christopheraue/ruby-xlib.
8
+ #
9
+
10
+ class Xlib::XRROutputInfo < FFI::Struct
11
+ layout \
12
+ :timestamp, :Time,
13
+ :crtc, :RRCrtc,
14
+ :name, :string,
15
+ :nameLen, :int,
16
+ :mm_width, :ulong,
17
+ :mm_height, :ulong,
18
+ :connection, :Connection,
19
+ :subpixel_order, :SubpixelOrder,
20
+ :ncrtc, :int,
21
+ :crtcs, :pointer,
22
+ :nclone, :int,
23
+ :clones, :pointer,
24
+ :nmode, :int,
25
+ :npreferred, :int,
26
+ :modes, :pointer
27
+ end
@@ -0,0 +1,21 @@
1
+ #
2
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
3
+ #
4
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
5
+ # the LICENSE file found in the top-level directory of this distribution and at
6
+ # http://github.com/christopheraue/ruby-xlib.
7
+ #
8
+
9
+ class Xlib::XRROutputPropertyNotifyEvent < FFI::Struct
10
+ layout \
11
+ :type, :int,
12
+ :serial, :ulong,
13
+ :send_event, :Bool,
14
+ :display, :pointer,
15
+ :window, :Window,
16
+ :subtype, :int,
17
+ :output, :RROutput,
18
+ :property, :Atom,
19
+ :timestamp, :Time,
20
+ :state, :int
21
+ end
@@ -0,0 +1,25 @@
1
+ #
2
+ # Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
3
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
4
+ #
5
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
6
+ # the LICENSE file found in the top-level directory of this distribution and at
7
+ # http://github.com/christopheraue/ruby-xlib.
8
+ #
9
+
10
+ class Xlib::XRRPanning < FFI::Struct
11
+ layout \
12
+ :timestamp, :Time,
13
+ :left, :uint,
14
+ :top, :uint,
15
+ :width, :uint,
16
+ :height, :uint,
17
+ :track_left, :uint,
18
+ :track_top, :uint,
19
+ :track_width, :uint,
20
+ :track_height, :uint,
21
+ :border_left, :int,
22
+ :border_top, :int,
23
+ :border_right, :int,
24
+ :border_bottom, :int
25
+ end
@@ -0,0 +1,17 @@
1
+ #
2
+ # Copyleft meh. [http://meh.paranoid.pk | meh@paranoici.org]
3
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
4
+ #
5
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
6
+ # the LICENSE file found in the top-level directory of this distribution and at
7
+ # http://github.com/christopheraue/ruby-xlib.
8
+ #
9
+
10
+ class Xlib::XRRPropertyInfo < FFI::Struct
11
+ layout \
12
+ :pending, :Bool,
13
+ :range, :Bool,
14
+ :immutable, :Bool,
15
+ :num_values, :int,
16
+ :values, :pointer
17
+ end
@@ -0,0 +1,20 @@
1
+ #
2
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
3
+ #
4
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
5
+ # the LICENSE file found in the top-level directory of this distribution and at
6
+ # http://github.com/christopheraue/ruby-xlib.
7
+ #
8
+
9
+ class Xlib::XRRProviderChangeNotifyEvent < FFI::Struct
10
+ layout \
11
+ :type, :int,
12
+ :serial, :ulong,
13
+ :send_event, :Bool,
14
+ :display, :pointer,
15
+ :window, :Window,
16
+ :subtype, :int,
17
+ :provider, :RRProvider,
18
+ :timestamp, :Time,
19
+ :current_role, :uint
20
+ end
@@ -0,0 +1,21 @@
1
+ #
2
+ # Copyright (c) 2014, Christopher Aue <mail@christopheraue.net>
3
+ #
4
+ # This file is part of the ruby xlib gem. It is subject to the license terms in
5
+ # the LICENSE file found in the top-level directory of this distribution and at
6
+ # http://github.com/christopheraue/ruby-xlib.
7
+ #
8
+
9
+ class Xlib::XRRProviderInfo < FFI::Struct
10
+ layout \
11
+ :capabilities, :uint,
12
+ :ncrtcs, :int,
13
+ :crtcs, :pointer,
14
+ :noutputs, :int,
15
+ :outputs, :pointer,
16
+ :name, :pointer,
17
+ :nassociatedproviders, :int,
18
+ :associated_providers, :pointer,
19
+ :associated_capability, :uint,
20
+ :nameLen, :int
21
+ end