Class: Shul::App
- Inherits:
-
Object
- Object
- Shul::App
- Defined in:
- lib/shul.rb
Instance Method Summary collapse
-
#initialize(shoes_app, doc, refresh: false, attributes: {}) ⇒ App
constructor
A new instance of App.
- #reload ⇒ Object
Constructor Details
#initialize(shoes_app, doc, refresh: false, attributes: {}) ⇒ App
Returns a new instance of App.
361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 |
# File 'lib/shul.rb', line 361 def initialize(shoes_app, doc, refresh: false, attributes: {}) # To find out the window dimensions we must first render the app shul = Window.new(shoes_app, doc) if refresh then h = attributes shoes_app.start do |app| sleep 0.0001 box = doc.root.element('hbox | vbox') ht, wh = find_max_dimensions(box) h[:width],h[:height] = ht, wh win = window(h) { Window.new self, doc } app.close # closes the initial shoes app shul = nil end end doc.callback = shul h = doc.root.attributes if h[:onload] then name, raw_args = h[:onload].match(/(^[a-z]\w+)(?:\(([^\)]+))?/).captures m = shul.method(name.to_sym) raw_args ? m.call(Shellwords::shellwords(raw_args)) : m.call end end |
Instance Method Details
#reload ⇒ Object
402 403 404 405 |
# File 'lib/shul.rb', line 402 def reload() #alert 'hello world' '@shoes.inspect' end |