class MittensUi::Loader

Public Class Methods

new(options={}) click to toggle source
Calls superclass method MittensUi::Core::new
# File lib/mittens_ui/loader.rb, line 5
def initialize(options={})
  @spinner = Gtk::Spinner.new

  @processing = false

  super(@spinner, options)

  self.hide
end

Public Instance Methods

render() click to toggle source
# File lib/mittens_ui/loader.rb, line 27
def render
  $vertical_box.pack_end(@spinner)
  return self
end
start() { || ... } click to toggle source
# File lib/mittens_ui/loader.rb, line 15
def start(&block)
  return if @processing

  return if @worker_thread && @worker_thread.alive?

  self.show

  @spinner.start

  @worker_thread = Thread.new { yield; self.remove; @processing = true }
end