2 * Copyright (C) 2009 Michael 'Mickey' Lauer <mlauer@vanille-media.de>
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19 [CCode (cprefix = "Edje_", lower_case_cprefix = "edje_", cheader_filename = "Edje.h")]
23 public int shutdown();
25 public void frametime_set( double t );
26 public double frametime_get();
30 public void fontset_append_set( string fonts );
31 public string fontset_append_get();
32 public void scale_set( double scale );
33 public double scale_get();
35 public Eina.List<string> file_collection_list( string file );
36 public void file_collection_list_free( Eina.List<string> list );
37 public int file_group_exists( string file, string glob );
38 public string file_data_get( string file, string key );
39 public void file_cache_set( int count );
40 public int file_cache_get();
41 public void file_cache_flush();
43 public void collection_cache_set( int count );
44 public int collection_cache_get();
45 public void collection_cache_flush();
47 public void color_class_set( string color_class, int r, int g, int b, int a, int r2, int g2, int b2, int a2, int r3, int g3, int b3, int a3 );
48 public void color_class_del( string color_class );
49 public Eina.List<string> color_class_list();
51 public void text_class_set( string text_class, string font, Evas.FontSize size );
52 public void text_class_del( string text_class);
53 public Eina.List<string> text_class_list();
55 public void message_signal_process();
57 //=======================================================================
58 [CCode (cprefix = "EDJE_ASPECT_CONTROL_")]
59 public enum AspectControl
68 //=======================================================================
69 [CCode (cprefix = "EDJE_OBJECT_TABLE_HOMOGENEOUS_")]
70 public enum ObjectTableHomogenousMode
77 [CCode (instance_pos = 0)]
78 public delegate void SignalCallback( Object obj, string emission, string source );
80 [CCode (instance_pos = 0)]
81 public delegate void TextChangedCallback( Object obj, string part );
83 //=======================================================================
85 [CCode (cname = "Evas_Object", clower_case_prefix = "edje_object_", free_function = "evas_object_free")]
86 public class Object : Evas.Object
88 [CCode (cname = "edje_object_add") ]
89 public Object( Evas.Canvas parent );
91 public void scale_set( double scale );
92 public double scale_get();
94 public string data_get( string key );
96 public int file_set( string file, string group );
97 public void file_get( out string file, out string group );
98 public int load_error_get();
99 public string edje_load_error_str( int error );
101 public void signal_callback_add( string emission, string source, SignalCallback callback );
102 public void* signal_callback_del( string emission, string source, SignalCallback callback );
103 public void signal_emit( string emission, string source );
105 public void play_set( bool play);
106 public bool play_get();
107 public void animation_set( bool on );
108 public bool animation_get();
113 public void color_class_set( string color_class, int r, int g, int b, int a, int r2, int g2, int b2, int a2, int r3, int g3, int b3, int a3 );
114 public void color_class_del( string color_class );
116 public void text_class_set( string text_class, string font, Evas.FontSize size );
118 public void size_min_get( out Evas.Coord minw, out Evas.Coord minh );
119 public void size_max_get( out Evas.Coord maxw, out Evas.Coord maxh );
120 public void calc_force();
121 public void size_min_calc( out Evas.Coord minw, out Evas.Coord minh );
122 public void size_min_restricted_calc( out Evas.Coord minw, out Evas.Coord minh, Evas.Coord restrictedw, Evas.Coord restrictedh );
124 public bool part_exists( string part );
125 public Evas.Object? part_object_get( string part );
127 public void part_geometry_get( string part, Evas.Coord x, Evas.Coord y, Evas.Coord w, Evas.Coord h );
129 public void text_change_cb_set( TextChangedCallback callback );
130 public void part_text_set( string part, string text );
131 public string part_text_get( string part );
132 public void part_text_unescaped_set( string part, string text_to_escape );
133 public string part_text_unescaped_get( string part );
135 public string part_text_selection_get( string part );
136 public void part_text_select_none( string part );
137 public void part_text_select_all( string part );
139 public void part_text_insert( string part, string text );
140 public Eina.List<string> part_text_anchor_list_get( string part );
141 public Eina.List<string> part_text_anchor_geometry_get( string part, string anchor );
142 public void part_text_cursor_geometry_get( string part, out Evas.Coord x, out Evas.Coord y, out Evas.Coord w, out Evas.Coord h );
143 public void part_text_select_allow_set( string part, bool allow );
144 public void part_text_select_abort( string part );
146 public void part_swallow( string part, Evas.Object obj_swallow );
147 public void part_unswallow( Evas.Object obj_swallow );
148 public Evas.Object part_swallow_get( string part);
150 public string part_state_get( string part, out double val_ret );
151 public int part_drag_dir_get( string part );
152 public void part_drag_value_set( string part, double dx, double dy );
153 public void part_drag_value_get( string part, out double dx, out double dy );
155 public void part_drag_size_set( string part, double dw, double dh );
156 public void part_drag_size_get( string part, out double dw, out double dh );
157 public void part_drag_step_set( string part, double dx, double dy );
158 public void part_drag_step_get( string part, out double dx, out double dy );
159 public void part_drag_page_set( string part, double dx, double dy );
160 public void part_drag_page_get( string part, out double dx, out double dy );
161 public void part_drag_step( string part, double dx, double dy );
162 public void part_drag_page( string part, double dx, double dy );
163 public bool part_box_append( string part, Evas.Object child );
164 public bool part_box_prepend( string part, Evas.Object child );
165 public bool part_box_insert_before( string part, Evas.Object child, Evas.Object reference );
166 public bool part_box_insert_at( string part, Evas.Object child, uint pos );
167 public Evas.Object part_box_remove( string part, Evas.Object child );
168 public Evas.Object part_box_remove_at( string part, uint pos );
169 public bool part_box_remove_all( string part, bool clear );
170 public bool part_table_pack( string part, Evas.Object child_obj, ushort col, ushort row, ushort colspan, ushort rowspan );
171 public bool part_table_unpack( string part, Evas.Object child_obj );
172 public bool part_table_col_row_size_get( string part, out int cols, out int rows );
173 public bool part_table_clear( string part, bool clear );
175 //public void message_send ( Edje_Message_Type type, int id, void *msg);
176 //public void message_handler_set ( void (*func) (void *data, Evas_Object *obj, Edje_Message_Type type, int id, void *msg), void *data);
178 public void message_signal_process();