Class: ArcadiaExt

Inherits:
Object
  • Object
show all
Defined in:
lib/a-commons.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(_arcadia, _name = nil) ⇒ ArcadiaExt

Returns a new instance of ArcadiaExt.



191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
# File 'lib/a-commons.rb', line 191

def initialize(_arcadia, _name=nil)
  @arcadia = _arcadia
  @arcadia.register(self)
  Arcadia.attach_listener(self, BuildEvent)
  Arcadia.attach_listener(self, ExitQueryEvent)
  Arcadia.attach_listener(self, FinalizeEvent)
  @name = _name
  @frames = Array.new
  @frames_points = conf_array("#{_name}.frames")
  @frames_labels = conf_array("#{_name}.frames.labels")
  @frames_names = conf_array("#{_name}.frames.names")
  @float_frames = Array.new
  @float_geometries = conf_array("#{_name}.float_frames")
  @float_labels = conf_array("#{_name}.float_labels")
  #ObjectSpace.define_finalizer(self, self.method(:finalize).to_proc)
end

Instance Attribute Details

#arcadiaObject (readonly)

Returns the value of attribute arcadia.



190
191
192
# File 'lib/a-commons.rb', line 190

def arcadia
  @arcadia
end

Instance Method Details

#conf(_property) ⇒ Object



242
243
244
# File 'lib/a-commons.rb', line 242

def conf(_property)
 @arcadia['conf'][@name+'.'+_property]
end

#conf_array(_name) ⇒ Object



209
210
211
212
213
214
# File 'lib/a-commons.rb', line 209

def conf_array(_name)
  res = []
  value = @arcadia['conf'][_name]
  res.concat(value.split(',')) if value
  res
end

#exec(_method, _args = nil) ⇒ Object

def conf_global(_property)

 @arcadia['conf'][_property]
end


250
251
252
253
254
# File 'lib/a-commons.rb', line 250

def exec(_method, _args=nil)
  if self.respond_to(_method)
    self.send(_method, _args)
  end
end

#float_frame(_n = 0, _args = nil) ⇒ Object



234
235
236
237
238
239
240
# File 'lib/a-commons.rb', line 234

def float_frame(_n=0, _args=nil)
 if @float_frames[_n].nil? 
   (@float_labels[_n].nil?)? _label = @name : _label = @float_labels[_n]
   @float_frames[_n] =  FloatFrameWrapper.new(@arcadia, @float_geometries[_n], _label)
 end
   @float_frames[_n]
end

#frame(_n = 0, create_if_not_exist = true) ⇒ Object



225
226
227
228
229
230
231
232
# File 'lib/a-commons.rb', line 225

def frame(_n=0,create_if_not_exist=true)
 if @frames[_n] == nil && @frames_points[_n] && create_if_not_exist
   (@frames_labels[_n].nil?)? _label = @name : _label = @frames_labels[_n]
   (@frames_names[_n].nil?)? _name = @name : _name = @frames_names[_n]
   @frames[_n] = FixedFrameWrapper.new(@name, @frames_points[_n], _name, _label)
 end
  return @frames[_n]
end

#frame_def_visible?(_n = 0) ⇒ Boolean

Returns:

  • (Boolean)


216
217
218
219
# File 'lib/a-commons.rb', line 216

def frame_def_visible?(_n=0)
  @arcadia.layout.domains.include?(@frames_points[_n])
  #@frames_points[_n] != '-1.-1'
end

#frame_visible?(_n = 0) ⇒ Boolean

Returns:

  • (Boolean)


221
222
223
# File 'lib/a-commons.rb', line 221

def frame_visible?(_n=0)
  @frames[_n] != nil && @frames[_n].hinner_frame && TkWinfo.mapped?(@frames[_n].hinner_frame)
end

#maximize(_n = 0) ⇒ Object



262
263
264
# File 'lib/a-commons.rb', line 262

def maximize(_n=0)
  @frames[_n].maximize if @frames[_n]
end

#maximized?(_n = 0) ⇒ Boolean

Returns:

  • (Boolean)


256
257
258
259
260
# File 'lib/a-commons.rb', line 256

def maximized?(_n=0)
  ret= false
  ret=@frames[_n].maximized? if @frames[_n]
  ret
end

#resize(_n = 0) ⇒ Object



266
267
268
# File 'lib/a-commons.rb', line 266

def resize(_n=0)
  @frames[_n].resize if @frames[_n]
end