ffi-efl 0.0.10 → 0.0.11
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.
- data/Changelog +10 -2
- data/README.rdoc +41 -30
- data/lib/efl.rb +88 -14
- data/lib/efl/ecore.rb +1 -0
- data/lib/efl/ecore_evas.rb +4 -2
- data/lib/efl/ecore_getopt.rb +12 -11
- data/lib/efl/ecore_input.rb +1 -0
- data/lib/efl/eet.rb +1 -0
- data/lib/efl/eina.rb +1 -0
- data/lib/efl/eina_hash.rb +1 -0
- data/lib/efl/eina_list.rb +1 -0
- data/lib/efl/eina_log.rb +4 -0
- data/lib/efl/elementary.rb +0 -662
- data/lib/efl/elementary_all.rb +82 -0
- data/lib/efl/elm/elm_actionslider.rb +22 -0
- data/lib/efl/elm/elm_anchorblock.rb +22 -0
- data/lib/efl/elm/elm_anchorview.rb +22 -0
- data/lib/efl/elm/elm_bg.rb +37 -0
- data/lib/efl/elm/elm_box.rb +42 -0
- data/lib/efl/elm/elm_bubble.rb +22 -0
- data/lib/efl/elm/elm_button.rb +22 -0
- data/lib/efl/elm/elm_calendar.rb +22 -0
- data/lib/efl/elm/elm_check.rb +22 -0
- data/lib/efl/elm/elm_clock.rb +22 -0
- data/lib/efl/elm/elm_cnp.rb +30 -0
- data/lib/efl/elm/elm_colorselector.rb +22 -0
- data/lib/efl/elm/elm_conform.rb +26 -0
- data/lib/efl/elm/elm_ctxpopup.rb +27 -0
- data/lib/efl/elm/elm_cursor.rb +20 -0
- data/lib/efl/elm/elm_debug.rb +25 -0
- data/lib/efl/elm/elm_diskselector.rb +51 -0
- data/lib/efl/elm/elm_entry.rb +22 -0
- data/lib/efl/elm/elm_factory.rb +22 -0
- data/lib/efl/elm/elm_fileselector.rb +22 -0
- data/lib/efl/elm/elm_fileselector_button.rb +22 -0
- data/lib/efl/elm/elm_fileselector_entry.rb +22 -0
- data/lib/efl/elm/elm_flip.rb +22 -0
- data/lib/efl/elm/elm_flipselector.rb +56 -0
- data/lib/efl/elm/elm_focus.rb +74 -0
- data/lib/efl/elm/elm_frame.rb +22 -0
- data/lib/efl/elm/elm_gengrid.rb +68 -0
- data/lib/efl/elm/elm_genlist.rb +79 -0
- data/lib/efl/elm/elm_gesture_layer.rb +22 -0
- data/lib/efl/elm/elm_glview.rb +22 -0
- data/lib/efl/elm/elm_grid.rb +22 -0
- data/lib/efl/elm/elm_hover.rb +22 -0
- data/lib/efl/elm/elm_hoversel.rb +27 -0
- data/lib/efl/elm/elm_icon.rb +26 -0
- data/lib/efl/elm/elm_image.rb +22 -0
- data/lib/efl/elm/elm_index.rb +31 -0
- data/lib/efl/elm/elm_label.rb +22 -0
- data/lib/efl/elm/elm_layout.rb +26 -0
- data/lib/efl/elm/elm_list.rb +55 -0
- data/lib/efl/elm/elm_map.rb +22 -0
- data/lib/efl/elm/elm_mapbuf.rb +22 -0
- data/lib/efl/elm/elm_menu.rb +55 -0
- data/lib/efl/elm/elm_mirroring.rb +36 -0
- data/lib/efl/elm/elm_multibuttonentry.rb +58 -0
- data/lib/efl/elm/elm_naviframe.rb +42 -0
- data/lib/efl/elm/elm_notify.rb +22 -0
- data/lib/efl/elm/elm_object.rb +68 -0
- data/lib/efl/elm/elm_object_item.rb +20 -0
- data/lib/efl/elm/elm_panel.rb +22 -0
- data/lib/efl/elm/elm_panes.rb +22 -0
- data/lib/efl/elm/elm_photo.rb +22 -0
- data/lib/efl/elm/elm_photocam.rb +22 -0
- data/lib/efl/elm/elm_plug.rb +22 -0
- data/lib/efl/elm/elm_progressbar.rb +22 -0
- data/lib/efl/elm/elm_radio.rb +22 -0
- data/lib/efl/elm/elm_route.rb +22 -0
- data/lib/efl/elm/elm_scale.rb +28 -0
- data/lib/efl/elm/elm_scroll.rb +50 -0
- data/lib/efl/elm/elm_scroller.rb +22 -0
- data/lib/efl/elm/elm_segment_control.rb +39 -0
- data/lib/efl/elm/elm_separator.rb +22 -0
- data/lib/efl/elm/elm_slider.rb +22 -0
- data/lib/efl/elm/elm_slideshow.rb +41 -0
- data/lib/efl/elm/elm_spinner.rb +22 -0
- data/lib/efl/elm/elm_store.rb +43 -0
- data/lib/efl/elm/elm_table.rb +22 -0
- data/lib/efl/elm/elm_theme.rb +42 -0
- data/lib/efl/elm/elm_thumb.rb +22 -0
- data/lib/efl/elm/elm_toolbar.rb +63 -0
- data/lib/efl/elm/elm_tooltip.rb +20 -0
- data/lib/efl/elm/elm_transit.rb +78 -0
- data/lib/efl/elm/elm_video.rb +30 -0
- data/lib/efl/elm/elm_web.rb +22 -0
- data/lib/efl/elm/elm_win.rb +33 -0
- data/lib/efl/evas.rb +8 -7
- data/lib/efl/native.rb +45 -11
- data/lib/efl/native/ecore.rb +188 -210
- data/lib/efl/native/ecore_evas.rb +260 -207
- data/lib/efl/native/ecore_getopt.rb +17 -24
- data/lib/efl/native/ecore_input.rb +7 -11
- data/lib/efl/native/edje.rb +250 -202
- data/lib/efl/native/eet.rb +154 -155
- data/lib/efl/native/eina.rb +7 -13
- data/lib/efl/native/eina_hash.rb +41 -47
- data/lib/efl/native/eina_list.rb +39 -48
- data/lib/efl/native/eina_log.rb +21 -23
- data/lib/efl/native/eina_types.rb +8 -14
- data/lib/efl/native/eina_xattr.rb +21 -18
- data/lib/efl/native/elementary.rb +9 -3381
- data/lib/efl/native/elm/elm_actionslider.rb +54 -0
- data/lib/efl/native/elm/elm_anchorblock.rb +55 -0
- data/lib/efl/native/elm/elm_anchorview.rb +59 -0
- data/lib/efl/native/elm/elm_app.rb +53 -0
- data/lib/efl/native/elm/elm_bg.rb +53 -0
- data/lib/efl/native/elm/elm_box.rb +81 -0
- data/lib/efl/native/elm/elm_bubble.rb +44 -0
- data/lib/efl/native/elm/elm_button.rb +47 -0
- data/lib/efl/native/elm/elm_cache.rb +59 -0
- data/lib/efl/native/elm/elm_calendar.rb +76 -0
- data/lib/efl/native/elm/elm_check.rb +41 -0
- data/lib/efl/native/elm/elm_clock.rb +64 -0
- data/lib/efl/native/elm/elm_cnp.rb +54 -0
- data/lib/efl/native/elm/elm_colorselector.rb +39 -0
- data/lib/efl/native/elm/elm_config.rb +103 -0
- data/lib/efl/native/elm/elm_conform.rb +37 -0
- data/lib/efl/native/elm/elm_ctxpopup.rb +59 -0
- data/lib/efl/native/elm/elm_cursor.rb +51 -0
- data/lib/efl/native/elm/elm_debug.rb +37 -0
- data/lib/efl/native/elm/elm_diskselector.rb +76 -0
- data/lib/efl/native/elm/elm_engine.rb +41 -0
- data/lib/efl/native/elm/elm_entry.rb +242 -0
- data/lib/efl/native/elm/elm_factory.rb +41 -0
- data/lib/efl/native/elm/elm_fileselector.rb +67 -0
- data/lib/efl/native/elm/elm_fileselector_button.rb +63 -0
- data/lib/efl/native/elm/elm_fileselector_entry.rb +67 -0
- data/lib/efl/native/elm/elm_finger.rb +39 -0
- data/lib/efl/native/elm/elm_flip.rb +62 -0
- data/lib/efl/native/elm/elm_flipselector.rb +63 -0
- data/lib/efl/native/elm/elm_focus.rb +65 -0
- data/lib/efl/native/elm/elm_fonts.rb +66 -0
- data/lib/efl/native/elm/elm_frame.rb +45 -0
- data/lib/efl/native/elm/elm_general.rb +105 -0
- data/lib/efl/native/elm/elm_gengrid.rb +184 -0
- data/lib/efl/native/elm/elm_genlist.rb +240 -0
- data/lib/efl/native/elm/elm_gesture_layer.rb +76 -0
- data/lib/efl/native/elm/elm_glview.rb +70 -0
- data/lib/efl/native/elm/elm_grid.rb +51 -0
- data/lib/efl/native/elm/elm_hover.rb +51 -0
- data/lib/efl/native/elm/elm_hoversel.rb +60 -0
- data/lib/efl/native/elm/elm_icon.rb +97 -0
- data/lib/efl/native/elm/elm_image.rb +80 -0
- data/lib/efl/native/elm/elm_index.rb +63 -0
- data/lib/efl/native/elm/elm_label.rb +60 -0
- data/lib/efl/native/elm/elm_layout.rb +77 -0
- data/lib/efl/native/elm/elm_list.rb +105 -0
- data/lib/efl/native/elm/elm_map.rb +225 -0
- data/lib/efl/native/elm/elm_mapbuf.rb +47 -0
- data/lib/efl/native/elm/elm_menu.rb +77 -0
- data/lib/efl/native/elm/elm_mirroring.rb +45 -0
- data/lib/efl/native/elm/elm_multibuttonentry.rb +81 -0
- data/lib/efl/native/elm/elm_naviframe.rb +79 -0
- data/lib/efl/native/elm/elm_need.rb +41 -0
- data/lib/efl/native/elm/elm_notify.rb +57 -0
- data/lib/efl/native/elm/elm_object.rb +74 -0
- data/lib/efl/native/elm/elm_object_item.rb +93 -0
- data/lib/efl/native/elm/elm_panel.rb +55 -0
- data/lib/efl/native/elm/elm_panes.rb +51 -0
- data/lib/efl/native/elm/elm_password.rb +41 -0
- data/lib/efl/native/elm/elm_photo.rb +49 -0
- data/lib/efl/native/elm/elm_photocam.rb +74 -0
- data/lib/efl/native/elm/elm_plug.rb +39 -0
- data/lib/efl/native/elm/elm_progressbar.rb +61 -0
- data/lib/efl/native/elm/elm_radio.rb +49 -0
- data/lib/efl/native/elm/elm_route.rb +42 -0
- data/lib/efl/native/elm/elm_scale.rb +41 -0
- data/lib/efl/native/elm/elm_scroll.rb +49 -0
- data/lib/efl/native/elm/elm_scroller.rb +80 -0
- data/lib/efl/native/elm/elm_segment_control.rb +57 -0
- data/lib/efl/native/elm/elm_separator.rb +39 -0
- data/lib/efl/native/elm/elm_slider.rb +71 -0
- data/lib/efl/native/elm/elm_slideshow.rb +97 -0
- data/lib/efl/native/elm/elm_spinner.rb +73 -0
- data/lib/efl/native/elm/elm_store.rb +110 -0
- data/lib/efl/native/elm/elm_table.rb +53 -0
- data/lib/efl/native/elm/elm_theme.rb +81 -0
- data/lib/efl/native/elm/elm_thumb.rb +60 -0
- data/lib/efl/native/elm/elm_toolbar.rb +145 -0
- data/lib/efl/native/elm/elm_tooltip.rb +59 -0
- data/lib/efl/native/elm/elm_transit.rb +135 -0
- data/lib/efl/native/elm/elm_video.rb +71 -0
- data/lib/efl/native/elm/elm_web.rb +165 -0
- data/lib/efl/native/elm/elm_win.rb +221 -0
- data/lib/efl/native/emap.rb +28 -34
- data/lib/efl/native/evas.rb +640 -618
- data/spec/ecore_evas_spec.rb +28 -22
- data/spec/ecore_spec.rb +1 -0
- data/spec/edje_spec.rb +8 -1
- data/spec/eina_hash_spec.rb +0 -1
- data/spec/eina_list_spec.rb +0 -1
- data/spec/eina_log_spec.rb +10 -8
- data/spec/elm_spec.rb +4 -114
- data/spec/evas_spec.rb +13 -244
- data/spec/helper.rb +16 -15
- data/tasks/constants.rb +9 -9
- data/test/test_elm_win-native.rb +6 -4
- data/test/test_elm_win.rb +20 -19
- data/test/test_evas.rb +12 -12
- metadata +209 -64
- data/lib/efl/ffi.rb +0 -172
- data/test/test_elementary.rb +0 -271
- data/test/tests/test_actionslider.rb +0 -132
- data/test/tests/test_anchorbock.rb +0 -73
- data/test/tests/test_bg.rb +0 -151
- data/test/tests/test_box.rb +0 -147
- data/test/tests/test_buttons.rb +0 -114
data/Changelog
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
2012-02-29 Jérémy Zurcher <jeremy@asynk.ch>
|
2
|
+
* remove usage of autoload
|
3
|
+
* efl.rb holds objects and method_missing helper code
|
4
|
+
* native.rb only helps for ffi mapping
|
5
|
+
* follow new elementary header split
|
6
|
+
* object constructors use instance_eval instead of yield
|
7
|
+
* elm widgets complete but rough
|
8
|
+
|
1
9
|
2011-09-02 Jérémy Zurcher <jeremy@asynk.ch>
|
2
10
|
* release 0.0.9
|
3
11
|
* implement test_bg, test_actionslider, test_box
|
@@ -17,8 +25,8 @@
|
|
17
25
|
* elementary objects constructor helper
|
18
26
|
* elementary objects may wrap callback pointers
|
19
27
|
* quick add classes : ElmDiskSelectorItem, ElmEntry, ElmFlipSelector, ElmFLipSelectorItem, ElmHoversel, ElmHoverselItem, ElmGenlistItemClassStruct, ElmHover, ElmButton, ElmListItem, ElmGenList,
|
20
|
-
|
21
|
-
|
28
|
+
* auto complete _set and _get function suffixes
|
29
|
+
* bugfix ecore_getopt
|
22
30
|
* add REinaList#from_a ptrt
|
23
31
|
* add REinaList#to_a ptrt=nil
|
24
32
|
* rework EcoreGetopt
|
data/README.rdoc
CHANGED
@@ -12,40 +12,51 @@ A ruby-ffi binding to efl libraries (Enlightenment Foundation Libraries).
|
|
12
12
|
|
13
13
|
== SYNOPSIS:
|
14
14
|
|
15
|
-
require 'efl/
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
w.move 300, 300
|
28
|
-
w.resize 200, 100
|
29
|
-
bg = Efl::Elm::ElmBg.new w do |bg|
|
30
|
-
bg.size_hint_weight_expand
|
31
|
-
bg.size_hint_align_fill
|
32
|
-
bg.evas_object_color_set 200,255,100,150
|
33
|
-
bg.show
|
15
|
+
require 'efl/elm/elm_win'
|
16
|
+
require 'efl/elm/elm_bg'
|
17
|
+
require 'efl/elm/elm_label'
|
18
|
+
|
19
|
+
include Efl
|
20
|
+
|
21
|
+
class MyWin < Elm::ElmWin
|
22
|
+
def initialize name, title, &block
|
23
|
+
super FFI::MemoryPointer::NULL, name, &block
|
24
|
+
title_set title
|
25
|
+
feed
|
26
|
+
smart_callback_add "delete,request", method(:on_delete), FFI::MemoryPointer.from_string("my data")
|
34
27
|
end
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
28
|
+
def feed
|
29
|
+
@bg = Elm::ElmBg.new(self) do
|
30
|
+
size_hint_weight_expand
|
31
|
+
evas_object_color_set 200,255,100,150
|
32
|
+
show
|
33
|
+
end
|
34
|
+
resize_object_add @bg
|
35
|
+
@lb = Elm::ElmLabel.new(self) do
|
36
|
+
text_set "Hello World!"
|
37
|
+
size_hint_align_fill
|
38
|
+
size_hint_weight_expand
|
39
|
+
show
|
40
|
+
end
|
41
|
+
resize_object_add @lb
|
42
|
+
end
|
43
|
+
def on_delete data, evas_object, event_info
|
44
|
+
puts "EXIT #{data.read_string}"
|
45
|
+
Elm.exit
|
39
46
|
end
|
40
|
-
lb.show
|
41
|
-
w.resize_object_add lb
|
42
|
-
w.smart_callback_add "delete,request", on_exit, FFI::MemoryPointer.from_string("my data")
|
43
47
|
end
|
44
48
|
|
45
|
-
|
49
|
+
Elm.init
|
50
|
+
|
51
|
+
win = MyWin.new "App name", "Window Title" do
|
52
|
+
alpha_set true
|
53
|
+
resize 200, 100
|
54
|
+
center_set 600, 300
|
55
|
+
show
|
56
|
+
end
|
46
57
|
|
47
|
-
|
48
|
-
|
58
|
+
Elm.run
|
59
|
+
Elm.shutdown
|
49
60
|
|
50
61
|
For more examples you may look at:
|
51
62
|
|
@@ -76,7 +87,6 @@ Online repositories:
|
|
76
87
|
|
77
88
|
* https://github.com/jeremyz/ffi-efl
|
78
89
|
* http://cgit.asynk.ch/cgi-bin/cgit/ffi-efl/
|
79
|
-
* https://gitorious.org/ffi-efl
|
80
90
|
|
81
91
|
Gem:
|
82
92
|
|
@@ -87,6 +97,7 @@ Gem:
|
|
87
97
|
Special thanks to:
|
88
98
|
|
89
99
|
* Lionel Orry
|
100
|
+
* The enlightenment team
|
90
101
|
|
91
102
|
== LICENSE:
|
92
103
|
|
data/lib/efl.rb
CHANGED
@@ -1,23 +1,97 @@
|
|
1
1
|
#! /usr/bin/env ruby
|
2
2
|
# -*- coding: UTF-8 -*-
|
3
3
|
#
|
4
|
-
#
|
5
4
|
module Efl
|
6
5
|
#
|
7
|
-
VERSION = '0.0.
|
6
|
+
VERSION = '0.0.11'
|
7
|
+
#
|
8
|
+
module MethodResolver
|
9
|
+
def self.resolve mod, meth, prefix
|
10
|
+
meth_s = meth.to_s
|
11
|
+
if meth_s =~/^(.*)=$/
|
12
|
+
meth_s = $1+'_set'
|
13
|
+
args_s = '*args[0]'
|
14
|
+
elsif meth_s =~/^(.*)\?$/
|
15
|
+
meth_s = $1+'_get'
|
16
|
+
args_s = '*args'
|
17
|
+
else
|
18
|
+
args_s = '*args'
|
19
|
+
end
|
20
|
+
sym = (
|
21
|
+
if Efl::Native.respond_to? prefix+meth_s
|
22
|
+
prefix+meth_s
|
23
|
+
elsif Efl::Native.respond_to? meth_s
|
24
|
+
meth_s
|
25
|
+
elsif Efl::Native.respond_to? prefix+meth_s+'_get'
|
26
|
+
prefix+meth_s+'_get'
|
27
|
+
elsif Efl::Native.respond_to? meth_s+'_get'
|
28
|
+
meth_s+'_get'
|
29
|
+
else
|
30
|
+
raise NameError.new "#{mod.name}.#{meth_s} (#{meth})"
|
31
|
+
end
|
32
|
+
)
|
33
|
+
mod.module_eval "def self.#{meth} *args, █ r=Efl::Native.#{sym}(#{args_s}); yield r if block_given?; r; end"
|
34
|
+
sym
|
35
|
+
end
|
36
|
+
end
|
37
|
+
#
|
38
|
+
module ClassHelper
|
39
|
+
def to_a; [self] end
|
40
|
+
def to_ary; [self] end
|
41
|
+
def to_s; Object.instance_method(:to_s).bind(self).call+' ['+self.to_ptr.to_s+']' end
|
42
|
+
alias :to_str :to_s
|
43
|
+
def to_ptr; @ptr; end
|
44
|
+
def === o; @ptr === o.to_ptr; end
|
45
|
+
def null?; @ptr.null?; end
|
46
|
+
def address; @ptr.address; end
|
47
|
+
def self.included kls
|
48
|
+
# create class instance @search_prefixes
|
49
|
+
kls.class_eval "@search_prefixes ||=[]"
|
50
|
+
# access and prepend *args to @search_prefixes
|
51
|
+
kls.class_eval "def self.search_prefixes *args; @search_prefixes.unshift *args unless args.empty?; @search_prefixes; end"
|
52
|
+
# on inheritance, copy ancestor's @search_prefixes
|
53
|
+
kls.class_eval <<-EOF
|
54
|
+
def self.inherited sub
|
55
|
+
sub.class_eval '@search_prefixes = []'
|
56
|
+
sub.search_prefixes *self.search_prefixes
|
57
|
+
end
|
58
|
+
EOF
|
59
|
+
end
|
60
|
+
def method_missing m, *args, &block
|
61
|
+
m_s = m.to_s
|
62
|
+
if m_s =~/^(.*)=$/
|
63
|
+
m_s = $1+'_set'
|
64
|
+
args_s = '*args[0]'
|
65
|
+
elsif m_s =~/^(.*)\?$/
|
66
|
+
m_s = $1+'_get'
|
67
|
+
args_s = '*args'
|
68
|
+
else
|
69
|
+
args_s = '*args'
|
70
|
+
end
|
71
|
+
(['']+self.class.search_prefixes).each do |p|
|
72
|
+
sym = p+m_s
|
73
|
+
meth = (
|
74
|
+
if Efl::Native.respond_to? sym
|
75
|
+
sym
|
76
|
+
elsif Efl::Native.respond_to? m_s
|
77
|
+
m_s
|
78
|
+
elsif Efl::Native.respond_to? sym+'_get'
|
79
|
+
sym+'_get'
|
80
|
+
elsif Efl::Native.respond_to? m_s+'_get'
|
81
|
+
m_s+'_get'
|
82
|
+
else
|
83
|
+
nil
|
84
|
+
end
|
85
|
+
)
|
86
|
+
if not meth.nil?
|
87
|
+
self.class.class_eval "def #{m} *args, █ r=Efl::Native.#{meth}(@ptr,#{args_s}); yield r if block_given?; r; end"
|
88
|
+
return self.send m, *args, &block
|
89
|
+
end
|
90
|
+
end
|
91
|
+
Kernel.raise NameError.new "#{self.class.name} is unable to resolve #{m} within #{self.class.search_prefixes.inspect}"
|
92
|
+
end
|
93
|
+
end
|
8
94
|
#
|
9
|
-
autoload :EcoreEvas, './lib/efl/ecore_evas.rb'
|
10
|
-
autoload :EcoreGetopt, './lib/efl/ecore_getopt.rb'
|
11
|
-
autoload :EcoreInput, './lib/efl/ecore_input.rb'
|
12
|
-
autoload :Ecore, './lib/efl/ecore.rb'
|
13
|
-
autoload :Edje, './lib/efl/edje.rb'
|
14
|
-
autoload :Eet, './lib/efl/eet.rb'
|
15
|
-
autoload :EinaHash, './lib/efl/eina_hash.rb'
|
16
|
-
autoload :EinaList, './lib/efl/eina_list.rb'
|
17
|
-
autoload :EinaLog, './lib/efl/eina_log.rb'
|
18
|
-
autoload :Eina, './lib/efl/eina.rb'
|
19
|
-
autoload :Elm, './lib/efl/elementary.rb'
|
20
|
-
autoload :Evas, './lib/efl/evas.rb'
|
21
95
|
end
|
22
96
|
#
|
23
97
|
# EOF
|
data/lib/efl/ecore.rb
CHANGED
data/lib/efl/ecore_evas.rb
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
#! /usr/bin/env ruby
|
2
2
|
# -*- coding: UTF-8 -*-
|
3
3
|
#
|
4
|
+
require 'efl'
|
5
|
+
require 'efl/evas'
|
4
6
|
require 'efl/native/ecore_evas'
|
5
7
|
#
|
6
8
|
module Efl
|
@@ -17,7 +19,7 @@ module Efl
|
|
17
19
|
class REcoreEvas
|
18
20
|
include Efl::ClassHelper
|
19
21
|
search_prefixes 'ecore_evas_'
|
20
|
-
def initialize o=nil
|
22
|
+
def initialize o=nil, &block
|
21
23
|
@ptr = (
|
22
24
|
case o
|
23
25
|
when NilClass
|
@@ -30,7 +32,7 @@ module Efl
|
|
30
32
|
raise ArgumentError.new "wrong argument #{o.class.name}"
|
31
33
|
end
|
32
34
|
)
|
33
|
-
|
35
|
+
instance_eval &block if block
|
34
36
|
end
|
35
37
|
def self.release p
|
36
38
|
Native.ecore_evas_free p
|
data/lib/efl/ecore_getopt.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
#! /usr/bin/env ruby
|
2
2
|
# -*- coding: UTF-8 -*-
|
3
3
|
#
|
4
|
+
require 'efl'
|
4
5
|
require 'efl/native/ecore_getopt'
|
5
6
|
#
|
6
7
|
module Efl
|
@@ -9,16 +10,16 @@ module Efl
|
|
9
10
|
#
|
10
11
|
class EcoreGetoptValue < FFI::Union
|
11
12
|
layout :strp, :pointer,
|
12
|
-
:boolp, :
|
13
|
-
:shortp, :
|
14
|
-
:intp, :
|
15
|
-
:longp, :
|
16
|
-
:ushortp, :
|
17
|
-
:uintp, :
|
18
|
-
:ulongp, :
|
19
|
-
:doublep, :
|
20
|
-
:listp, :
|
21
|
-
:ptrp, :
|
13
|
+
:boolp, :pointer,
|
14
|
+
:shortp, :pointer,
|
15
|
+
:intp, :pointer,
|
16
|
+
:longp, :pointer,
|
17
|
+
:ushortp, :pointer,
|
18
|
+
:uintp, :pointer,
|
19
|
+
:ulongp, :pointer,
|
20
|
+
:doublep, :pointer,
|
21
|
+
:listp, :pointer,
|
22
|
+
:ptrp, :pointer
|
22
23
|
|
23
24
|
def value_ptr idx
|
24
25
|
Native::EcoreGetoptValue.new to_ptr+(idx*Native::EcoreGetoptValue.size)
|
@@ -43,7 +44,7 @@ module Efl
|
|
43
44
|
:def, EcoreGetoptDescStoreDef
|
44
45
|
end
|
45
46
|
#
|
46
|
-
callback :ecore_getopt_desc_cb, [:
|
47
|
+
callback :ecore_getopt_desc_cb, [:pointer, :pointer, :string, :pointer, :pointer ], :eina_bool
|
47
48
|
#
|
48
49
|
class EcoreGetoptDescCallback < FFI::Struct
|
49
50
|
layout :func, :ecore_getopt_desc_cb,
|
data/lib/efl/ecore_input.rb
CHANGED
data/lib/efl/eet.rb
CHANGED
data/lib/efl/eina.rb
CHANGED
data/lib/efl/eina_hash.rb
CHANGED
data/lib/efl/eina_list.rb
CHANGED
data/lib/efl/eina_log.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
#! /usr/bin/env ruby
|
2
2
|
# -*- coding: UTF-8 -*-
|
3
3
|
#
|
4
|
+
require 'efl/eina'
|
4
5
|
require 'efl/native/eina_log'
|
5
6
|
#
|
6
7
|
module Efl
|
@@ -44,6 +45,9 @@ module Efl
|
|
44
45
|
file, line, func = caller[1].split ':'
|
45
46
|
Native.eina_log_print Native.EINA_LOG_DOMAIN_GLOBAL, lvl, file, func, line.to_i, msg
|
46
47
|
end
|
48
|
+
class << self
|
49
|
+
private :_log
|
50
|
+
end
|
47
51
|
#
|
48
52
|
def self.log_crit msg
|
49
53
|
self._log :eina_log_level_critical, msg
|
data/lib/efl/elementary.rb
CHANGED
@@ -5,20 +5,6 @@ require 'efl/evas'
|
|
5
5
|
require 'efl/native/elementary'
|
6
6
|
#
|
7
7
|
module Efl
|
8
|
-
#
|
9
|
-
module Native
|
10
|
-
#
|
11
|
-
class ElmGenlistItemClassStruct < FFI::Struct
|
12
|
-
layout :item_style, :pointer,
|
13
|
-
:label_get, :pointer,
|
14
|
-
:icon_get, :pointer,
|
15
|
-
:state_get, :pointer,
|
16
|
-
:del, :pointer,
|
17
|
-
:moved, :pointer,
|
18
|
-
:mode_item_style, :pointer
|
19
|
-
end
|
20
|
-
#
|
21
|
-
end
|
22
8
|
#
|
23
9
|
module Elm
|
24
10
|
#
|
@@ -26,22 +12,6 @@ module Efl
|
|
26
12
|
Native::VersionStruct.new(Native.elm_version)
|
27
13
|
end
|
28
14
|
#
|
29
|
-
module Helper
|
30
|
-
def self.included kls
|
31
|
-
def kls.constructor meth
|
32
|
-
self.class_eval <<-EOF
|
33
|
-
def initialize ptr, &block
|
34
|
-
if ptr.is_a? FFI::Pointer
|
35
|
-
super ptr, &block
|
36
|
-
else
|
37
|
-
super Native.method(:#{meth}), ptr, &block
|
38
|
-
end
|
39
|
-
end
|
40
|
-
EOF
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
44
|
-
#
|
45
15
|
class << self
|
46
16
|
def init *args
|
47
17
|
a = args.select { |e| e.is_a? String }
|
@@ -54,638 +24,6 @@ module Efl
|
|
54
24
|
end
|
55
25
|
end
|
56
26
|
#
|
57
|
-
class ElmObject < Efl::Evas::REvasObject
|
58
|
-
#
|
59
|
-
search_prefixes 'elm_object_'
|
60
|
-
#
|
61
|
-
def smart_callback_add event_str, cb, data=FFI::MemoryPointer::NULL
|
62
|
-
Native.evas_object_smart_callback_add @ptr, event_str, cb, data
|
63
|
-
end
|
64
|
-
#
|
65
|
-
def text_set label
|
66
|
-
Native.elm_object_text_part_set @ptr, nil, label
|
67
|
-
end
|
68
|
-
alias :text= :text_set
|
69
|
-
#
|
70
|
-
def text_get
|
71
|
-
Native.elm_object_text_part_get @ptr, nil
|
72
|
-
end
|
73
|
-
alias :text :text_get
|
74
|
-
#
|
75
|
-
def content_set content
|
76
|
-
Native.elm_object_content_part_set @ptr, nil, content
|
77
|
-
end
|
78
|
-
alias :content= :content_set
|
79
|
-
#
|
80
|
-
def content_get
|
81
|
-
Native.elm_object_content_part_get @ptr, nil
|
82
|
-
end
|
83
|
-
alias :content :content_get
|
84
|
-
#
|
85
|
-
def content_unset
|
86
|
-
Native.elm_object_content_part_unset @ptr, nil
|
87
|
-
end
|
88
|
-
#
|
89
|
-
def parent_widget_get
|
90
|
-
ElmObject.new Native.elm_object_parent_widget_get @ptr
|
91
|
-
end
|
92
|
-
alias :parent_widget :parent_widget_get
|
93
|
-
end
|
94
|
-
#
|
95
|
-
####################################################################################
|
96
|
-
#
|
97
|
-
class ElmActionSlider < ElmObject
|
98
|
-
#
|
99
|
-
@as_pos = Native.enum_type :elm_actionslider_pos
|
100
|
-
class << self
|
101
|
-
attr_reader :as_pos
|
102
|
-
end
|
103
|
-
#
|
104
|
-
include Helper
|
105
|
-
constructor :elm_actionslider_add
|
106
|
-
search_prefixes 'elm_actionslider_'
|
107
|
-
#
|
108
|
-
def texts_set l=nil, c=nil, r=nil
|
109
|
-
l,c,r = *l if l.is_a? Array
|
110
|
-
Native.elm_object_text_part_set @ptr, "left", l
|
111
|
-
Native.elm_object_text_part_set @ptr, "center", c
|
112
|
-
Native.elm_object_text_part_set @ptr, "right", r
|
113
|
-
end
|
114
|
-
alias :texts= :texts_set
|
115
|
-
def indicator_set str
|
116
|
-
p = self.class.as_pos
|
117
|
-
v = (
|
118
|
-
case str
|
119
|
-
when 'l'
|
120
|
-
p[:elm_actionslider_left]
|
121
|
-
when 'c'
|
122
|
-
p[:elm_actionslider_center]
|
123
|
-
when 'r'
|
124
|
-
p[:elm_actionslider_right]
|
125
|
-
else
|
126
|
-
p[:elm_actionslider_none]
|
127
|
-
end
|
128
|
-
)
|
129
|
-
Native.elm_actionslider_indicator_pos_set @ptr, v
|
130
|
-
end
|
131
|
-
alias :indicator= :indicator_set
|
132
|
-
def enabled_set str
|
133
|
-
p = self.class.as_pos
|
134
|
-
v = p[:elm_actionslider_none]
|
135
|
-
v |= p[:elm_actionslider_left] if str=~/l/
|
136
|
-
v |= p[:elm_actionslider_center] if str=~/c/
|
137
|
-
v |= p[:elm_actionslider_right] if str=~/r/
|
138
|
-
v |= p[:elm_actionslider_all] if str=~/a/
|
139
|
-
Native.elm_actionslider_enabled_pos_set @ptr, v
|
140
|
-
end
|
141
|
-
alias :enabled= :enabled_set
|
142
|
-
def magnet_set str
|
143
|
-
p = self.class.as_pos
|
144
|
-
v = p[:elm_actionslider_none]
|
145
|
-
v |= p[:elm_actionslider_left] if str=~/l/
|
146
|
-
v |= p[:elm_actionslider_center] if str=~/c/
|
147
|
-
v |= p[:elm_actionslider_right] if str=~/r/
|
148
|
-
v |= p[:elm_actionslider_all] if str=~/a/
|
149
|
-
Native.elm_actionslider_magnet_pos_set @ptr, v
|
150
|
-
end
|
151
|
-
alias :magnet= :magnet_set
|
152
|
-
#
|
153
|
-
def setup t=[], i='l', m='a', e='a'
|
154
|
-
texts_set *t
|
155
|
-
indicator_set i
|
156
|
-
magnet_set m
|
157
|
-
enabled_set e
|
158
|
-
end
|
159
|
-
end
|
160
|
-
#
|
161
|
-
class ElmAnchorBlock < ElmObject
|
162
|
-
#
|
163
|
-
include Helper
|
164
|
-
constructor :elm_anchorblock_add
|
165
|
-
search_prefixes 'elm_anchorblock_'
|
166
|
-
end
|
167
|
-
#
|
168
|
-
class ElmAnchorView < ElmObject
|
169
|
-
#
|
170
|
-
include Helper
|
171
|
-
constructor :elm_anchorview_add
|
172
|
-
search_prefixes 'elm_anchorview_'
|
173
|
-
end
|
174
|
-
#
|
175
|
-
class ElmBg < ElmObject
|
176
|
-
#
|
177
|
-
include Helper
|
178
|
-
constructor :elm_bg_add
|
179
|
-
search_prefixes 'elm_bg_'
|
180
|
-
#
|
181
|
-
def file_get
|
182
|
-
f = FFI::MemoryPointer.new :pointer
|
183
|
-
g = FFI::MemoryPointer.new :pointer
|
184
|
-
Native.elm_bg_file_get @ptr, f, g
|
185
|
-
[ f.read_pointer.read_string, g.read_pointer.read_string ]
|
186
|
-
end
|
187
|
-
alias :file :file_get
|
188
|
-
def color_get
|
189
|
-
r = FFI::MemoryPointer.new :int
|
190
|
-
g = FFI::MemoryPointer.new :int
|
191
|
-
b = FFI::MemoryPointer.new :int
|
192
|
-
Native.elm_bg_color_get @ptr, r, g, b
|
193
|
-
[ r.read_int, g.read_int, b.read_int ]
|
194
|
-
end
|
195
|
-
alias :color :color_get
|
196
|
-
end
|
197
|
-
#
|
198
|
-
class ElmBox < ElmObject
|
199
|
-
#
|
200
|
-
include Helper
|
201
|
-
constructor :elm_box_add
|
202
|
-
search_prefixes 'elm_box_'
|
203
|
-
#
|
204
|
-
def padding_get
|
205
|
-
x = FFI::MemoryPointer.new :int
|
206
|
-
y = FFI::MemoryPointer.new :int
|
207
|
-
Native::elm_box_padding_get @ptr, x, y
|
208
|
-
[ x.read_int, y.read_int ]
|
209
|
-
end
|
210
|
-
alias :padding :padding_get
|
211
|
-
#
|
212
|
-
def align_get
|
213
|
-
x = FFI::MemoryPointer.new :float
|
214
|
-
y = FFI::MemoryPointer.new :float
|
215
|
-
Native::elm_box_align_get @ptr, x, y
|
216
|
-
[ x.read_float, y.read_float ]
|
217
|
-
end
|
218
|
-
alias :align :padding_get
|
219
|
-
#
|
220
|
-
def children_get
|
221
|
-
Efl::EinaList::REinaList.new Native.elm_box_children_get @ptr
|
222
|
-
end
|
223
|
-
alias :children :children_get
|
224
|
-
end
|
225
|
-
#
|
226
|
-
class ElmBubble < ElmObject
|
227
|
-
#
|
228
|
-
include Helper
|
229
|
-
constructor :elm_bubble_add
|
230
|
-
search_prefixes 'elm_bubble_'
|
231
|
-
end
|
232
|
-
#
|
233
|
-
class ElmButton < ElmObject
|
234
|
-
#
|
235
|
-
include Helper
|
236
|
-
constructor :elm_button_add
|
237
|
-
search_prefixes 'elm_button_'
|
238
|
-
#
|
239
|
-
end
|
240
|
-
#
|
241
|
-
class ElmCalendar < ElmObject
|
242
|
-
#
|
243
|
-
include Helper
|
244
|
-
constructor :elm_calendar_add
|
245
|
-
search_prefixes 'elm_calendar_'
|
246
|
-
#
|
247
|
-
end
|
248
|
-
#
|
249
|
-
class ElmCheck < ElmObject
|
250
|
-
#
|
251
|
-
include Helper
|
252
|
-
constructor :elm_check_add
|
253
|
-
search_prefixes 'elm_check_'
|
254
|
-
#
|
255
|
-
end
|
256
|
-
#
|
257
|
-
class ElmClock < ElmObject
|
258
|
-
#
|
259
|
-
include Helper
|
260
|
-
constructor :elm_clock_add
|
261
|
-
search_prefixes 'elm_clock_'
|
262
|
-
end
|
263
|
-
#
|
264
|
-
class ElmColorSelector < ElmObject
|
265
|
-
#
|
266
|
-
include Helper
|
267
|
-
constructor :elm_colorselector_add
|
268
|
-
search_prefixes 'elm_colorselector_'
|
269
|
-
#
|
270
|
-
end
|
271
|
-
#
|
272
|
-
class ElmDiskSelector < ElmObject
|
273
|
-
#
|
274
|
-
include Helper
|
275
|
-
constructor :elm_diskselector_add
|
276
|
-
search_prefixes 'elm_diskselector_'
|
277
|
-
#
|
278
|
-
def item_selected_set it, b
|
279
|
-
Native::elm_diskselector_item_selected_set it, b
|
280
|
-
end
|
281
|
-
alias :item_selected= :item_selected_set
|
282
|
-
end
|
283
|
-
#
|
284
|
-
class ElmDiskSelectorItem < ElmObject
|
285
|
-
#
|
286
|
-
search_prefixes 'elm_diskselector_item_'
|
287
|
-
#
|
288
|
-
def data_get
|
289
|
-
Native::elm_diskselector_item_data_get @ptr
|
290
|
-
end
|
291
|
-
alias :data :data_get
|
292
|
-
end
|
293
|
-
#
|
294
|
-
class ElmEntry < ElmObject
|
295
|
-
#
|
296
|
-
include Helper
|
297
|
-
constructor :elm_entry_add
|
298
|
-
search_prefixes 'elm_entry_'
|
299
|
-
#
|
300
|
-
end
|
301
|
-
#
|
302
|
-
class ElmFileSelector < ElmObject
|
303
|
-
#
|
304
|
-
include Helper
|
305
|
-
constructor :elm_fileselector_add
|
306
|
-
search_prefixes 'elm_fileselector_'
|
307
|
-
end
|
308
|
-
#
|
309
|
-
class ElmFileSelectorButton < ElmObject
|
310
|
-
#
|
311
|
-
include Helper
|
312
|
-
constructor :elm_fileselector_button_add
|
313
|
-
search_prefixes 'elm_fileselector_button_'
|
314
|
-
end
|
315
|
-
#
|
316
|
-
class ElmFileSelectorENtry < ElmObject
|
317
|
-
#
|
318
|
-
include Helper
|
319
|
-
constructor :elm_fileselector_entry_add
|
320
|
-
search_prefixes 'elm_fileselector_entry_'
|
321
|
-
end
|
322
|
-
#
|
323
|
-
class ElmFlip < ElmObject
|
324
|
-
#
|
325
|
-
include Helper
|
326
|
-
constructor :elm_flip_add
|
327
|
-
search_prefixes 'elm_flip_'
|
328
|
-
end
|
329
|
-
#
|
330
|
-
class ElmFlipSelector < ElmObject
|
331
|
-
#
|
332
|
-
include Helper
|
333
|
-
constructor :elm_flipselector_add
|
334
|
-
search_prefixes 'elm_flipselector_'
|
335
|
-
#
|
336
|
-
def item_append label, cb, data
|
337
|
-
ElmFlipSelectorItem.new Native::elm_flipselector_item_append @ptr, label, cb, data
|
338
|
-
end
|
339
|
-
#
|
340
|
-
def selected_item_get
|
341
|
-
ElmFlipSelectorItem.new Native::elm_flipselector_selected_item_get @ptr
|
342
|
-
end
|
343
|
-
alias :selected_item :selected_item_get
|
344
|
-
end
|
345
|
-
#
|
346
|
-
class ElmFlipSelectorItem < ElmObject
|
347
|
-
#
|
348
|
-
search_prefixes 'elm_flipselector_item_'
|
349
|
-
#
|
350
|
-
end
|
351
|
-
#
|
352
|
-
class ElmFrame < ElmObject
|
353
|
-
#
|
354
|
-
include Helper
|
355
|
-
constructor :elm_frame_add
|
356
|
-
search_prefixes 'elm_frame_'
|
357
|
-
end
|
358
|
-
#
|
359
|
-
class ElmGenGrid < ElmObject
|
360
|
-
#
|
361
|
-
include Helper
|
362
|
-
constructor :elm_gengrid_add
|
363
|
-
search_prefixes 'elm_gengrid_'
|
364
|
-
end
|
365
|
-
#
|
366
|
-
class ElmGenList < ElmObject
|
367
|
-
#
|
368
|
-
include Helper
|
369
|
-
constructor :elm_genlist_add
|
370
|
-
search_prefixes 'elm_genlist_'
|
371
|
-
#
|
372
|
-
end
|
373
|
-
#
|
374
|
-
class ElmGestureLayer < ElmObject
|
375
|
-
#
|
376
|
-
include Helper
|
377
|
-
constructor :elm_gesture_layer_add
|
378
|
-
search_prefixes 'elm_gesture_layer_'
|
379
|
-
end
|
380
|
-
#
|
381
|
-
class ElmGlView < ElmObject
|
382
|
-
#
|
383
|
-
include Helper
|
384
|
-
constructor :elm_glview_add
|
385
|
-
search_prefixes 'elm_glview_'
|
386
|
-
#
|
387
|
-
end
|
388
|
-
#
|
389
|
-
class ElmGrid < ElmObject
|
390
|
-
#
|
391
|
-
include Helper
|
392
|
-
constructor :elm_grid_add
|
393
|
-
search_prefixes 'elm_grid_'
|
394
|
-
#
|
395
|
-
end
|
396
|
-
#
|
397
|
-
class ElmHover < ElmObject
|
398
|
-
#
|
399
|
-
include Helper
|
400
|
-
constructor :elm_hover_add
|
401
|
-
search_prefixes 'elm_hover_'
|
402
|
-
#
|
403
|
-
end
|
404
|
-
#
|
405
|
-
class ElmHoverSel < ElmObject
|
406
|
-
#
|
407
|
-
include Helper
|
408
|
-
constructor :elm_hoversel_add
|
409
|
-
search_prefixes 'elm_hoversel_'
|
410
|
-
#
|
411
|
-
def item_add label, icon_file=nil, icon_type=:elm_icon_none, cb=nil, data=nil
|
412
|
-
ElmHoverselItem.new Native::elm_hoversel_item_add @ptr, label, icon_file, icon_type, cb, data
|
413
|
-
end
|
414
|
-
end
|
415
|
-
#
|
416
|
-
class ElmHoverSelItem < ElmObject
|
417
|
-
#
|
418
|
-
search_prefixes 'elm_hoversel_item_'
|
419
|
-
#
|
420
|
-
end
|
421
|
-
#
|
422
|
-
class ElmIcon < ElmObject
|
423
|
-
#
|
424
|
-
include Helper
|
425
|
-
constructor :elm_icon_add
|
426
|
-
search_prefixes 'elm_icon_'
|
427
|
-
#
|
428
|
-
def scale_set args
|
429
|
-
Native.elm_icon_scale_set @ptr, *args
|
430
|
-
end
|
431
|
-
alias :scale= :scale_set
|
432
|
-
end
|
433
|
-
#
|
434
|
-
class ElmImage < ElmObject
|
435
|
-
#
|
436
|
-
include Helper
|
437
|
-
constructor :elm_image_add
|
438
|
-
search_prefixes 'elm_image_'
|
439
|
-
#
|
440
|
-
end
|
441
|
-
#
|
442
|
-
class ElmIndex < ElmObject
|
443
|
-
#
|
444
|
-
include Helper
|
445
|
-
constructor :elm_index_add
|
446
|
-
search_prefixes 'elm_index_'
|
447
|
-
#
|
448
|
-
end
|
449
|
-
#
|
450
|
-
class ElmInWin < ElmObject
|
451
|
-
#
|
452
|
-
search_prefixes 'elm_win_inwin_', 'elm_win_'
|
453
|
-
#
|
454
|
-
def initialize parent, &block
|
455
|
-
super Native.method(:elm_win_inwin_add), parent, &block
|
456
|
-
end
|
457
|
-
#
|
458
|
-
end
|
459
|
-
#
|
460
|
-
class ElmLabel < ElmObject
|
461
|
-
#
|
462
|
-
include Helper
|
463
|
-
constructor :elm_label_add
|
464
|
-
search_prefixes 'elm_label_'
|
465
|
-
#
|
466
|
-
end
|
467
|
-
#
|
468
|
-
class ElmLayout < ElmObject
|
469
|
-
#
|
470
|
-
include Helper
|
471
|
-
constructor :elm_layout_add
|
472
|
-
search_prefixes 'elm_layout_'
|
473
|
-
#
|
474
|
-
def edje_get &block
|
475
|
-
Efl::Edje::REdje.new Native.method(:elm_layout_edje_get), @ptr, &block
|
476
|
-
end
|
477
|
-
alias :edje :edje_get
|
478
|
-
end
|
479
|
-
#
|
480
|
-
class ElmList < ElmObject
|
481
|
-
#
|
482
|
-
include Helper
|
483
|
-
constructor :elm_list_add
|
484
|
-
search_prefixes 'elm_list_'
|
485
|
-
#
|
486
|
-
def item_append label, left_icon=nil, right_icon=nil, cb=nil, data=nil
|
487
|
-
ElmListItem.new Native::elm_list_item_append @ptr, label, left_icon, right_icon, cb, data
|
488
|
-
end
|
489
|
-
end
|
490
|
-
#
|
491
|
-
class ElmListItem < ElmObject
|
492
|
-
#
|
493
|
-
search_prefixes 'elm_list_item_'
|
494
|
-
#
|
495
|
-
def data_get
|
496
|
-
Native::elm_list_item_data_get @ptr
|
497
|
-
end
|
498
|
-
alias :data :data_get
|
499
|
-
end
|
500
|
-
#
|
501
|
-
class ElmMenu < ElmObject
|
502
|
-
#
|
503
|
-
include Helper
|
504
|
-
constructor :elm_menu_add
|
505
|
-
search_prefixes 'elm_menu_'
|
506
|
-
#
|
507
|
-
end
|
508
|
-
#
|
509
|
-
class ElmMenuItem < ElmObject
|
510
|
-
#
|
511
|
-
include Helper
|
512
|
-
constructor :elm_menu_item_add
|
513
|
-
search_prefixes 'elm_menu_item_'
|
514
|
-
#
|
515
|
-
end
|
516
|
-
#
|
517
|
-
class ElmMenuItemSeparator < ElmObject
|
518
|
-
#
|
519
|
-
include Helper
|
520
|
-
constructor :elm_menu_item_separator_add
|
521
|
-
search_prefixes 'elm_menu_item_separator_'
|
522
|
-
#
|
523
|
-
end
|
524
|
-
#
|
525
|
-
class ElmNaviFrame < ElmObject
|
526
|
-
#
|
527
|
-
include Helper
|
528
|
-
constructor :elm_naviframe_add
|
529
|
-
search_prefixes 'elm_naviframe_'
|
530
|
-
#
|
531
|
-
end
|
532
|
-
#
|
533
|
-
class ElmNotify < ElmObject
|
534
|
-
#
|
535
|
-
include Helper
|
536
|
-
constructor :elm_notify_add
|
537
|
-
search_prefixes 'elm_notify_'
|
538
|
-
#
|
539
|
-
end
|
540
|
-
#
|
541
|
-
class ElmPager < ElmObject
|
542
|
-
#
|
543
|
-
include Helper
|
544
|
-
constructor :elm_pager_add
|
545
|
-
search_prefixes 'elm_pager_'
|
546
|
-
#
|
547
|
-
end
|
548
|
-
#
|
549
|
-
class ElmPanel < ElmObject
|
550
|
-
#
|
551
|
-
include Helper
|
552
|
-
constructor :elm_panel_add
|
553
|
-
search_prefixes 'elm_panel_'
|
554
|
-
#
|
555
|
-
end
|
556
|
-
#
|
557
|
-
class ElmPanes < ElmObject
|
558
|
-
#
|
559
|
-
include Helper
|
560
|
-
constructor :elm_panes_add
|
561
|
-
search_prefixes 'elm_panes_'
|
562
|
-
#
|
563
|
-
end
|
564
|
-
#
|
565
|
-
class ElmPlayer < ElmObject
|
566
|
-
#
|
567
|
-
include Helper
|
568
|
-
constructor :elm_player_add
|
569
|
-
search_prefixes 'elm_player_'
|
570
|
-
#
|
571
|
-
end
|
572
|
-
#
|
573
|
-
class ElmPhoto < ElmObject
|
574
|
-
#
|
575
|
-
include Helper
|
576
|
-
constructor :elm_photo_add
|
577
|
-
search_prefixes 'elm_photo_'
|
578
|
-
end
|
579
|
-
#
|
580
|
-
class ElmPhotoCam < ElmObject
|
581
|
-
#
|
582
|
-
include Helper
|
583
|
-
constructor :elm_photocam_add
|
584
|
-
search_prefixes 'elm_photocam_'
|
585
|
-
end
|
586
|
-
#
|
587
|
-
class ElmProgressBar < ElmObject
|
588
|
-
#
|
589
|
-
include Helper
|
590
|
-
constructor :elm_progressbar_add
|
591
|
-
search_prefixes 'elm_progressbar_'
|
592
|
-
end
|
593
|
-
#
|
594
|
-
class ElmRadio < ElmObject
|
595
|
-
#
|
596
|
-
include Helper
|
597
|
-
constructor :elm_radio_add
|
598
|
-
search_prefixes 'elm_radio_'
|
599
|
-
#
|
600
|
-
end
|
601
|
-
#
|
602
|
-
class ElmScroller < ElmObject
|
603
|
-
#
|
604
|
-
include Helper
|
605
|
-
constructor :elm_scroller_add
|
606
|
-
search_prefixes 'elm_scroller_'
|
607
|
-
#
|
608
|
-
end
|
609
|
-
#
|
610
|
-
class ElmSeparator < ElmObject
|
611
|
-
#
|
612
|
-
include Helper
|
613
|
-
constructor :elm_separator_add
|
614
|
-
search_prefixes 'elm_separator_'
|
615
|
-
#
|
616
|
-
end
|
617
|
-
#
|
618
|
-
class ElmSlider < ElmObject
|
619
|
-
#
|
620
|
-
include Helper
|
621
|
-
constructor :elm_slider_add
|
622
|
-
search_prefixes 'elm_slider_'
|
623
|
-
#
|
624
|
-
end
|
625
|
-
#
|
626
|
-
class ElmSlideshow < ElmObject
|
627
|
-
#
|
628
|
-
include Helper
|
629
|
-
constructor :elm_slideshow_add
|
630
|
-
search_prefixes 'elm_slideshow_'
|
631
|
-
#
|
632
|
-
end
|
633
|
-
#
|
634
|
-
class ElmSpinner < ElmObject
|
635
|
-
#
|
636
|
-
include Helper
|
637
|
-
constructor :elm_spinner_add
|
638
|
-
search_prefixes 'elm_spinner_'
|
639
|
-
#
|
640
|
-
end
|
641
|
-
#
|
642
|
-
class ElmTable < ElmObject
|
643
|
-
#
|
644
|
-
include Helper
|
645
|
-
constructor :elm_table_add
|
646
|
-
search_prefixes 'elm_table_'
|
647
|
-
end
|
648
|
-
#
|
649
|
-
class ElmThumb < ElmObject
|
650
|
-
#
|
651
|
-
include Helper
|
652
|
-
constructor :elm_thumb_add
|
653
|
-
search_prefixes 'elm_thumb_'
|
654
|
-
end
|
655
|
-
#
|
656
|
-
class ElmToolbar < ElmObject
|
657
|
-
#
|
658
|
-
include Helper
|
659
|
-
constructor :elm_toolbar_add
|
660
|
-
search_prefixes 'elm_toolbar_'
|
661
|
-
end
|
662
|
-
#
|
663
|
-
class ElmVideo < ElmObject
|
664
|
-
#
|
665
|
-
include Helper
|
666
|
-
constructor :elm_video_add
|
667
|
-
search_prefixes 'elm_video_'
|
668
|
-
end
|
669
|
-
#
|
670
|
-
class ElmWin < ElmObject
|
671
|
-
#
|
672
|
-
search_prefixes 'elm_win_'
|
673
|
-
#
|
674
|
-
def initialize parent, title, type=:elm_win_basic, &block
|
675
|
-
super Native.method(:elm_win_add), parent, title, type, &block
|
676
|
-
end
|
677
|
-
def inwin_add
|
678
|
-
ElmInWin.new @ptr
|
679
|
-
end
|
680
|
-
def screen_position_get
|
681
|
-
x = FFI::MemoryPointer.new :int
|
682
|
-
y = FFI::MemoryPointer.new :int
|
683
|
-
Native.elm_win_screen_position_get @ptr, x, y
|
684
|
-
[ x.read_int, y.read_int ]
|
685
|
-
end
|
686
|
-
alias :screen_position :screen_position_get
|
687
|
-
end
|
688
|
-
#
|
689
27
|
end
|
690
28
|
end
|
691
29
|
#
|