class ArcadiaAboutSplash

Attributes

progress[R]

Public Class Methods

new() click to toggle source
Calls superclass method
# File lib/a-core.rb, line 2253
  def initialize
    #_bgcolor = '#B83333'
    _bgcolor = '#000000'
    super()
    relief 'groove'
    #relief 'flat'
    background  _bgcolor
    highlightbackground  _bgcolor
    highlightthickness  1
    borderwidth 2
    withdraw
    overrideredirect(true)
    # dim 60x86
    @llogo = TkLabel.new(self){
      image  Arcadia.image_res(A_LOGO_GIF)
      background  _bgcolor
      #place('x'=> 20,'y' => 20)
      place('x'=> 140,'y' => 55)
    }


    #    @tkLabel1 = TkLabel.new(self){
    #      text 'Arcadia'
    #      background  _bgcolor
    #      foreground  '#ffffff'
    #      font Arcadia.conf('splash.title.font')
    #      justify  'left'
    #      place('width' => '190','x' => 110,'y' => 10,'height' => 25)
    #    }

#    @tkLabel1 = TkLabel.new(self){
#      image  Arcadia.image_res(ARCADIA_JAP_WHITE_GIF)
#      background  _bgcolor
#      justify  'left'
#      place('x' => 90,'y' => 10)
#    }

    @tkLabel1 = TkLabel.new(self){
      image  Arcadia.image_res(ARCADIA_7THE_GIF)
      background  _bgcolor
      justify  'left'
      place('x' => 26,'y' => 10)
    }

#    @tkLabelRuby = TkLabel.new(self){
#      image Arcadia.image_res(RUBY_DOCUMENT_GIF)
#      background  _bgcolor
#      place('x'=> 210,'y' => 12)
#    }

#    @tkLabel2 = TkLabel.new(self){
#      text  'Arcadia IDE'
#      background  _bgcolor
#      foreground  '#ffffff'
#      font Arcadia.instance['conf']['splash.subtitle.font']
#      justify  'left'
#      place('x' => 100,'y' => 40,'height' => 19)
#    }

    @tkLabelVersion = TkLabel.new(self){
      text Arcadia.text('main.about.version', [$arcadia['applicationParams'].version])
      background  _bgcolor
      foreground  '#009999'
      font Arcadia.instance['conf']['splash.version.font']
      justify  'left'
      #place('x' => 100,'y' => 65,'height' => 19)
      place('x' => 28,'y' => 47,'height' => 19)
    }
    @tkLabel21 = TkLabel.new(self){
      text  Arcadia.text("main.about.by", ['Antonio Galeone - 2004/2015'])
      background  _bgcolor
      foreground  '#009999'
      font Arcadia.instance['conf']['splash.credits.font']
      justify  'left'
      anchor 'w'
      place('width' => '220','x' => 28,'y' => 32,'height' => 19)
    }

#    @tkLabelCredits = TkLabel.new(self){
#      text  Arcadia.text("main.about.contributors", ['Roger D. Pack'])
#      background  _bgcolor
#      foreground  '#ffffff'
#      font Arcadia.instance['conf']['splash.credits.font']
#      justify  'left'
#      anchor 'w'
#      place('width' => '210','x' => 100,'y' => 115,'height' => 25)
#    }

    @tkLabelStep = TkLabel.new(self){
      text  ''
      background  _bgcolor
      foreground  '#009999'
      font Arcadia.instance['conf']['splash.banner.font']
      justify  'left'
      anchor  'w'
      place('width'=>-28,'relwidth' => 1,'x' => 28,'y' => 160,'height' => 45)
    }
    @progress  = TkVariable.new
    reset
    _width = 345
    _height = 210
    #_width = 0;_height = 0
    _x = TkWinfo.screenwidth(self)/2 -  _width / 2
    _y = TkWinfo.screenheight(self)/2 -  _height / 2
    geometry = _width.to_s+'x'+_height.to_s+'+'+_x.to_s+'+'+_y.to_s
    Tk.tk_call('wm', 'geometry', self, geometry )
    bind("Double-Button-1", proc{self.destroy})
    info = TkApplication.sys_info
    set_sysinfo(info)
    Arcadia.attach_listener(self, ArcadiaProblemEvent)
    Arcadia.attach_listeners_listener(self, BuildEvent)
  end

