Class: ArcadiaAboutSplash

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeArcadiaAboutSplash

Returns a new instance of ArcadiaAboutSplash.



1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
# File 'lib/a-core.rb', line 1721

def initialize
  #_bgcolor = '#B83333'
  _bgcolor = '#000000'
  super()
  relief 'groove'
  #relief 'flat'
  background  _bgcolor
  highlightbackground  _bgcolor
  highlightthickness  1
  borderwidth 2
  withdraw 
  overrideredirect(true)
  
  @tkLabel3 = TkLabel.new(self){
    image  Arcadia.image_res(A_LOGO_GIF)
    background  _bgcolor
    place('x'=> 20,'y' => 20)
  }
  
  
#    @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_GIF)
    background  _bgcolor
    justify  'left'
    place('x' => 90,'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  'version: '+$arcadia['applicationParams'].version
    background  _bgcolor
    foreground  '#ffffff'
    font Arcadia.instance['conf']['splash.version.font']
    justify  'left'
    place('x' => 100,'y' => 65,'height' => 19)
  }
  @tkLabel21 = TkLabel.new(self){
    text  'by Antonio Galeone - 2004/2012'
    background  _bgcolor
    foreground  '#ffffff'
    font Arcadia.instance['conf']['splash.credits.font']
    justify  'left'
    anchor 'w'
    place('width' => '220','x' => 100,'y' => 95,'height' => 25)
  }

  @tkLabelCredits = TkLabel.new(self){
    text  '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  'yellow'
    font Arcadia.instance['conf']['splash.banner.font']
    justify  'left'
    anchor  'w'
    place('width'=>-5,'relwidth' => 1,'x' => 5,'y' => 160,'height' => 45)
  }
  @progress  = TkVariable.new
  reset
  _width = 380
  _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("ButtonPress-1", proc{self.destroy})
  bind("Double-Button-1", proc{self.destroy})
  info = TkApplication.sys_info
  set_sysinfo(info)
  Arcadia.attach_listener(self, ArcadiaProblemEvent)
end

Instance Attribute Details

#progressObject (readonly)

Returns the value of attribute progress.



1720
1721
1722
# File 'lib/a-core.rb', line 1720

def progress
  @progress
end

Instance Method Details

#labelStep(_txt) ⇒ Object



1877
1878
1879
1880
# File 'lib/a-core.rb', line 1877

def labelStep(_txt)
  @tkLabelStep.text = _txt
  Tk.update
end

#last_step(_txt = nil) ⇒ Object



1882
1883
1884
1885
1886
# File 'lib/a-core.rb', line 1882

def last_step(_txt = nil)
  @progress.numeric = @max
  labelStep(_txt) if _txt
  Arcadia.detach_listener(self, ArcadiaProblemEvent)
end

#next_step(_txt = nil) ⇒ Object



1872
1873
1874
1875
# File 'lib/a-core.rb', line 1872

def next_step(_txt = nil)
  @progress.numeric += 1
  labelStep(_txt) if _txt
end

#on_arcadia_problem(_event) ⇒ Object



1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
# File 'lib/a-core.rb', line 1828

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'=> 10,'y' => 150)
    }

    @tkLabelProblems = TkLabel.new(self){
      text  ''
      background  'black'
      foreground  'red'
      font Arcadia.instance['conf']['splash.problems.font']
      justify  'left'
      anchor 'w'
      place('width' => '210','x' => 28,'y' => 150,'height' => 25)
    }      
  end
  @problems_nums=@problems_nums+1
  @tkLabelProblems.text=problem_str if @tkLabelProblems
end

#problem_strObject



1824
1825
1826
# File 'lib/a-core.rb', line 1824

def problem_str
  @problems_nums > 1 ? "#{@problems_nums} problems found!" : "#{@problems_nums} problem found!"
end

#resetObject



1868
1869
1870
# File 'lib/a-core.rb', line 1868

def reset
  @progress.value = -1
end

#set_progress(_max = 10) ⇒ Object



1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
# File 'lib/a-core.rb', line 1856

def set_progress(_max=10)
  @max = _max
  Tk::BWidget::ProgressBar.new(self, :width=>150, :height=>10,
    :background=>'#000000',
    :troughcolor=>'#000000',
    :foreground=>'#666666',
    :variable=>@progress,
    :borderwidth=>0,
    :relief=>'flat',
    :maximum=>_max).place('relwidth' => '1','y' => 144,'height' => 6)
end

#set_sysinfo(_info) ⇒ Object



1852
1853
1854
# File 'lib/a-core.rb', line 1852

def set_sysinfo(_info)
  @tkLabelStep.text(_info)
end