Sha256: e7487da9cf95f50441dc42889cc473f7d00d0ff4832375427ff79a207c2a6ba0
Contents?: true
Size: 756 Bytes
Versions: 1
Compression:
Stored size: 756 Bytes
Contents
module Luck class TextBox < Label attr_accessor :multiline, :handler, :label def initialize *args @label = '' @text = 'Input box' super end def redraw super case @alignment when :center text.center width when :right text.rjust width else @display.place y1, x1 + text.size, "\e[s" end #print "\e[s" # save end def on_submit &blck @handler = blck end def text return @text if @label.empty? "#{@label}: #{@text}" end def handle_char char if char == "\n" && !@multiline @handler.call @text if @handler @text = '' elsif char == "\177" @text.slice! -1 else @text += char end redraw end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
luck-0.0.0 | lib/luck/textbox.rb |