Public Instance Methods

labelStep(_txt) click to toggle source
# File lib/a-core.rb, line 2438
def labelStep(_txt)
  @tkLabelStep.text = _txt
  Tk.update
end
last_step(_txt = nil) click to toggle source
# File lib/a-core.rb, line 2443
def last_step(_txt = nil)
  @progress.numeric = @max
  labelStep(_txt) if _txt
  Arcadia.detach_listener(self, ArcadiaProblemEvent)
  Arcadia.detach_listeners_listener(self, BuildEvent)
end
next_step(_txt = nil) click to toggle source
# File lib/a-core.rb, line 2428
def next_step(_txt = nil)
  @progress.numeric += 1
  labelStep("#{perc}% #{_txt}")
end
on_after_build(_event, _listener) click to toggle source
# File lib/a-core.rb, line 2374
def on_after_build(_event, _listener)
  next_step("... after building #{_listener.class}")
end
on_arcadia_problem(_event) click to toggle source
# File lib/a-core.rb, line 2382
def on_arcadia_problem(_event)
  if !defined?(@problems_nums)
    @problems_nums=0
    #@problem_str = proc{@problems_nums > 1 ? "#{@problems_nums} problems found!" : "#{@problem_nums} problem found!"}
    @tkAlert = TkLabel.new(self){
      image Arcadia.image_res(ALERT_GIF)
      background  'black'
      place('x'=> 28,'y' => 152)
    }

    @tkLabelProblems = TkLabel.new(self){
      text  ''
      background  'black'
      foreground  'red'
      font Arcadia.instance['conf']['splash.problems.font']
      justify  'left'
      anchor 'w'
      place('width' => '210','x' => 46,'y' => 150,'height' => 25)
    }
  end
  @problems_nums=@problems_nums+1
  @tkLabelProblems.text=problem_str if @tkLabelProblems
end
on_before_build(_event, _listener) click to toggle source
# File lib/a-core.rb, line 2370
def on_before_build(_event, _listener)
  next_step("... pre building #{_listener.class}")
end
on_build(_event, _listener) click to toggle source
# File lib/a-core.rb, line 2366
def on_build(_event, _listener)
  next_step("... building #{_listener.class}")
end
perc() click to toggle source
# File lib/a-core.rb, line 2433
def perc
  ret = @progress.numeric*100/@max
  ret > 100 ? 100:ret
end
problem_str() click to toggle source
# File lib/a-core.rb, line 2378
def problem_str
  @problems_nums > 1 ? "#{@problems_nums} problems found!" : "#{@problems_nums} problem found!"
end
reset() click to toggle source
# File lib/a-core.rb, line 2424
def reset
  @progress.value = -1
end
set_progress(_max=10) click to toggle source
# File lib/a-core.rb, line 2410
  def set_progress(_max=10)
    @max = _max
    Tk::BWidget::ProgressBar.new(self, :width=>340, :height=>5,
      :background=>'#000000',
      :troughcolor=>'#000000',
      :foreground=>'#990000',
      :variable=>@progress,
      :borderwidth=>0,
      :relief=>'flat',
#      :maximum=>_max).place('relwidth' => '1','y' => 145,'height' => 1)
#      :maximum=>_max).place('width' => '280','x'=>28,'y' => 33,'height' => 1)
      :maximum=>_max).place('width' => '280','x'=>28,'y' => 189,'height' => 10)
  end
set_sysinfo(_info) click to toggle source
# File lib/a-core.rb, line 2406
def set_sysinfo(_info)
  @tkLabelStep.text(_info)
end