EverydayCurses
A utility for handling some curses stuff more easily. Split out from everyday-cli-utils.
Installation
Add this line to your application's Gemfile:
gem 'everyday-curses'
And then execute:
$ bundle
Or install it yourself as:
$ gem install everyday-curses
Usage
EverydayCurses::MyCurses
Encapsulates the code for dealing with the curses library.
Fields:
MyCurses.headers
An array storing the header lines that will be printed out with MyCurses.myprints.
MyCurses.bodies
An array storing the body lines that will be printed out with MyCurses.myprints.
MyCurses.footers
An array storing the footer lines that will be printed out with MyCurses.myprints.
Methods:
MyCurses.new(use_curses, linesh, linesf)
Initializes the class and sets the basic options.
Parameters
-
use_curses:trueto use curses,falseto useputs -
linesh: the number of header lines -
linesf: the number of footer lines
MyCurses.clear
Clear the headers, bodies, and footers arrays
MyCurses.myprints
Print out all of the lines stored in the headers, bodies, and footers arrays. If use_curses is true, it will use curses and allow for scrolling. Otherwise, it will just print out all of the lines with puts
MyCurses.read_ch
Update the character from the body pad.
MyCurses.clear_ch
Clear out any newline, ENTER, UP, or DOWN characters from the queue.
MyCurses.scroll_iteration
Update the display (including doing any scrolling) and read the next character.
MyCurses.header_live_append(str)
Append str to the header pad immediately and update it. Does not modify the headers array.
Parameters
-
str: the string to append
MyCurses.body_live_append(str)
Append str to the body pad immediately and update it. Does not modify the bodies array.
Parameters
-
str: the string to append
MyCurses.footer_live_append(str)
Append str to the footer pad immediately and update it. Does not modify the footers array.
Parameters
-
str: the string to append
MyCurses.dispose
Close out the curses screen if curses was used.
Contributing
- Fork it ( http://github.com//everyday-curses/fork )
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create new Pull Request