ffi-efl 0.0.15 → 0.0.16
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 +8 -1
- data/README.md +9 -7
- data/Rakefile +6 -1
- data/lib/efl.rb +1 -1
- data/lib/efl/native/efreet.rb +46 -0
- data/lib/efl/native/efreet_base.rb +51 -0
- data/lib/efl/native/efreet_desktop.rb +112 -0
- data/lib/efl/native/efreet_icon.rb +77 -0
- data/lib/efl/native/efreet_ini.rb +68 -0
- data/lib/efl/native/efreet_menu.rb +61 -0
- data/lib/efl/native/efreet_mime.rb +52 -0
- data/lib/efl/native/efreet_trash.rb +48 -0
- data/lib/efl/native/efreet_uri.rb +42 -0
- data/lib/efl/native/efreet_utils.rb +61 -0
- data/lib/efl/native/eina_file.rb +91 -0
- data/lib/efl/native/eio.rb +221 -0
- data/lib/efl/native/embryo.rb +129 -0
- data/tools/extract-api.sh +14 -1
- data/tools/genruby.rb +44 -81
- metadata +22 -24
data/Changelog
CHANGED
@@ -1,6 +1,13 @@
|
|
1
|
-
2012-
|
1
|
+
2012-12-21 Jérémy Zurcher <jeremy@asynk.ch>
|
2
|
+
* release 0.0.16
|
3
|
+
* add eina_file native binding
|
4
|
+
* add eio native binding
|
5
|
+
* add efreet native binding
|
6
|
+
|
7
|
+
2012-11-29 Jérémy Zurcher <jeremy@asynk.ch>
|
2
8
|
* release 0.0.15
|
3
9
|
* add ethumb ethumb_client and ethumb_plugin
|
10
|
+
* spec fixes and various API updates
|
4
11
|
|
5
12
|
2012-07-10 Jérémy Zurcher <jeremy@asynk.ch>
|
6
13
|
* release 0.0.14
|
data/README.md
CHANGED
@@ -4,12 +4,13 @@
|
|
4
4
|
|
5
5
|
## DESCRIPTION:
|
6
6
|
|
7
|
-
A ruby
|
7
|
+
A ruby ffi binding to [efl](http://www.enlightenment.org/p.php?p=docs&l=en) libraries (Enlightenment Foundation Libraries).
|
8
8
|
|
9
9
|
## FEATURES/PROBLEMS:
|
10
10
|
|
11
|
-
*
|
12
|
-
*
|
11
|
+
* support ruby 1.9.x NOT 1.8.x
|
12
|
+
* support efl 1.7.3, NOT dev branch 1.8.x
|
13
|
+
* binding is almost complete but lacks high level ruby code and tests
|
13
14
|
|
14
15
|
## SYNOPSIS:
|
15
16
|
|
@@ -61,12 +62,13 @@ A ruby-ffi binding to [efl](http://www.enlightenment.org/p.php?p=docs&l=en) libr
|
|
61
62
|
|
62
63
|
For more examples you may look at:
|
63
64
|
|
64
|
-
* the [
|
65
|
+
* the [test/](https://github.com/jeremyz/ffi-efl/tree/master/test) and [spec/](https://github.com/jeremyz/ffi-efl/tree/master/spec) subdirs
|
65
66
|
|
66
67
|
## REQUIREMENTS:
|
67
68
|
|
68
69
|
* You need a sane enlightenment foundation libraries installation,
|
69
|
-
for this you might like to use [
|
70
|
+
for this you might like to use [build_efl_stable.sh](https://github.com/jeremyz/bin/blob/master/build_efl_stable.sh).
|
71
|
+
or the heavy metal [easy_e17.sh](http://omicron.homeip.net/projects/#easy_e17.sh),
|
70
72
|
or my git aware fork [easy_e17.sh](https://github.com/jeremyz/bin/blob/master/easy_e17.sh).
|
71
73
|
|
72
74
|
## DOWNLOAD/INSTALL:
|
@@ -79,7 +81,7 @@ or from the git repository on github:
|
|
79
81
|
|
80
82
|
git clone git://github.com/jeremyz/ffi-efl.git
|
81
83
|
cd ffi-efl
|
82
|
-
rake
|
84
|
+
rake install
|
83
85
|
|
84
86
|
## RESOURCES:
|
85
87
|
|
@@ -88,7 +90,7 @@ You can find this project in a few places:
|
|
88
90
|
Online repositories:
|
89
91
|
|
90
92
|
* https://github.com/jeremyz/ffi-efl
|
91
|
-
* http://cgit.asynk.ch/
|
93
|
+
* http://cgit.asynk.ch/ffi-efl/
|
92
94
|
|
93
95
|
Gem:
|
94
96
|
|
data/Rakefile
CHANGED
@@ -1,6 +1,11 @@
|
|
1
1
|
require 'bundler/gem_tasks'
|
2
2
|
|
3
|
-
|
3
|
+
begin
|
4
|
+
require 'rspec/core/rake_task'
|
5
|
+
rescue LoadError
|
6
|
+
puts "missing bundler gem, you should\n$ gem install bundler"
|
7
|
+
exit 1
|
8
|
+
end
|
4
9
|
RSpec::Core::RakeTask.new
|
5
10
|
|
6
11
|
task :default => :spec
|
data/lib/efl.rb
CHANGED
@@ -0,0 +1,46 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
# -*- coding: UTF-8 -*-
|
3
|
+
#
|
4
|
+
require 'efl/native'
|
5
|
+
#
|
6
|
+
module Efl
|
7
|
+
#
|
8
|
+
module Efreet
|
9
|
+
#
|
10
|
+
FCT_PREFIX = 'efreet_' unless const_defined? :FCT_PREFIX
|
11
|
+
#
|
12
|
+
def self.method_missing meth, *args, &block
|
13
|
+
sym = Efl::MethodResolver.resolve self, meth, FCT_PREFIX
|
14
|
+
self.send sym, *args, &block
|
15
|
+
end
|
16
|
+
#
|
17
|
+
end
|
18
|
+
#
|
19
|
+
module Native
|
20
|
+
#
|
21
|
+
ffi_lib 'efreet'
|
22
|
+
#
|
23
|
+
# TYPEDEFS
|
24
|
+
# typedef struct _Efreet_Version Efreet_Version;
|
25
|
+
typedef :pointer, :efreet_version
|
26
|
+
#
|
27
|
+
# VARIABLES
|
28
|
+
# EAPI extern Efreet_Version *efreet_version;
|
29
|
+
attach_variable :efreet_version, :efreet_version
|
30
|
+
#
|
31
|
+
# FUNCTIONS
|
32
|
+
fcts = [
|
33
|
+
# EAPI int efreet_init(void);
|
34
|
+
[ :efreet_init, [ ], :int ],
|
35
|
+
# EAPI int efreet_shutdown(void);
|
36
|
+
[ :efreet_shutdown, [ ], :int ],
|
37
|
+
# EAPI void efreet_lang_reset(void);
|
38
|
+
[ :efreet_lang_reset, [ ], :void ],
|
39
|
+
]
|
40
|
+
#
|
41
|
+
attach_fcts fcts
|
42
|
+
#
|
43
|
+
end
|
44
|
+
end
|
45
|
+
#
|
46
|
+
# EOF
|
@@ -0,0 +1,51 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
# -*- coding: UTF-8 -*-
|
3
|
+
#
|
4
|
+
require 'efl/native'
|
5
|
+
require 'efl/native/eina_list'
|
6
|
+
#
|
7
|
+
module Efl
|
8
|
+
#
|
9
|
+
module EfreetBase
|
10
|
+
#
|
11
|
+
FCT_PREFIX = 'efreet_base_' unless const_defined? :FCT_PREFIX
|
12
|
+
#
|
13
|
+
def self.method_missing meth, *args, &block
|
14
|
+
sym = Efl::MethodResolver.resolve self, meth, FCT_PREFIX
|
15
|
+
self.send sym, *args, &block
|
16
|
+
end
|
17
|
+
#
|
18
|
+
end
|
19
|
+
#
|
20
|
+
module Native
|
21
|
+
#
|
22
|
+
ffi_lib 'efreet'
|
23
|
+
#
|
24
|
+
# TYPEDEFS
|
25
|
+
# typedef struct _Efreet_Event_Cache_Update Efreet_Event_Cache_Update;
|
26
|
+
typedef :pointer, :efreet_event_cache_update
|
27
|
+
#
|
28
|
+
# FUNCTIONS
|
29
|
+
fcts = [
|
30
|
+
# EAPI const char *efreet_data_home_get(void);
|
31
|
+
[ :efreet_data_home_get, [ ], :string ],
|
32
|
+
# EAPI Eina_List *efreet_data_dirs_get(void);
|
33
|
+
[ :efreet_data_dirs_get, [ ], :eina_list ],
|
34
|
+
# EAPI const char *efreet_config_home_get(void);
|
35
|
+
[ :efreet_config_home_get, [ ], :string ],
|
36
|
+
# EAPI const char *efreet_desktop_dir_get(void);
|
37
|
+
[ :efreet_desktop_dir_get, [ ], :string ],
|
38
|
+
# EAPI Eina_List *efreet_config_dirs_get(void);
|
39
|
+
[ :efreet_config_dirs_get, [ ], :eina_list ],
|
40
|
+
# EAPI const char *efreet_cache_home_get(void);
|
41
|
+
[ :efreet_cache_home_get, [ ], :string ],
|
42
|
+
# EAPI const char *efreet_hostname_get(void);
|
43
|
+
[ :efreet_hostname_get, [ ], :string ],
|
44
|
+
]
|
45
|
+
#
|
46
|
+
attach_fcts fcts
|
47
|
+
#
|
48
|
+
end
|
49
|
+
end
|
50
|
+
#
|
51
|
+
# EOF
|
@@ -0,0 +1,112 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
# -*- coding: UTF-8 -*-
|
3
|
+
#
|
4
|
+
require 'efl/native'
|
5
|
+
require 'efl/native/eina_list'
|
6
|
+
#
|
7
|
+
module Efl
|
8
|
+
#
|
9
|
+
module EfreetDesktop
|
10
|
+
#
|
11
|
+
FCT_PREFIX = 'efreet_desktop_' unless const_defined? :FCT_PREFIX
|
12
|
+
#
|
13
|
+
def self.method_missing meth, *args, &block
|
14
|
+
sym = Efl::MethodResolver.resolve self, meth, FCT_PREFIX
|
15
|
+
self.send sym, *args, &block
|
16
|
+
end
|
17
|
+
#
|
18
|
+
end
|
19
|
+
#
|
20
|
+
module Native
|
21
|
+
#
|
22
|
+
ffi_lib 'efreet'
|
23
|
+
#
|
24
|
+
# TYPEDEFS
|
25
|
+
# typedef struct _Efreet_Desktop Efreet_Desktop;
|
26
|
+
typedef :pointer, :efreet_desktop
|
27
|
+
#
|
28
|
+
# CALLBACKS
|
29
|
+
# typedef void *(*Efreet_Desktop_Command_Cb) (void *data, Efreet_Desktop *desktop, char *command, int remaining);
|
30
|
+
callback :efreet_desktop_command_cb, [ :pointer, :efreet_desktop, :string, :int ], :pointer
|
31
|
+
# typedef int (*Efreet_Desktop_Progress_Cb) (void *data, Efreet_Desktop *desktop, char *uri, long int total, long int current);
|
32
|
+
callback :efreet_desktop_progress_cb, [ :pointer, :efreet_desktop, :string, :long, :long ], :int
|
33
|
+
# typedef void *(*Efreet_Desktop_Type_Parse_Cb) (Efreet_Desktop *desktop, Efreet_Ini *ini);
|
34
|
+
callback :efreet_desktop_type_parse_cb, [ :efreet_desktop, :pointer ], :pointer
|
35
|
+
# typedef void (*Efreet_Desktop_Type_Save_Cb) (Efreet_Desktop *desktop, Efreet_Ini *ini);
|
36
|
+
callback :efreet_desktop_type_save_cb, [ :efreet_desktop, :pointer ], :void
|
37
|
+
# typedef void *(*Efreet_Desktop_Type_Free_Cb) (void *data);
|
38
|
+
callback :efreet_desktop_type_free_cb, [ :pointer ], :pointer
|
39
|
+
#
|
40
|
+
# VARIABLES
|
41
|
+
# EAPI extern int EFREET_DESKTOP_TYPE_APPLICATION;
|
42
|
+
attach_variable :EFREET_DESKTOP_TYPE_APPLICATION, :int
|
43
|
+
# EAPI extern int EFREET_DESKTOP_TYPE_LINK;
|
44
|
+
attach_variable :EFREET_DESKTOP_TYPE_LINK, :int
|
45
|
+
# EAPI extern int EFREET_DESKTOP_TYPE_DIRECTORY;
|
46
|
+
attach_variable :EFREET_DESKTOP_TYPE_DIRECTORY, :int
|
47
|
+
# EAPI extern int EFREET_EVENT_DESKTOP_CACHE_UPDATE;
|
48
|
+
attach_variable :EFREET_EVENT_DESKTOP_CACHE_UPDATE, :int
|
49
|
+
# EAPI extern int EFREET_EVENT_DESKTOP_CACHE_BUILD;
|
50
|
+
attach_variable :EFREET_EVENT_DESKTOP_CACHE_BUILD, :int
|
51
|
+
#
|
52
|
+
# FUNCTIONS
|
53
|
+
fcts = [
|
54
|
+
# EAPI Efreet_Desktop *efreet_desktop_get(const char *file);
|
55
|
+
[ :efreet_desktop_get, [ :string ], :efreet_desktop ],
|
56
|
+
# EAPI int efreet_desktop_ref(Efreet_Desktop *desktop);
|
57
|
+
[ :efreet_desktop_ref, [ :efreet_desktop ], :int ],
|
58
|
+
# EAPI Efreet_Desktop *efreet_desktop_empty_new(const char *file);
|
59
|
+
[ :efreet_desktop_empty_new, [ :string ], :efreet_desktop ],
|
60
|
+
# EAPI Efreet_Desktop *efreet_desktop_new(const char *file);
|
61
|
+
[ :efreet_desktop_new, [ :string ], :efreet_desktop ],
|
62
|
+
# EAPI Efreet_Desktop *efreet_desktop_uncached_new(const char *file);
|
63
|
+
[ :efreet_desktop_uncached_new, [ :string ], :efreet_desktop ],
|
64
|
+
# EAPI void efreet_desktop_free(Efreet_Desktop *desktop);
|
65
|
+
[ :efreet_desktop_free, [ :efreet_desktop ], :void ],
|
66
|
+
# EAPI int efreet_desktop_save(Efreet_Desktop *desktop);
|
67
|
+
[ :efreet_desktop_save, [ :efreet_desktop ], :int ],
|
68
|
+
# EAPI int efreet_desktop_save_as(Efreet_Desktop *desktop, const char *file);
|
69
|
+
[ :efreet_desktop_save_as, [ :efreet_desktop, :string ], :int ],
|
70
|
+
# EAPI void efreet_desktop_exec(Efreet_Desktop *desktop, Eina_List *files, void *data);
|
71
|
+
[ :efreet_desktop_exec, [ :efreet_desktop, :eina_list, :pointer ], :void ],
|
72
|
+
# EAPI void efreet_desktop_environment_set(const char *environment);
|
73
|
+
[ :efreet_desktop_environment_set, [ :string ], :void ],
|
74
|
+
# EAPI const char *efreet_desktop_environment_get(void);
|
75
|
+
[ :efreet_desktop_environment_get, [ ], :string ],
|
76
|
+
# EAPI void *efreet_desktop_command_progress_get(Efreet_Desktop *desktop, Eina_List *files, Efreet_Desktop_Command_Cb cb_command, Efreet_Desktop_Progress_Cb cb_prog, void *data);
|
77
|
+
[ :efreet_desktop_command_progress_get, [ :efreet_desktop, :eina_list, :efreet_desktop_command_cb, :efreet_desktop_progress_cb, :pointer ],
|
78
|
+
:pointer ],
|
79
|
+
# EAPI void *efreet_desktop_command_get(Efreet_Desktop *desktop, Eina_List *files, Efreet_Desktop_Command_Cb func, void *data);
|
80
|
+
[ :efreet_desktop_command_get, [ :efreet_desktop, :eina_list, :efreet_desktop_command_cb, :pointer ], :pointer ],
|
81
|
+
# EAPI Eina_List * efreet_desktop_command_local_get(Efreet_Desktop *desktop, Eina_List *files);
|
82
|
+
[ :efreet_desktop_command_local_get, [ :efreet_desktop, :eina_list ], :eina_list ],
|
83
|
+
# EAPI unsigned int efreet_desktop_category_count_get(Efreet_Desktop *desktop);
|
84
|
+
[ :efreet_desktop_category_count_get, [ :efreet_desktop ], :uint ],
|
85
|
+
# EAPI void efreet_desktop_category_add(Efreet_Desktop *desktop, const char *category);
|
86
|
+
[ :efreet_desktop_category_add, [ :efreet_desktop, :string ], :void ],
|
87
|
+
# EAPI int efreet_desktop_category_del(Efreet_Desktop *desktop, const char *category);
|
88
|
+
[ :efreet_desktop_category_del, [ :efreet_desktop, :string ], :int ],
|
89
|
+
# EAPI int efreet_desktop_type_add(const char *type, Efreet_Desktop_Type_Parse_Cb parse_func, Efreet_Desktop_Type_Save_Cb save_func, Efreet_Desktop_Type_Free_Cb free_func);
|
90
|
+
[ :efreet_desktop_type_add, [ :string, :efreet_desktop_type_parse_cb, :efreet_desktop_type_save_cb, :efreet_desktop_type_free_cb ], :int ],
|
91
|
+
# EAPI int efreet_desktop_type_alias (int from_type, const char *alias);
|
92
|
+
[ :efreet_desktop_type_alias, [ :int, :string ], :int ],
|
93
|
+
# EAPI void *efreet_desktop_type_data_get(Efreet_Desktop *desktop);
|
94
|
+
[ :efreet_desktop_type_data_get, [ :efreet_desktop ], :pointer ],
|
95
|
+
# EAPI Eina_List *efreet_desktop_string_list_parse(const char *string);
|
96
|
+
[ :efreet_desktop_string_list_parse, [ :string ], :eina_list ],
|
97
|
+
# EAPI char *efreet_desktop_string_list_join(Eina_List *list);
|
98
|
+
[ :efreet_desktop_string_list_join, [ :eina_list ], :string ],
|
99
|
+
# EAPI Eina_Bool efreet_desktop_x_field_set(Efreet_Desktop *desktop, const char *key, const char *data);
|
100
|
+
[ :efreet_desktop_x_field_set, [ :efreet_desktop, :string, :string ], :bool ],
|
101
|
+
# EAPI const char * efreet_desktop_x_field_get(Efreet_Desktop *desktop, const char *key);
|
102
|
+
[ :efreet_desktop_x_field_get, [ :efreet_desktop, :string ], :string ],
|
103
|
+
# EAPI Eina_Bool efreet_desktop_x_field_del(Efreet_Desktop *desktop, const char *key);
|
104
|
+
[ :efreet_desktop_x_field_del, [ :efreet_desktop, :string ], :bool ],
|
105
|
+
]
|
106
|
+
#
|
107
|
+
attach_fcts fcts
|
108
|
+
#
|
109
|
+
end
|
110
|
+
end
|
111
|
+
#
|
112
|
+
# EOF
|
@@ -0,0 +1,77 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
# -*- coding: UTF-8 -*-
|
3
|
+
#
|
4
|
+
require 'efl/native'
|
5
|
+
require 'efl/native/eina_list'
|
6
|
+
#
|
7
|
+
module Efl
|
8
|
+
#
|
9
|
+
module EfreetIcon
|
10
|
+
#
|
11
|
+
FCT_PREFIX = 'efreet_icon_' unless const_defined? :FCT_PREFIX
|
12
|
+
#
|
13
|
+
def self.method_missing meth, *args, &block
|
14
|
+
sym = Efl::MethodResolver.resolve self, meth, FCT_PREFIX
|
15
|
+
self.send sym, *args, &block
|
16
|
+
end
|
17
|
+
#
|
18
|
+
end
|
19
|
+
#
|
20
|
+
module Native
|
21
|
+
#
|
22
|
+
ffi_lib 'efreet'
|
23
|
+
#
|
24
|
+
# ENUMS
|
25
|
+
# typedef enum Efreet_Icon_Theme_Context {...} Efreet_Icon_Theme_Context;
|
26
|
+
enum :efreet_icon_theme_context, [ :efreet_icon_theme_context_none, :efreet_icon_theme_context_actions, :efreet_icon_theme_context_devices,
|
27
|
+
:efreet_icon_theme_context_filesystems, :efreet_icon_theme_context_mimetypes ]
|
28
|
+
# typedef enum Efreet_Icon_Size_Type {...} Efreet_Icon_Size_Type;
|
29
|
+
enum :efreet_icon_size_type, [ :efreet_icon_size_type_none, :efreet_icon_size_type_fixed, :efreet_icon_size_type_scalable,
|
30
|
+
:efreet_icon_size_type_threshold ]
|
31
|
+
#
|
32
|
+
# TYPEDEFS
|
33
|
+
# typedef struct Efreet_Icon_Theme Efreet_Icon_Theme;
|
34
|
+
typedef :pointer, :efreet_icon_theme
|
35
|
+
# typedef struct Efreet_Icon_Theme_Directory Efreet_Icon_Theme_Directory;
|
36
|
+
typedef :pointer, :efreet_icon_theme_directory
|
37
|
+
# typedef struct Efreet_Icon Efreet_Icon;
|
38
|
+
typedef :pointer, :efreet_icon
|
39
|
+
# typedef struct Efreet_Icon_Point Efreet_Icon_Point;
|
40
|
+
typedef :pointer, :efreet_icon_point
|
41
|
+
#
|
42
|
+
# VARIABLES
|
43
|
+
# EAPI extern int EFREET_EVENT_ICON_CACHE_UPDATE;
|
44
|
+
attach_variable :EFREET_EVENT_ICON_CACHE_UPDATE, :int
|
45
|
+
#
|
46
|
+
# FUNCTIONS
|
47
|
+
fcts = [
|
48
|
+
# EAPI const char *efreet_icon_user_dir_get(void);
|
49
|
+
[ :efreet_icon_user_dir_get, [ ], :string ],
|
50
|
+
# EAPI const char *efreet_icon_deprecated_user_dir_get(void);
|
51
|
+
[ :efreet_icon_deprecated_user_dir_get, [ ], :string ],
|
52
|
+
# EAPI void efreet_icon_extension_add(const char *ext);
|
53
|
+
[ :efreet_icon_extension_add, [ :string ], :void ],
|
54
|
+
# EAPI Eina_List **efreet_icon_extra_list_get(void);
|
55
|
+
[ :efreet_icon_extra_list_get, [ ], :eina_list ],
|
56
|
+
# EAPI Eina_List *efreet_icon_extensions_list_get(void);
|
57
|
+
[ :efreet_icon_extensions_list_get, [ ], :eina_list ],
|
58
|
+
# EAPI Eina_List *efreet_icon_theme_list_get(void);
|
59
|
+
[ :efreet_icon_theme_list_get, [ ], :eina_list ],
|
60
|
+
# EAPI Efreet_Icon_Theme *efreet_icon_theme_find(const char *theme_name);
|
61
|
+
[ :efreet_icon_theme_find, [ :string ], :efreet_icon_theme ],
|
62
|
+
# EAPI Efreet_Icon *efreet_icon_find(const char *theme_name, const char *icon, unsigned int size);
|
63
|
+
[ :efreet_icon_find, [ :string, :string, :uint ], :efreet_icon ],
|
64
|
+
# EAPI const char *efreet_icon_list_find(const char *theme_name, Eina_List *icons, unsigned int size);
|
65
|
+
[ :efreet_icon_list_find, [ :string, :eina_list, :uint ], :string ],
|
66
|
+
# EAPI const char *efreet_icon_path_find(const char *theme_name, const char *icon, unsigned int size);
|
67
|
+
[ :efreet_icon_path_find, [ :string, :string, :uint ], :string ],
|
68
|
+
# EAPI void efreet_icon_free(Efreet_Icon *icon);
|
69
|
+
[ :efreet_icon_free, [ :efreet_icon ], :void ],
|
70
|
+
]
|
71
|
+
#
|
72
|
+
attach_fcts fcts
|
73
|
+
#
|
74
|
+
end
|
75
|
+
end
|
76
|
+
#
|
77
|
+
# EOF
|
@@ -0,0 +1,68 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
# -*- coding: UTF-8 -*-
|
3
|
+
#
|
4
|
+
require 'efl/native'
|
5
|
+
#
|
6
|
+
module Efl
|
7
|
+
#
|
8
|
+
module EfreetIni
|
9
|
+
#
|
10
|
+
FCT_PREFIX = 'efreet_ini_' unless const_defined? :FCT_PREFIX
|
11
|
+
#
|
12
|
+
def self.method_missing meth, *args, &block
|
13
|
+
sym = Efl::MethodResolver.resolve self, meth, FCT_PREFIX
|
14
|
+
self.send sym, *args, &block
|
15
|
+
end
|
16
|
+
#
|
17
|
+
end
|
18
|
+
#
|
19
|
+
module Native
|
20
|
+
#
|
21
|
+
ffi_lib 'efreet'
|
22
|
+
#
|
23
|
+
# TYPEDEFS
|
24
|
+
# typedef struct Efreet_Ini Efreet_Ini;
|
25
|
+
typedef :pointer, :efreet_ini
|
26
|
+
#
|
27
|
+
# FUNCTIONS
|
28
|
+
fcts = [
|
29
|
+
# EAPI Efreet_Ini *efreet_ini_new(const char *file);
|
30
|
+
[ :efreet_ini_new, [ :string ], :efreet_ini ],
|
31
|
+
# EAPI void efreet_ini_free(Efreet_Ini *ini);
|
32
|
+
[ :efreet_ini_free, [ :efreet_ini ], :void ],
|
33
|
+
# EAPI int efreet_ini_save(Efreet_Ini *ini, const char *path);
|
34
|
+
[ :efreet_ini_save, [ :efreet_ini, :string ], :int ],
|
35
|
+
# EAPI int efreet_ini_section_set(Efreet_Ini *ini, const char *section);
|
36
|
+
[ :efreet_ini_section_set, [ :efreet_ini, :string ], :int ],
|
37
|
+
# EAPI void efreet_ini_section_add(Efreet_Ini *ini, const char *section);
|
38
|
+
[ :efreet_ini_section_add, [ :efreet_ini, :string ], :void ],
|
39
|
+
# EAPI const char *efreet_ini_string_get(Efreet_Ini *ini, const char *key);
|
40
|
+
[ :efreet_ini_string_get, [ :efreet_ini, :string ], :string ],
|
41
|
+
# EAPI void efreet_ini_string_set(Efreet_Ini *ini, const char *key, const char *value);
|
42
|
+
[ :efreet_ini_string_set, [ :efreet_ini, :string, :string ], :void ],
|
43
|
+
# EAPI const char *efreet_ini_localestring_get(Efreet_Ini *ini, const char *key);
|
44
|
+
[ :efreet_ini_localestring_get, [ :efreet_ini, :string ], :string ],
|
45
|
+
# EAPI void efreet_ini_localestring_set(Efreet_Ini *ini, const char *key, const char *value);
|
46
|
+
[ :efreet_ini_localestring_set, [ :efreet_ini, :string, :string ], :void ],
|
47
|
+
# EAPI unsigned int efreet_ini_boolean_get(Efreet_Ini *ini, const char *key);
|
48
|
+
[ :efreet_ini_boolean_get, [ :efreet_ini, :string ], :uint ],
|
49
|
+
# EAPI void efreet_ini_boolean_set(Efreet_Ini *ini, const char *key, unsigned int value);
|
50
|
+
[ :efreet_ini_boolean_set, [ :efreet_ini, :string, :uint ], :void ],
|
51
|
+
# EAPI int efreet_ini_int_get(Efreet_Ini *ini, const char *key);
|
52
|
+
[ :efreet_ini_int_get, [ :efreet_ini, :string ], :int ],
|
53
|
+
# EAPI void efreet_ini_int_set(Efreet_Ini *ini, const char *key, int value);
|
54
|
+
[ :efreet_ini_int_set, [ :efreet_ini, :string, :int ], :void ],
|
55
|
+
# EAPI double efreet_ini_double_get(Efreet_Ini *ini, const char *key);
|
56
|
+
[ :efreet_ini_double_get, [ :efreet_ini, :string ], :double ],
|
57
|
+
# EAPI void efreet_ini_double_set(Efreet_Ini *ini, const char *key, double value);
|
58
|
+
[ :efreet_ini_double_set, [ :efreet_ini, :string, :double ], :void ],
|
59
|
+
# EAPI void efreet_ini_key_unset(Efreet_Ini *ini, const char *key);
|
60
|
+
[ :efreet_ini_key_unset, [ :efreet_ini, :string ], :void ],
|
61
|
+
]
|
62
|
+
#
|
63
|
+
attach_fcts fcts
|
64
|
+
#
|
65
|
+
end
|
66
|
+
end
|
67
|
+
#
|
68
|
+
# EOF
|