Class: Efl::Evas::REvasObject
- Inherits:
-
Object
- Object
- Efl::Evas::REvasObject
show all
- Includes:
- ClassHelper
- Defined in:
- lib/efl/evas.rb,
lib/efl/ecore_evas.rb
Class Method Summary
collapse
Instance Method Summary
collapse
#===, #address, included, #method_missing, #null?, #to_a, #to_ary, #to_ptr, #to_s
Constructor Details
#initialize(a, *args, &block) ⇒ REvasObject
Returns a new instance of REvasObject.
136
137
138
139
140
141
142
143
144
145
146
147
148
|
# File 'lib/efl/evas.rb', line 136
def initialize a, *args, &block
@ptr = (
case a
when FFI::Pointer
a
when Method
a.call(*args)
else
raise ArgumentError.new "wrong argument #{a.class.name}"
end
)
instance_eval &block if block
end
|
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
in the class Efl::ClassHelper
Class Method Details
.release(p) ⇒ Object
149
150
151
152
153
154
155
156
157
158
|
# File 'lib/efl/evas.rb', line 149
def self.release p
Native.evas_object_del p unless p.nil?
@ri0.free if @ri0
@ri1.free if @ri1
@ri2.free if @ri2
@ri3.free if @ri3
@rd0.free if @rd0
@rd1.free if @rd1
@rs0.free if @rs0
end
|
Instance Method Details
#above_get ⇒ Object
Also known as:
above
213
214
215
|
# File 'lib/efl/evas.rb', line 213
def above_get
REvasObject.new Native.evas_object_above_get @ptr
end
|
#below_get ⇒ Object
Also known as:
below
217
218
219
|
# File 'lib/efl/evas.rb', line 217
def below_get
REvasObject.new Native.evas_object_below_get @ptr
end
|
#center_get ⇒ Object
Also known as:
center
184
185
186
187
|
# File 'lib/efl/evas.rb', line 184
def center_get
g = geometry_get
[ g[0]+(g[2]/2.0), g[1]+(g[3]/2.0) ]
end
|
#center_set(x, y) ⇒ Object
Also known as:
center=
189
190
191
192
|
# File 'lib/efl/evas.rb', line 189
def center_set x, y
g = geometry_get
move (x-(g[2]/2.0)).to_i, (y-(g[3]/2.0)).to_i
end
|
#color_get ⇒ Object
Also known as:
color
200
201
202
203
204
205
206
207
|
# File 'lib/efl/evas.rb', line 200
def color_get
@ri0 ||= FFI::MemoryPointer.new :int
@ri1 ||= FFI::MemoryPointer.new :int
@ri2 ||= FFI::MemoryPointer.new :int
@ri3 ||= FFI::MemoryPointer.new :int
Native.evas_object_color_get @ptr, @ri0, @ri1, @ri2, @ri3
[ @ri0.read_int, @ri1.read_int, @ri2.read_int, @ri3.read_int ]
end
|
#data_get(k) ⇒ Object
Also known as:
data
285
286
287
288
289
|
# File 'lib/efl/evas.rb', line 285
def data_get k
r = Native.evas_object_data_get @ptr, k
return nil if r==FFI::Pointer::NULL
r.read_string
end
|
#ecore_evas_get ⇒ Object
Also known as:
ecore_evas
118
119
120
121
|
# File 'lib/efl/ecore_evas.rb', line 118
def ecore_evas_get
EcoreEvas::REcoreEvas.new Native.ecore_evas_object_ecore_evas_get @ptr
end
|
#evas_get ⇒ Object
Also known as:
evas
209
210
211
|
# File 'lib/efl/evas.rb', line 209
def evas_get
REvas.new Native.evas_object_evas_get @ptr
end
|
#evas_name ⇒ Object
169
170
171
|
# File 'lib/efl/evas.rb', line 169
def evas_name
Native.evas_object_name_get @ptr
end
|
#evas_type ⇒ Object
172
173
174
|
# File 'lib/efl/evas.rb', line 172
def evas_type
Native.evas_object_type_get @ptr
end
|
#free ⇒ Object
159
160
161
162
163
|
# File 'lib/efl/evas.rb', line 159
def free
@ptr.autorelease=false if @ptr.is_a? FFI::AutoPointer
REvasObject.release @ptr
@ptr=nil
end
|
#geometry_get ⇒ Object
Also known as:
geometry
175
176
177
178
179
180
181
182
|
# File 'lib/efl/evas.rb', line 175
def geometry_get
@ri0 ||= FFI::MemoryPointer.new :int
@ri1 ||= FFI::MemoryPointer.new :int
@ri2 ||= FFI::MemoryPointer.new :int
@ri3 ||= FFI::MemoryPointer.new :int
Native.evas_object_geometry_get @ptr, @ri0, @ri1, @ri2, @ri3
[ @ri0.read_int, @ri1.read_int, @ri2.read_int, @ri3.read_int ]
end
|
#object_box_add(&block) ⇒ Object
164
165
166
167
168
|
# File 'lib/efl/evas.rb', line 164
def object_box_add &block
o = Evas::REvasBox.new FFI::AutoPointer.new Native.evas_object_box_add_to(@ptr), REvasObject.method(:release)
o.instance_eval &block if block
o
end
|
#size ⇒ Object
194
195
196
|
# File 'lib/efl/evas.rb', line 194
def size
geometry_get[2..-1]
end
|
#size=(wh) ⇒ Object
197
198
199
|
# File 'lib/efl/evas.rb', line 197
def size= wh
Native.evas_object_resize @ptr, *wh
end
|
#size_hint_align_get ⇒ Object
Also known as:
size_hint_align
254
255
256
257
258
259
|
# File 'lib/efl/evas.rb', line 254
def size_hint_align_get
@rd0 ||= FFI::MemoryPointer.new :double
@rd1 ||= FFI::MemoryPointer.new :double
Native.evas_object_size_hint_align_get @ptr, @rd0, @rd1
[ @rd0.read_double, @rd1.read_double ]
end
|
#size_hint_align_set_fill ⇒ Object
Also known as:
size_hint_align_fill
#size_hint_aspect_get ⇒ Object
Also known as:
size_hint_aspect
242
243
244
245
246
247
248
|
# File 'lib/efl/evas.rb', line 242
def size_hint_aspect_get
@ri0 ||= FFI::MemoryPointer.new :int
@ri1 ||= FFI::MemoryPointer.new :int
@ri2 ||= FFI::MemoryPointer.new :int
Native.evas_object_size_hint_aspect_get @ptr, @ri0, @ri1, @ri2
[ Native.enum_type(:evas_aspect_control)[@ri0.read_int], @ri1.read_int, @ri2.read_int ]
end
|
#size_hint_max_get ⇒ Object
Also known as:
size_hint_max
228
229
230
231
232
233
|
# File 'lib/efl/evas.rb', line 228
def size_hint_max_get
@ri0 ||= FFI::MemoryPointer.new :int
@ri1 ||= FFI::MemoryPointer.new :int
Native.evas_object_size_hint_max_get @ptr, @ri0, @ri1
[ @ri0.read_int, @ri1.read_int ]
end
|
#size_hint_min_get ⇒ Object
Also known as:
size_hint_min
221
222
223
224
225
226
|
# File 'lib/efl/evas.rb', line 221
def size_hint_min_get
@ri0 ||= FFI::MemoryPointer.new :int
@ri1 ||= FFI::MemoryPointer.new :int
Native.evas_object_size_hint_min_get @ptr, @ri0, @ri1
[ @ri0.read_int, @ri1.read_int ]
end
|
#size_hint_padding_get ⇒ Object
Also known as:
size_hint_padding
276
277
278
279
280
281
282
283
|
# File 'lib/efl/evas.rb', line 276
def size_hint_padding_get
@ri0 ||= FFI::MemoryPointer.new :int
@ri1 ||= FFI::MemoryPointer.new :int
@ri2 ||= FFI::MemoryPointer.new :int
@ri3 ||= FFI::MemoryPointer.new :int
Native.evas_object_size_hint_padding_get @ptr, @ri0, @ri1, @ri2, @ri3
[ @ri0.read_int, @ri1.read_int, @ri2.read_int, @ri3.read_int ]
end
|
#size_hint_request_get ⇒ Object
Also known as:
size_hint_request
235
236
237
238
239
240
|
# File 'lib/efl/evas.rb', line 235
def size_hint_request_get
@ri0 ||= FFI::MemoryPointer.new :int
@ri1 ||= FFI::MemoryPointer.new :int
Native.evas_object_size_hint_request_get @ptr, @ri0, @ri1
[ @ri0.read_int, @ri1.read_int ]
end
|
#size_hint_weight_get ⇒ Object
Also known as:
size_hint_weight
269
270
271
272
273
274
|
# File 'lib/efl/evas.rb', line 269
def size_hint_weight_get
@rd0 ||= FFI::MemoryPointer.new :double
@rd1 ||= FFI::MemoryPointer.new :double
Native.evas_object_size_hint_weight_get @ptr, @rd0, @rd1
[ @rd0.read_double, @rd1.read_double ]
end
|
#size_hint_weight_set_expand ⇒ Object
Also known as:
size_hint_weight_expand
#size_hint_weight_set_expand_fill ⇒ Object
Also known as:
size_hint_weight_expand_fill