]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - c++/README-first
ncurses 5.6
[ncurses.git] / c++ / README-first
index b0c38fad0c10330cfddff96bc9d62d5187490d16..99c96d2b31188dd81e15748d42ecb5cd6417906b 100644 (file)
@@ -1,7 +1,36 @@
+-------------------------------------------------------------------------------
+-- Copyright (c) 1998-2003,2006 Free Software Foundation, Inc.               --
+--                                                                           --
+-- Permission is hereby granted, free of charge, to any person obtaining a   --
+-- copy of this software and associated documentation files (the             --
+-- "Software"), to deal in the Software without restriction, including       --
+-- without limitation the rights to use, copy, modify, merge, publish,       --
+-- distribute, distribute with modifications, sublicense, and/or sell copies --
+-- of the Software, and to permit persons to whom the Software is furnished  --
+-- to do so, subject to the following conditions:                            --
+--                                                                           --
+-- The above copyright notice and this permission notice shall be included   --
+-- in all copies or substantial portions of the Software.                    --
+--                                                                           --
+-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS   --
+-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF                --
+-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN --
+-- NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,       --
+-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR     --
+-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE --
+-- USE OR OTHER DEALINGS IN THE SOFTWARE.                                    --
+--                                                                           --
+-- Except as contained in this notice, the name(s) of the above copyright    --
+-- holders shall not be used in advertising or otherwise to promote the      --
+-- sale, use or other dealings in this Software without prior written        --
+-- authorization.                                                            --
+-------------------------------------------------------------------------------
+-- $Id: README-first,v 1.8 2006/04/22 22:19:37 tom Exp $
+-------------------------------------------------------------------------------
                   C++ interface to ncurses routines
 -----------------------------------------------------------------------
 
-This directory contains the source code for three C++ classes which
+This directory contains the source code for several C++ classes which
 ease the use of writing ncurses-based programs.  The code is derived
 from the libg++ CursesWindow class but enhanced for ncurses.
 
@@ -15,23 +44,21 @@ the curses.h file.  This is a steady cause of trouble because many
 common identifiers are used.  Instead now all #defines are inline
 functions which also allows strict type checking of arguments.
 
-The next enhancement is color support, which is provided by a derived
-class.  The implementation chosen here is directed to unrestricted use
-of mixes of color and monochrome windows.  This is done through virtual
-functions and means that you can write all of your code as if a color
-window is the destination.  If the destination window is monochrome these
-functions calls have no effect.
-
-       NOTE: This implementation of the color support was topic of
-       some discussion.  The introduction of virtual functions
-       introduced some overhead.  Please let us know what you think
-       about this: is it worth being able to write color supporting
-       functions.
-
-The last point to mention is the support of another package Zeyd
-distributes with his ncurses package: the panels library.  This support
-is provided by the NCursesPanel class, which is also derived from the
-NCursesWindow class.  This allows building interfaces with windows.
+The next enhancement is color support. It was originally provided by a 
+derived class. This caused some trouble if you think about Panels or
+Menus and Forms with colors. We decided to put color support into the
+base class so that any derived class may use color support also.
+The implementation chosen here is directed to unrestricted use
+of mixes of color and monochrome windows. The original NCursesColorWindow
+class is maintained for compatibility reasons.
+
+The last point to mention is the support of other packages that are
+distributed with the ncurses package: the panels library, the menu library
+and the form library. This support is provided by the NCursesPanel class, 
+which is also derived from the NCursesWindow class and the NCursesMenu
+and NCursesForm classes which are derived from NCursesPanel. This allows 
+building interfaces with windows.
+
 Please see the example program for a quick introduction.
 
 Note that at this point, there is no documentation for these classes.
@@ -52,6 +79,9 @@ welcome.  Please let us know which functionality you miss.
 Original author:
      Eric Newton         <newton@rocky.oswego.edu> for FSF's libg++
 
-Authors of this release:
+Authors of first ncurses based release (NCursesWindow, NCursesPanel):
      Ulrich Drepper      <drepper@ira.uka.de>
  and Anatoly Ivasyuk     <anatoly@nick.csh.rit.edu>
+
+Author of this release:
+     Juergen Pfeifer