Masato Taruishi
taru****@sourc*****
2004年 7月 3日 (土) 18:28:08 JST
=================================================================== RCS file: demo/haviewer/haviewer.rb,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- demo/haviewer/haviewer.rb 2004/07/03 06:50:22 1.17 +++ demo/haviewer/haviewer.rb 2004/07/03 09:28:08 1.18 @@ -17,6 +17,21 @@ class Signal + module SignalFactory + LMap = { + "JP" => Signal, + "UK" => Signal, + "AU" => Signal + } + LC = ENV["LANG"].gsub(/.*_([^.]+).*/, '\1') + def SignalFactory.create + s = LMap[LC].new if LMap[LC] + s = RightSignal.new if ! s + return s + end + end + + DarkGreen = "#005500" DarkYellow = "#555500" DarkRed = "#550000" @@ -43,12 +58,16 @@ "" => Off["G"] + Off["Y"] + Off["R"] } + def _signal(color) + Buf[color] + end + def initialize(color="") @color = color end def to_s - return "<span background=\"#000000\">(#{Buf[@color]})</span>" + return "<span background=\"#000000\">(#{_signal(@color)})</span>" end def on(color="") @@ -59,6 +78,18 @@ on end + class RightSignal < Signal + Buf = { + Green => Off["R"] + Off["Y"] + On["G"], + Yellow => Off["R"] + On["Y"] + Off["G"], + Red => On["R"] + Off["Y"] + Off["G"], + "" => Off["R"] + Off["Y"] + Off["G"] + } + def _signal(color) + Buf[color] + end + end + end class Host @@ -72,7 +103,7 @@ super(); @host = host; @status = "" - @sign = Signal.new + @sign = Signal::SignalFactory.create @type = type end @@ -201,8 +232,8 @@ def initialize(glade) @glade = @glade = GladeXML.new(glade) {|handler| method(handler)} @treeview = @glade["treeview1"] - @master_icon = Signal.new - @slave_icon = Signal.new + @master_icon = Signal::SignalFactory.create + @slave_icon = Signal::SignalFactory.create @view = nil update end