* BUG: Add GB_END_DECLARE to the Input class to not crash anymore (on
cygwin only?). Reported by Nigel Gerrard.
git-svn-id: svn://localhost/gambas/trunk@6248 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Do not use deprecated autoconf macros anymore.
* NEW: The version information is now located in the 'version.m4' file in
the source root directory.
git-svn-id: svn://localhost/gambas/trunk@6230 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Window.Ask() now returns the chosen letter (and not its index) as
it's documented and ought to be (returning the index does not ease
translation very much but makes program flow much less obvious).
[EXAMPLES]
* NEW: Pong: Update uses of Window.Ask().
git-svn-id: svn://localhost/gambas/trunk@6130 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Omitting the optional 'Attr' and 'Pair' parameters to Window.Print()
now indicates to use the window settings instead of no attributes and
default colour
git-svn-id: svn://localhost/gambas/trunk@5626 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Allow to apply attributes and colours to a particular
Window.Print{,Center}()
* NEW: Change Window.Attributes into a bitmask (Integer)
* NEW: .Window.Attrs isn't anymore. The Attr static class now provides
OR-able constants to assign to Window.Attributes. .Char.Attrs, however,
remains a virtual object to manage attributes on a per character basis
* NEW: Provide Window.Pair to set the colour pair for all *subsequent*
writes, as opposed to Foreground and Background which set the colours
of all that is and will be
[EXAMPLES]
* NEW: Pong: Use gb.ncurses improvements
git-svn-id: svn://localhost/gambas/trunk@5625 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Input: Comment all NoDelay related stuff out
* BUG: Window: PrintCenter() handles empty lines now
* NEW: Pair: Allocate all pairs at initialisation and inhibit any change to
them. Array accessors can be used to get the pair number for a given
fore-/background combination
* NEW: Window: Rewrite the Window class
* NEW: Remove the Insert() method
* NEW: Remove .Window.Attrs' Color property
* NEW: BorderFrame is an optional argument to the constructor (default True)
to specify if there shall be a border frame around the window setting the
border apart from the content
* NEW: Ask() returns the choice number to ease translation
* NEW: Ask() supports a default choice in upper case
* NEW: Make Read event work
* NEW: Screen: Rewrite it mostly (is a static class again)
* NEW: Remove Read event
* NEW: Make Resize event work
* NEW: Rename .Cols and .Lines to .Width resp. .Height
* NEW: Declare gb.ncurses "Unfinished"
* OPT: Tidy up sources
* OPT: Window: Use werase() instead of wclear() to clear
[EXAMPLES]
* NEW: Add 'Pong' in the Games section
git-svn-id: svn://localhost/gambas/trunk@5543 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Add ReadLine() function to Window that does the same as ncurses
getstr(3X) but usable in all input modes
* NEW: Encapsulate Input, Cursor and Border modes into static objects
* NEW: Tidy up Color class in various places
* NEW: Specifiying color values is now done via floats instead of ints
* NEW: Remove ContainerW and ContainerH (and corresponding long forms)
properties from Window class. It is always .Width/.Height + 2
* NEW: Rename Input.Repeater to Input.RepeatDelay
* OPT: Remove unnecessary ncurses input mode changes
* OPT: Tidy up Input and Screen code
* OPT: Reduce useless calls to input queue read callback in Screen class
* BUG: Add constant for already implemented "very visible" cursor mode
* BUG: Use opaque input module in Window.Ask()
* BUG: Note that NoDelay and Window/Screen events still not work
git-svn-id: svn://localhost/gambas/trunk@4827 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Move .Buffered and .Refresh() from Window to Screen class as Screen
reflects better that these routines affect the entire screen
* NEW: Window has a Caption property to display a caption within the border
frame; only visible when the Window has a border
* NEW: Add NoDelay input mode to Screen class (for use with caution and a
true tty). This mode lets the programmer artifically set the keyboard
repeat delay for the program (beware: still broken)
* NEW: Add IsConsole property to check if one can enter NoDelay mode
* NEW: Add Repeater property to Screen to specify keyboard repeat
delay. This specifies the minimum interval of sucessively risen Read
events and Window.Read() calls
* NEW: Rename Window.WaitKey() to .Read()
* NEW: Rename Window.Bottom() to .Lower() and .Top() to .Raise()
* NEW: Add very-visible mode for cursor, according to ncurses doc
* NEW: Window class has a new optional parameter to specify the parent
Screen, if none given, the currently active Screen is used.
* NEW: Window class does not get a default event name anymore. If the Read
event is risen and the active Window cannot raise events, the parent
Screen raises it (beware: still broken)
* NEW: Window.Border is an integer, new constants .None, .ASCII, .ACS to
choose the border look
* NEW: Cursor resides on the new location after Window.Print() now
* OPT: Remove redundant wrapping code in Print function because ncurses
waddch() does this by itself
* OPT: Stream inheritance entirely useless due to future ReadLine()
function, hence it was removed
* OPT: Remove NCurses class, it contained only component-global routines
that were moved to main module
* BUG: Turning off attributes with the Normal attribute now works
* BUG: Changes on color attributes (also on color pairs) are immediately
visible now
* BUG: Fix string argument handling in Window.Ask(), .Insert(), .Print() and
.PrintCenter()
* BUG: Newline to Window.Print() really works now and gives the desired
effect of not returning to x=0 on the next line (like ncurses does)
git-svn-id: svn://localhost/gambas/trunk@4778 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Replace the old "INCLUDES" directive by "xxx_CPPFLAGS" in all
Makefile.am files.
[GB.XML]
* BUG: Remove debugging flags from compilation flags.
git-svn-id: svn://localhost/gambas/trunk@4714 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Window class now inherits Stream
* NEW: Renamed Window.Flush() to Window.Drain() to not have it confused
with the stream Flush instruction
* NEW: Window.Background and .Foreground properties now work
* NEW: Window.Attributes.Color changed internal behaviour to interoperate
with .Background and .Foreground properties
* NEW: Now using ncurses extensions to colour support
* BUG: Corrected typo in ContainerW property name
git-svn-id: svn://localhost/gambas/trunk@4700 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Added Color static class
* NEW: Added color support to Window class
* NEW: Window class now auto-creates a full-screen window
* NEW: Added Screen class for future use
* NEW: Moved symbols from NCurses to Screen where they belong now
* NEW: Key class supports array accessors as other Key classes do
* OPT: Drawing ASCII border if no alternate charset is supported
* BUG: Window.Print handles multiple lines correctly now
* BUG: Fixed Border problems with full-screen windows
* BUG: Fixed exchanged x,y parameters in resize internal function
* BUG: Fixed cursor mislead in internal function to copy window contents
git-svn-id: svn://localhost/gambas/trunk@4643 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Start implementing a Screen static class that is like a Window
representing the full screen.
git-svn-id: svn://localhost/gambas/trunk@4636 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Added Key static class containing key constants
* NEW: Buffered property in Window class to allow buffered output
* NEW: Refresh method in Window class to produce output if Buffered property
was set
* NEW: Flush method in Window class to clear the input queue
* NEW: Ask method in Window class to prompt the user for specific keys
* NEW: PrintCenter method in Window class to print text in the centre of the
screen
* NEW: Window array accessors now used to change character attributes
* OPT: Standard input is watched only once
* BUG: Inserted missing return statement when reading Window.Border
git-svn-id: svn://localhost/gambas/trunk@4627 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Do not call refresh routines when endwin() has already been called.
* NEW: Add an error hook that calls endwin() so that the terminal is reset
and the error message is visible.
git-svn-id: svn://localhost/gambas/trunk@4622 867c0c6c-44f3-4631-809d-bfa615b0a4ec