Referring to another thread I had here, I'd just like to show my (simple) solution for console output. I was looking for some attributes and CLS and so on. If you want to have smarter solutions, there is ncurses, but for the quick and dirty project my way might do.
All these consoles in Linux simulate at least a VT100 terminal which knows a set of simple escape codes to control the output. I found this wonderful site http://ascii-table.com/ansi-escape-sequences-vt-100.php having everything I needed. What I made is a module named "Screen" with the code quoted hereunder. In FMain I made a loop with LINE INPUT and a simple SELECT CASE for the user to type in commands for testing purposes. Within this SELECT CASE thing, the returned strings are printed and so on, rather simple. This is not a complete application yet. What I miss is a way to read single keystrokes instantly, but that's tricky as Benoit said. So this is my Screen module: ' Gambas module file PRIVATE esc AS String = Chr$(27) & "[" PUBLIC CONST Black AS String = "0" PUBLIC CONST Red AS String = "1" PUBLIC CONST Green AS String = "2" PUBLIC CONST Yellow AS String = "3" PUBLIC CONST Blue AS String = "4" PUBLIC CONST Magenta AS String = "5" PUBLIC CONST Cyan AS String = "6" PUBLIC CONST White AS String = "7" PUBLIC CONST Foreground AS String = "3" PUBLIC CONST Background AS String = "4" PUBLIC FUNCTION Cls() AS String RETURN esc & "2J" & esc & "H" END PUBLIC FUNCTION Normal() AS String RETURN esc & "0m" END PUBLIC FUNCTION Bold() AS String RETURN esc & "1m" END PUBLIC FUNCTION Gray() AS String RETURN esc & "2m" END PUBLIC FUNCTION Underline() AS String RETURN esc & "4m" END PUBLIC FUNCTION Blink() AS String RETURN esc & "5m" END PUBLIC FUNCTION Reverse() AS String RETURN esc & "7m" END PUBLIC FUNCTION MoveTo(row AS Integer, col AS Integer) AS String IF row < 1 THEN row = 1 IF row > 25 THEN row = 25 IF col < 1 THEN col = 1 IF col > 80 THEN col = 80 RETURN esc & CStr(row) & ";" & CStr(col) & "f" END PUBLIC FUNCTION Color(FgBg AS String, Colorvalue AS String) AS String RETURN esc & FgBg & Colorvalue & "m" END First trials with it show it's working, so if you can use it make the best out of it and tell me what you think :-) Regards Rolf ------------------------------------------------------------------------------ ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user