Changeset 374 for trunk/samples

Show
Ignore:
Timestamp:
12/30/2007 14:35:07 (8 months ago)
Author:
why
Message:
  • samples/irb.rb: sample dies when str or cmd vars are used, moved them outside of the TOPLEVEL, thanks Aditya!
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/samples/irb.rb

    r370 r374  
    6161$stdout = StringIO.new 
    6262 
    63 str = [CURSOR + " "] 
    64 cmd = "" 
    6563Shoes.app do 
     64  @str, @cmd = [CURSOR + " "], "" 
    6665  stack do 
    6766    background "#555" 
     
    7069      stack :width => 1.0, :height => 400 do 
    7170        background "#555" 
    72         @console = para str, :font => "Monospace 12px", :stroke => "#dfa" 
     71        @console = para @str, :font => "Monospace 12px", :stroke => "#dfa" 
    7372        @console.cursor = -1 
    7473      end 
     
    7877    when "\n" 
    7978      begin 
    80         out, obj = IRBalike.run(cmd) 
    81         str += ["#{cmd}\n", 
     79        out, obj = IRBalike.run(@cmd) 
     80        @str += ["#@cmd\n", 
    8281          span("#{out}=> #{obj.inspect}\n", :stroke => "#fda"), 
    8382          "#{CURSOR} "] 
    84         cmd = "" 
     83        @cmd = "" 
    8584      rescue MimickIRB::Empty 
    8685      rescue MimickIRB::Continue 
    87         str += ["#{cmd}\n.. "] 
    88         cmd = "" 
     86        @str += ["#@cmd\n.. "] 
     87        @cmd = "" 
    8988      rescue Object => e 
    90         str += ["#{cmd}\n", span("#{e.class}: #{e.message}\n", :stroke => "#fcf"), 
     89        @str += ["#@cmd\n", span("#{e.class}: #{e.message}\n", :stroke => "#fcf"), 
    9190          "#{CURSOR} "] 
    92         cmd = "" 
     91        @cmd = "" 
    9392      end 
    9493    when String 
    95       cmd += k 
     94      @cmd += k 
    9695    when :backspace 
    97       cmd.slice!(-1) 
     96      @cmd.slice!(-1) 
    9897    when :tab 
    99       cmd += "  " 
     98      @cmd += "  " 
    10099    when :alt_q 
    101100      quit 
    102101    when :alt_c 
    103       self.clipboard = cmd 
     102      self.clipboard = @cmd 
    104103    when :alt_v 
    105       cmd += self.clipboard 
     104      @cmd += self.clipboard 
    106105    end 
    107     @console.replace *(str + [cmd]) 
     106    @console.replace *(@str + [@cmd]) 
    108107    @scroll.scroll_top = @scroll.scroll_max 
    109108  end