Release version 0.2.0

Update documentation.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2266 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
netcrep 1997-03-28 22:21:23 +00:00
parent b424ab34b5
commit 5fbf7a4f9e
19 changed files with 526 additions and 348 deletions

124
ANNOUNCE
View file

@ -1,31 +1,116 @@
ANNOUNCE ANNOUNCE
******** ********
This is version 0.1.1 of the GNUstep GUI library (`libgnustep-gui'). This is version 0.2.0 of the GNUstep GUI library (`gnustep-gui').
What is the GNUstep GUI Library? What is the GNUstep GUI Library?
================================
It is a library of graphical user interface classes written It is a library of graphical user interface classes written
completely in the Objective-C language; the classes are based upon the completely in the Objective-C language; the classes are based upon the
OPENSTEP(tm) specification as release by NeXT Software, Inc. The OpenStep specification as release by NeXT Software, Inc. The library
library does not completely conform to the specification and has been does not completely conform to the specification and has been enhanced
enhanced in a number of ways to take advantage of the GNU system. in a number of ways to take advantage of the GNU system. These classes
These classes include graphical objects such as buttons, text fields, include graphical objects such as buttons, text fields, popup lists,
popup lists, browser lists, and windows; there are also many associated browser lists, and windows; there are also many associated classes for
classes for handling events, colors, fonts, pasteboards and images. handling events, colors, fonts, pasteboards and images.
The design of libgnustep-gui is designed in two parts. The first The GNUstep GUI Library is designed in two parts. The first part is
part is the front-end component which is independent of platform and the front-end component which is independent of platform and display
display system. This front-end is combined with a back-end component system. This front-end is combined with a back-end component which
which handles all of the display system dependent such as specific handles all of the display system dependent such as specific calls to
calls to X/Windows. This design allows the GNUstep applications to X/Windows. This design allows the GNUstep applications to have the
have the "look and feel" of the underlying display system without any "look and feel" of the underlying display system without any changes to
changes to the application, and the library can be easily ported to the application, and the library can be easily ported to other display
other display systems. systems.
The GNUstep GUI Library requires the GNU Objective-C compiler, the The GNUstep GUI Library requires the GNU Objective-C compiler, the
GNUstep Base Library, and back-end component like the GNUstep X/DPS GUI GNUstep Base Library, the TIFF Graphics library, and a back-end
Backend. component like the GNUstep X/DPS GUI Backend.
What's new in this release?
===========================
The currently released version of the library is `0.2.0'.
Noteworthy changes in version `0.2.0'
=====================================
* Additional NSImage and NSImageRep class work. Incorporated common
images for use with controls that were designed by Andrew Lindesay.
* Fill out implementation of NSColorWell class.
* Fill out implementation of NSColorList class.
* Cleaned up the header files and added missing headers, methods,
categories, and protocols; thanks to Simon Frankau for much of this
work. Major reorganization of header files. Types and constants
were moved in the files they belong. Each header file includes
only the headers it really needs. Use `@class' to forward class
definitions instead of including the corresponding class file.
* Completely reworked the NSFont and NSFontManager classes so that
NSUserDefaults is used for getting defaults and list of known
fonts are maintained.
* Initial implementation of NSCursor class.
* Almost complete implementation of NSButton and NSButtonCell class.
Buttons can not display images and/or text, handles all of the
OpenStep button types and styles.
* Fill out implementation of NSScroller class.
* Put in underlying support for optimizing drawing; flushing of
windows, backing store, and only display when needed.
* Many bug fixes and minor enhancements.
How can I get support for this software?
========================================
We currently do not have a mailing list setup explicitly for the
GNUstep GUI Library; however, you may wish to use the GNUstep
discussion mailing list for general questions and discussion. Look at
the GNUstep Web Pages for more information regarding GNUstep resources
`http://www.gnustep.org'
There are also companies which provide commercial support for the
GNUstep GUI Library, see the file `SUPPORT' for more information.
Where can you get it? How can you compile it?
==============================================
The gstep-gui-0.2.0.tar.gz distribution file has been placed on
`ftp.gnustep.org' in `pub/gnustep'.
The program requires gcc 2.7.0 or higher.
It requires the Display Ghostscript System version 0.2.0 and the
TIFF Graphics library version 3.4.
It also requires a FoundationKit library as specified by the OpenStep
specification. The FoundationKit library known to work is the GNUstep
Base Library version `0.2.12'.
The `.tar' file is compressed with GNU gzip. Gzip can be obtained by
anonymous ftp at any of the GNU archive sites.
For info about FTP via email, send email to <ftpmail@decwrl.dec.com>
with no subject line, and two-line body with line one `help' and line
two `quit'.
The most recent (not necessarily tested) snapshots of the library
will be placed in
`ftp://alpha.gnu.ai.mit.edu/gnu/gnustep'.
Where do I send bug reports?
============================
Bug reports can be sent to the GNUstep discussion list
<discussion@gnustep.org> or to NET-Community Technical Support
<support@net-community.com>.
Creators rejoice! Creators rejoice!
Scott Christley Scott Christley
@ -34,9 +119,6 @@ Scott Christley
Check out the GNUstep web site. (`http://www.gnustep.org') Check out the GNUstep web site. (`http://www.gnustep.org')
OPENSTEP and NeXT are trademarks of NeXT Software, Inc.
(`http://www.next.com')
The GNUstep GUI Library was donated to the Free Software Foundation The GNUstep GUI Library was donated to the Free Software Foundation
as part of the On-line Community project of NET-Community. as part of the On-line Community project of NET-Community.
NET-Community is a company that develops and supports free software. NET-Community is a company that develops and supports free software.

View file

@ -1,3 +1,27 @@
Fri Mar 28 14:15:52 1997 GNUstep Development <gnustep@net-community.com>
* Release version 0.2.0
* Version: Update with new version number.
* Update documentation.
* Documentation/announce.tmpl.texi: Likewise.
* Documentation/faq.tmpl.texi: Likewise.
* Documentation/gnustep-gui.tmpl.texi: Likewise.
* Documentation/install.tmpl.texi: Likewise.
* Documentation/news.tmpl.texi: Likewise.
* Documentation/readme.tmpl.texi: Likewise.
* Documentation/status.tmpl.texi: Likewise.
* Documentation/todo.tmpl.texi: Likewise.
* ANNOUNCE: Likewise.
* FAQ: Likewise.
* INSTALL: Likewise.
* NEWS: Likewise.
* README: Likewise.
* STATUS: Likewise.
* SUPPORT: Likewise.
* TODO: Likewise.
* Documentation/Makefile.in (update-top): New target.
Thu Mar 27 09:43:02 1997 GNUstep Development <gnustep@net-community.com> Thu Mar 27 09:43:02 1997 GNUstep Development <gnustep@net-community.com>
* Source/NSTextFieldCell.m: Change default point size to 16. * Source/NSTextFieldCell.m: Change default point size to 16.

View file

@ -31,7 +31,7 @@ VPATH = @srcdir@
# Installation location # Installation location
prefix = @prefix@ prefix = @prefix@
infodir = $(prefix)/info infodir = @infodir@
MAKEINFO = makeinfo MAKEINFO = makeinfo
TEXI2DVI = texi2dvi TEXI2DVI = texi2dvi
@ -87,7 +87,9 @@ version.tmpl.texi: $(srcdir)/../Version
rm -f version.tmpl.texi rm -f version.tmpl.texi
echo '@set GNUSTEP-GUI-VERSION' $(GNUSTEP_GUI_VERSION) \ echo '@set GNUSTEP-GUI-VERSION' $(GNUSTEP_GUI_VERSION) \
> version.tmpl.texi > version.tmpl.texi
echo '@set GNUSTEP-GUI-GCC-VERSION $(GNUSTEP_GUI_GCC_VERSION)' \ echo '@set GNUSTEP-GUI-GCC $(GNUSTEP_GUI_GCC)' \
>> version.tmpl.texi
echo '@set GNUSTEP-GUI-BASE $(GNUSTEP_GUI_BASE)' \
>> version.tmpl.texi >> version.tmpl.texi
echo '@set GNUSTEP-GUI-LIBTIFF $(GNUSTEP_GUI_LIBTIFF)' \ echo '@set GNUSTEP-GUI-LIBTIFF $(GNUSTEP_GUI_LIBTIFF)' \
>> version.tmpl.texi >> version.tmpl.texi
@ -228,6 +230,15 @@ objc-runtime_toc.html: version.tmpl.texi objc-runtime.tmpl.texi
install: install:
uninstall: uninstall:
update-top: ANNOUNCE FAQ INSTALL NEWS README TODO STATUS
cp ANNOUNCE ..
cp FAQ ..
cp INSTALL ..
cp NEWS ..
cp README ..
cp TODO ..
cp STATUS ..
mostlyclean: mostlyclean:
rm -f *~ rm -f *~
rm -f *.aux *.cp *.cps *.fn *.fns rm -f *.aux *.cp *.cps *.fn *.fns

View file

@ -4,12 +4,12 @@
@include version.texi @include version.texi
@end ifset @end ifset
This is version @value{GNUSTEP-GUI-VERSION} of the GNUstep GUI library (@samp{libgnustep-gui}). This is version @value{GNUSTEP-GUI-VERSION} of the GNUstep GUI library (@samp{gnustep-gui}).
What is the GNUstep GUI Library? @section What is the GNUstep GUI Library?
It is a library of graphical user interface classes written completely It is a library of graphical user interface classes written completely
in the Objective-C language; the classes are based upon the OPENSTEP(tm) in the Objective-C language; the classes are based upon the OpenStep
specification as release by NeXT Software, Inc. The library does not specification as release by NeXT Software, Inc. The library does not
completely conform to the specification and has been completely conform to the specification and has been
enhanced in a number of ways to take advantage of the GNU system. enhanced in a number of ways to take advantage of the GNU system.
@ -17,7 +17,7 @@ These classes include graphical objects such as buttons, text fields,
popup lists, browser lists, and windows; there are also many associated popup lists, browser lists, and windows; there are also many associated
classes for handling events, colors, fonts, pasteboards and images. classes for handling events, colors, fonts, pasteboards and images.
The design of libgnustep-gui is designed in two parts. The first part is the The GNUstep GUI Library is designed in two parts. The first part is the
front-end component which is independent of platform and display system. front-end component which is independent of platform and display system.
This front-end is combined with a back-end component which handles all of This front-end is combined with a back-end component which handles all of
the display system dependent such as specific calls to X/Windows. This the display system dependent such as specific calls to X/Windows. This
@ -25,9 +25,65 @@ design allows the GNUstep applications to have the "look and feel" of
the underlying display system without any changes to the application, and the underlying display system without any changes to the application, and
the library can be easily ported to other display systems. the library can be easily ported to other display systems.
The GNUstep GUI Library requires the GNU Objective-C compiler, the GNUstep The GNUstep GUI Library requires the GNU Objective-C compiler, the
Base Library, and back-end component like the GNUstep X/DPS GUI Backend. GNUstep Base Library, the TIFF Graphics library, and a back-end
component like the GNUstep X/DPS GUI Backend.
@section What's new in this release?
@set ANNOUNCE-ONLY
@include news.texi
@clear ANNOUNCE-ONLY
@section How can I get support for this software?
We currently do not have a mailing list setup explicitly for the
GNUstep GUI Library; however, you may wish to use the GNUstep
discussion mailing list for general questions and discussion. Look at
the GNUstep Web Pages for more information regarding GNUstep resources
@url{http://www.gnustep.org}
There are also companies which provide commercial support for the
GNUstep GUI Library, see the file @file{SUPPORT} for more
information.
@section Where can you get it? How can you compile it?
@ifset GNUSTEP-GUI-FTP-MACHINE
The gstep-gui-@value{GNUSTEP-GUI-VERSION}.tar.gz distribution
file has been placed on @samp{@value{GNUSTEP-GUI-FTP-MACHINE}} in
@samp{@value{GNUSTEP-GUI-FTP-DIRECTORY}}.
@end ifset
@ifclear GNUSTEP-GUI-FTP-MACHINE
The gstep-gui-@value{GNUSTEP-GUI-VERSION}.tar.gz distribution
file has not been made available by anonymous ftp.
@end ifclear
The program requires gcc @value{GNUSTEP-GUI-GCC} or higher.
It requires the Display Ghostscript System version
@value{GNUSTEP-GUI-DGS} and the TIFF Graphics library version
@value{GNUSTEP-GUI-LIBTIFF}.
It also requires a FoundationKit library as specified by the OpenStep
specification. The FoundationKit library known to work is the GNUstep
Base Library version @samp{@value{GNUSTEP-GUI-BASE}}.
The @samp{.tar} file is compressed with GNU gzip. Gzip can be obtained by
anonymous ftp at any of the GNU archive sites.
For info about FTP via email, send email to
@email{ftpmail@@decwrl.dec.com} with no subject line, and two-line body
with line one @samp{help} and line two @samp{quit}.
The most recent (not necessarily tested) snapshots of the library will
be placed in
@url{ftp://@value{GNUSTEP-GUI-SNAP-FTP-MACHINE}/@value{GNUSTEP-GUI-SNAP-FTP-DIRECTORY}}.
@section Where do I send bug reports?
Bug reports can be sent to the GNUstep discussion list
@email{discussion@@gnustep.org} or to NET-Community Technical
Support @email{support@@net-community.com}.
@noindent @noindent
Creators rejoice!@* Creators rejoice!@*
@ -39,8 +95,6 @@ Scott Christley@*
Check out the GNUstep web site. (@url{http://www.gnustep.org}) Check out the GNUstep web site. (@url{http://www.gnustep.org})
OPENSTEP and NeXT are trademarks of NeXT Software, Inc. (@url{http://www.next.com})
The GNUstep GUI Library was donated to the Free Software Foundation The GNUstep GUI Library was donated to the Free Software Foundation
as part of the On-line Community project of NET-Community. NET-Community is as part of the On-line Community project of NET-Community. NET-Community is
a company that develops and supports free software. Check out a company that develops and supports free software. Check out

View file

@ -7,7 +7,7 @@
Maintained by Scott Christley @email{scottc@@net-community.com}. Maintained by Scott Christley @email{scottc@@net-community.com}.
Last updated August 26 1996. The most up-to-date version of this FAQ Last updated March 28 1997. The most up-to-date version of this FAQ
is available at: is available at:
@example @example
@ -34,19 +34,19 @@ portion of the OpenStep standard. However the implementation has
been written to take advantage of GNUstep enhancements wherever possible. been written to take advantage of GNUstep enhancements wherever possible.
@item @b{Explain the organization of the front- and back-ends.} @item @b{Explain the organization of the front and back-ends.}
The GNUstep GUI Library is divided into a front- and back-end. The The GNUstep GUI Library is divided into a front and back-end. The
front-end contains the majority of implementation, but leaves out the front-end contains the majority of implementation, but leaves out the
low-level drawing and event code. A back-end can override whatever low-level drawing and event code. A back-end can override whatever
methods necessary in order to implement low-level drawing event methods necessary in order to implement low-level drawing event
receiving. Different back-ends will make GNUstep available on various receiving. Different back-ends will make GNUstep available on various
platforms. The default GNU back-end will run on top of X Windows and platforms. The default GNU back-end will run on top of the X Window
the DisplayGhostScript Server. Other back-ends could allow GNUstep to System and the Display Ghostscript Server. Other back-ends could allow
run on OpenGL, OS/2, and WIN32 graphics/event platforms. Much work GNUstep to run on Mac, OS/2, and WIN32 graphics/event platforms.
will be saved by this clean separation between front- and back-end, Much work will be saved by this clean separation between front and
because it allows different platforms to share the large amount of back-end, because it allows different platforms to share the large
front-end code. amount of front-end code.
The front-end does not specify what mechanism to use in order to "plug The front-end does not specify what mechanism to use in order to "plug
in" the back-end; that is the back-end implementor's choice. At least in" the back-end; that is the back-end implementor's choice. At least
@ -54,19 +54,21 @@ two backends will use @samp{+poseAs:} method, for example, running
@samp{[XDPSWindow poseAs: [NSWindow class]]}. Using @samp{+poseAs:} is @samp{[XDPSWindow poseAs: [NSWindow class]]}. Using @samp{+poseAs:} is
more flexible than using Categories because it allows the the back-end more flexible than using Categories because it allows the the back-end
implementor to choose what to override in the front-end, instead of implementor to choose what to override in the front-end, instead of
having the interface between front- and back-end fixed by the front-end. having the interface between front and back-end fixed by the front-end.
@item @b{What is the current state of development of the front-end?} @item @b{What is the current state of development of the front-end?}
A number of classes in the front-end are complete or almost complete; A number of classes in the front-end are complete or almost complete;
these include: NSActionCell, NSButtonCell, NSButton, NSCell, NSControl, these include: NSActionCell, NSButtonCell, NSButton, NSCell, NSColor,
NSEvent, NSFont, NSResponder, and NSSlider. NSColorWell, NSControl, NSCursor, NSEvent, NSFont, NSImage, NSImageRep,
NSBitmapImageRep, NSResponder, NSSlider, NSScroller, NSTextField, and
NSTextFieldCell.
Other classes are complete enough to use, but still require some major Other classes are complete enough to use, but still require some major
additions before being considered almost complete: NSApplication, NSBox, additions before being considered almost complete: NSApplication, NSBox,
NSColor, NSFontManager, NSMenu, NSMenuCell, NSPopUpButton, NSSliderCell, NSFontManager, NSMatrix, NSMenu, NSMenuCell, NSPopUpButton,
NSText, NSTextField, NSTextFieldCell, NSView, and NSWindow. NSSliderCell, NSText, NSView, and NSWindow.
You can review the most up-to-date status report at: You can review the most up-to-date status report at:
@ -76,7 +78,7 @@ You can review the most up-to-date status report at:
@item @b{What back-ends are available?} @item @b{What back-ends are available?}
The official back-end is the GNUstep GUI X/DPS Backend which runs The official back-end is the GNUstep X/DPS GUI Backend which runs
under the X Window System and interfaces to the Display Ghostscript under the X Window System and interfaces to the Display Ghostscript
System. You can learn more at: System. You can learn more at:
@ -86,19 +88,36 @@ System. You can learn more at:
@item @b{Where can I get a copy?} @item @b{Where can I get a copy?}
It is not yet publically released. When it is available you will be @ifset GNUSTEP-GUI-FTP-MACHINE
able to find it in: The gstep-gui-@value{GNUSTEP-GUI-VERSION}.tar.gz distribution
file has been placed on @samp{@value{GNUSTEP-GUI-FTP-MACHINE}} in
@samp{@value{GNUSTEP-GUI-FTP-DIRECTORY}}.
@end ifset
@ifclear GNUSTEP-GUI-FTP-MACHINE
The gstep-gui-@value{GNUSTEP-GUI-VERSION}.tar.gz distribution
file has not been made available by anonymous ftp.
@end ifclear
@example The program requires gcc @value{GNUSTEP-GUI-GCC} or higher.
@url{ftp://@value{GNUSTEP-GUI-FTP-MACHINE}/@value{GNUSTEP-GUI-FTP-DIRECTORY}}
@end example
@noindent It requires the Display Ghostscript System version
Pre-release snapshots are available at: @value{GNUSTEP-GUI-DGS} and the TIFF Graphics library version
@value{GNUSTEP-GUI-LIBTIFF}.
@example It also requires a FoundationKit library as specified by the OpenStep
@url{ftp://@value{GNUSTEP-GUI-SNAP-FTP-MACHINE}/@value{GNUSTEP-GUI-SNAP-FTP-DIRECTORY}} specification. The FoundationKit library known to work is the GNUstep
@end example Base Library version @samp{@value{GNUSTEP-GUI-BASE}}.
The @samp{.tar} file is compressed with GNU gzip. Gzip can be obtained by
anonymous ftp at any of the GNU archive sites.
For info about FTP via email, send email to
@email{ftpmail@@decwrl.dec.com} with no subject line, and two-line body
with line one @samp{help} and line two @samp{quit}.
The most recent (not necessarily tested) snapshots of the library will
be placed in
@url{ftp://@value{GNUSTEP-GUI-SNAP-FTP-MACHINE}/@value{GNUSTEP-GUI-SNAP-FTP-DIRECTORY}}.
@end enumerate @end enumerate

View file

@ -25,7 +25,7 @@ This file documents the GNUstep GUI Library.
@ifclear NO-TEXI2HTML @ifclear NO-TEXI2HTML
@subtitle DRAFT Edition for GNUstep GUI Library @value{GNUSTEP-GUI-VERSION} @subtitle DRAFT Edition for GNUstep GUI Library @value{GNUSTEP-GUI-VERSION}
@subtitle Last revision August 1996 @subtitle Last revision August 1996
@c @subtitle For GCC Version @value{GNUSTEP-GUI-GCC-VERSION} @c @subtitle For GCC Version @value{GNUSTEP-GUI-GCC}
@author Scott Christley @author Scott Christley
@sp 1 @sp 1
@end ifclear @end ifclear
@ -51,7 +51,7 @@ into another language, under the above conditions for modified versions.
@title The GNUstep GUI Library @title The GNUstep GUI Library
@subtitle DRAFT Edition for GNUstep GUI Library @value{GNUSTEP-GUI-VERSION} @subtitle DRAFT Edition for GNUstep GUI Library @value{GNUSTEP-GUI-VERSION}
@subtitle Last revision August 1996 @subtitle Last revision August 1996
@c @subtitle For GCC Version @value{GNUSTEP-GUI-GCC-VERSION} @c @subtitle For GCC Version @value{GNUSTEP-GUI-GCC}
@author Scott Christley @author Scott Christley
@page @page
@ -60,7 +60,7 @@ Copyright @copyright{} 1996 NET-Community
@sp 2 @sp 2
GNUstep GUI Library Version @value{GNUSTEP-GUI-VERSION}@* GNUstep GUI Library Version @value{GNUSTEP-GUI-VERSION}@*
@c For GCC Version @value{GNUSTEP-GUI-GCC-VERSION}@* @c For GCC Version @value{GNUSTEP-GUI-GCC}@*
@sp 1 @sp 1
Published by NET-Community@* Published by NET-Community@*
Portland, Oregon, USA@* Portland, Oregon, USA@*

View file

@ -6,23 +6,18 @@
@end ifset @end ifset
This file documents the installation of the GNUstep GUI This file documents the installation of the GNUstep GUI
Library, @samp{libgnustep-gui}. Copyright (C) 1996 Free Software Library, @samp{gnustep-gui}. Copyright (C) 1996 Free Software
Foundation, Inc. You may copy, distribute, and modify it freely as long Foundation, Inc. You may copy, distribute, and modify it freely as long
as you preserve this copyright notice and permission notice. as you preserve this copyright notice and permission notice.
This is version @value{GNUSTEP-GUI-VERSION} of the GNUstep GUI library. This is version @value{GNUSTEP-GUI-VERSION} of the GNUstep GUI library.
@section Installing @samp{libgnustep-gui} @section Installing @samp{gnustep-gui}
These notes are for a GNU system that can run @file{./configure}. For
Windows NT/95, if you have a working bash shell then you can follow
these instructions; otherwise, follow the MediaBook Environment specific
instructions below.
Here is a quick-and-dirty example of installation commands: Here is a quick-and-dirty example of installation commands:
@example @example
./configure --prefix=/usr/local ./configure --prefix=/usr/GNUstep
make make
make install make install
@end example @end example
@ -32,10 +27,10 @@ Here are more detailed instructions.
@enumerate @enumerate
@item @item
Install @samp{gcc}. The library requires gcc version Install @samp{gcc}. The library requires gcc version
@value{GNUSTEP-GUI-GCC-VERSION} or later. @value{GNUSTEP-GUI-GCC} or later.
@item @item
Install @samp{libgnustep-base}. This library requires the classes in Install @samp{gnustep-base}. This library requires the classes in
the GNUstep Base Library. You must also apply the Objective-C the GNUstep Base Library. You must also apply the Objective-C
Runtime patches to GCC which makes the runtime thread-safe, if Runtime patches to GCC which makes the runtime thread-safe, if
your version of GCC lacks them. your version of GCC lacks them.
@ -181,74 +176,3 @@ The file @file{configure.in} is used as a template to create
need it if you want to regenerate @file{configure} using a newer need it if you want to regenerate @file{configure} using a newer
version of @file{autoconf}. version of @file{autoconf}.
@end enumerate @end enumerate
@section Installing in the MediaBook environment
The MediaBook environment under Windows NT and Window 95 utilizes the
native shell of the operating systems, so it does not require you to
have a @samp{bash} or UNIX-like shell to configure and install the library.
The MediaBook environment utilizes the @file{configure.bat} batch file to
configure the package; it creates the @samp{Makefile(s)} by processing a
@samp{Makefile.in} with its corresponding @samp{Makefile.sed.nt}.
The MediaBook environment should have these environment variables
defined for the installation to work.
@table @strong
@item MB_DEV
The drive and directory of the development root. For example
it may be @samp{C:\MBCD\Development}; it is analogous to @samp{/usr/local}
on UNIX systems.
@item MB_H
The directory name within the development root @samp{MB_DEV} where
the header files are stored; e.g. @samp{Headers}.
@item MB_LIB
The directory name within the development root @samp{MB_DEV} where
the library files are stored; this tends to be specific to
the target operating system, e.g. @samp{Libraries\MS-WIN32}.
@end table
To install the headers and import libraries:
@smallexample
configure.bat
make install
@end smallexample
Here are more detailed instructions.
@enumerate
@item
Install @samp{gcc}. The library requires gcc version
@value{GNUSTEP-GUI-GCC-VERSION} or later.
@item
Install @samp{libgnustep-base}. This library requires the classes in
the GNUstep Base Library. You must also apply the Objective-C
Runtime patches to GCC which makes the runtime thread-safe, if
your version of GCC lacks them.
@item
Configure the package for your system. In the directory that this
file is in, type @file{configure.bat}.
The @file{configure.bat} batch file processes the @file{Makefile.in} templates
with the corresponding @file{Makefile.sed.nt} sed script file to produce
the resultant @file{Makefile(s)}.
By default, @samp{make install} will install the package's header files
into @samp{$(MB_DEV)\$(MB_H)} and the library files in
@samp{$(MB_DEV)\$(MB_LIB)}. You should have these environment variables
defined before you run @samp{make}. You can change the development root
@samp{MB_DEV} by giving a value for the @samp{prefix} variable when you run
@samp{make}, e.g.,
@smallexample
make prefix=C:\MBCD\MyDevelopment
@end smallexample
@item
Type @samp{make install} to install the import libraries, header
files, and documentation.
@end enumerate

View file

@ -1,5 +1,7 @@
@c -*-texinfo-*- @c -*-texinfo-*-
@ifclear ANNOUNCE-ONLY
@chapter NEWS @chapter NEWS
@end ifclear
@ifset TEXT-ONLY @ifset TEXT-ONLY
@include version.texi @include version.texi
@ -7,6 +9,57 @@
The currently released version of the library is @samp{@value{GNUSTEP-GUI-VERSION}}. The currently released version of the library is @samp{@value{GNUSTEP-GUI-VERSION}}.
@section Noteworthy changes in version @samp{0.2.0}
@itemize @bullet
@item
Additional NSImage and NSImageRep class work. Incorporated common
images for use with controls that were designed by Andrew Lindesay.
@item
Fill out implementation of NSColorWell class.
@item
Fill out implementation of NSColorList class.
@item
Cleaned up the header files and added missing headers, methods,
categories, and protocols; thanks to Simon Frankau for much of this
work. Major reorganization of header files. Types and constants were
moved in the files they belong. Each header file includes only the
headers it really needs. Use @samp{@@class} to forward class definitions
instead of including the corresponding class file.
@item
Completely reworked the NSFont and NSFontManager classes so that
NSUserDefaults is used for getting defaults and list of known fonts are
maintained.
@item
Initial implementation of NSCursor class.
@item
Almost complete implementation of NSButton and NSButtonCell class.
Buttons can not display images and/or text, handles all of the OpenStep
button types and styles.
@item
Fill out implementation of NSScroller class.
@item
Put in underlying support for optimizing drawing; flushing of windows,
backing store, and only display when needed.
@item
Many bug fixes and minor enhancements.
@end itemize
@c ====================================================================
@c Keep the next line just below the list of changes in most recent version.
@ifclear ANNOUNCE-ONLY
@section Noteworthy changes in version @samp{0.1.1} @section Noteworthy changes in version @samp{0.1.1}
@itemize @bullet @itemize @bullet
@ -58,3 +111,8 @@ created for the AppKit and DPSClient directories. This should allow
both GNUstep and other OpenStep implementations to reside on the both GNUstep and other OpenStep implementations to reside on the
same machine without conflicts. same machine without conflicts.
@end itemize @end itemize
Also see the @samp{ChangeLog} file for more detail.
@end ifclear
@c end ifclear ANNOUNCE-ONLY

View file

@ -5,7 +5,7 @@
@include version.texi @include version.texi
@end ifset @end ifset
This is version @value{GNUSTEP-GUI-VERSION} of the GNUstep GUI library (@samp{libgnustep-gui}). This is version @value{GNUSTEP-GUI-VERSION} of the GNUstep GUI library (@samp{gnustep-gui}).
Here is some introductory info to get you started: Here is some introductory info to get you started:
@ -39,4 +39,4 @@ could be better. Send me bug reports.
@noindent @noindent
Creators rejoice!@* Creators rejoice!@*
Scott Christley@* Scott Christley@*
@email{scottc@@net-community.com} @email{scottc@@net-community.com}

View file

@ -5,7 +5,7 @@
@include version.texi @include version.texi
@end ifset @end ifset
Last updated August 1996. The most up-to-date version of this status Last updated March 1997. The most up-to-date version of this status
report is available at: report is available at:
@example @example
@ -35,8 +35,7 @@ Unknown status.
@section Classes @section Classes
Currently none of the classes raise exceptions; and notifications and Currently none of the classes raise exceptions.
notifications centers are non-existent.
@table @strong @table @strong
@ -53,10 +52,10 @@ a number of the methods that perform operations on windows are
empty. Modal loops are not implemented. empty. Modal loops are not implemented.
@item NSBitmapImageRep:: [4] @item NSBitmapImageRep:: [4]
Many of the methods have code, but the Implementation has been filled out enough so that TIFF images can be
class has not been made to work; though, some of this could be due to displayed; its possible that not all TIFF image types are handled yet as
lack of backend implementation. No compression nor generation of the backend implementation must deal with each of them. No compression
TIFF representations. nor generation of TIFF representations.
@item NSBox:: [8] @item NSBox:: [8]
Many of the methods have code, but whether the class Many of the methods have code, but whether the class
@ -67,21 +66,20 @@ backend.
@item NSBrowserCell:: [2] @item NSBrowserCell:: [2]
@item NSButton:: [8] @item NSButton:: [9]
Repeat intervals and key equivalents not Repeat intervals and key equivalents not
implemented. There should be little need for backend implementation implemented. There should be little need for backend implementation
as NSButton is mainly behavior; its cell class does all drawing. as NSButton is mainly behavior; its cell class does all drawing.
@item NSButtonCell:: [8] @item NSButtonCell:: [9]
Repeat intervals and key equivalents not This class is basically complete; repeat intervals and key equivalents need
implemented. Actual ability to use will depend upon backend to be implemented to finalize the class.
implementation.
@item NSCachedImageRep:: [4] @item NSCachedImageRep:: [4]
All methods are implemented but its unknown if the class works. All methods are implemented but its unknown if the class works.
@item NSCell:: [8] @item NSCell:: [8]
No determination of component sizes. Editting No determination of component sizes. Editing
text, validating input, represented object, and some other odd and end text, validating input, represented object, and some other odd and end
methods not implemented. methods not implemented.
@ -91,18 +89,24 @@ methods not implemented.
Now implements all colorspaces; however, does not know the difference Now implements all colorspaces; however, does not know the difference
between calibrated and device. between calibrated and device.
@item NSColorList:: [2] @item NSColorList:: [9]
Implementation should be fairly complete; may need some work for reading
and writing color list files.
@item NSColorPanel:: [2] @item NSColorPanel:: [2]
@item NSColorPicker:: [2] @item NSColorPicker:: [2]
@item NSColorWell:: [2] @item NSColorWell:: [9]
Implementation should be fairly complete; backend implementation required
for the actual drawing of the control.
@item NSControl:: [8] @item NSControl:: [8]
No field editor; doesn't know how to calculate its size. No field editor; doesn't know how to calculate its size.
@item NSCursor:: [2] @item NSCursor:: [8]
Implementation should be fairly complete; backend implementation required
to be usable. May not handle user specified images.
@item NSCustomImageRep:: [4] @item NSCustomImageRep:: [4]
All methods are implemented but it is unknown if the class works. All methods are implemented but it is unknown if the class works.
@ -113,7 +117,7 @@ All methods are implemented but it is unknown if the class works.
@item NSDataLinkPanel:: [2] @item NSDataLinkPanel:: [2]
@item NSDPSContext:: [6] @item NSDPSContext:: [6]
Enough implementation for the backend to do Enough implementation for the backend to do
something useful; most methods that deal specifically with Display something useful; most methods that deal specifically with Display
Ghostscript are empty. Ghostscript are empty.
@ -123,9 +127,9 @@ Ghostscript are empty.
@item NSEvent:: [9] @item NSEvent:: [9]
All methods implemented except periodic events. All methods implemented except periodic events.
@item NSFont:: [6] @item NSFont:: [9]
Maintains no AFM or glyph information. Has been filled out some more Now maintains AFM and glyph information but requires the backend
so as to be quite usable with the Display Ghostscript System. implementation to supply it.
@item NSFontManager:: [6] @item NSFontManager:: [6]
Has been filled out some more so as to be usable with the Display Has been filled out some more so as to be usable with the Display
@ -140,18 +144,21 @@ May be usable with backend implementation.
@item NSHelpPanel:: [2] @item NSHelpPanel:: [2]
@item NSImage:: [4] @item NSImage:: [8]
All methods are implemented but it is unknown if the class works. Additional implementation to the point where TIFF images can be
displayed; requires sufficient backend implementation in the NSImageRep
classes.
@item NSImageRep:: [4] @item NSImageRep:: [8]
All methods are implemented but it is unknown if the class works. Additional implementation to the point where TIFF images can be
displayed; requires sufficient backend implementation.
@item NSMatrix:: [6] @item NSMatrix:: [6]
Many methods are implemented but more thorough testing needs to be done. Many methods are implemented but more thorough testing needs to be done.
@item NSMenu:: [8] @item NSMenu:: [2]
Almost complete implementation; actual ability to use depends upon Implementation was removed until a more efficient mechanism can be
backend implementation. devised. The OpenStep specification has changed regarding this class.
@item NSMenuCell:: [8] @item NSMenuCell:: [8]
Almost complete implementation; actual ability to use depends upon Almost complete implementation; actual ability to use depends upon
@ -186,8 +193,9 @@ Usability greatly depends upon backend implementation.
@item NSScreen:: [6] @item NSScreen:: [6]
Knows nothing about window depth, greatly depends upon backend implementation. Knows nothing about window depth, greatly depends upon backend implementation.
@item NSScroller:: [2] @item NSScroller:: [9]
Most behaviour can probably be taken from NSSlider and NSSliderCell. Filled out implementation so that it should be almost complete; requires
backend implementation of a few methods.
@item NSScrollView:: [2] @item NSScrollView:: [2]
@ -215,44 +223,41 @@ Does not properly send text delegate messages.
Usability greatly depends upon backend implementation. Usability greatly depends upon backend implementation.
@item NSView:: [6] @item NSView:: [6]
Maintains subview lists, notification of new Maintains subview lists, notification of new window, send resizing
window, send resizing messages to subviews. No rotation, scaling, or messages to subviews. Rotation, scaling, or translation of user
translation of user coordinate space; coordinate conversion doesn't coordinate space depends upon backend implementation. Event handling
take user coordinate space into affect, so everything is based upon and tracking rectangles implemented. Cursor management implemented. No
device coordinate space. Event handling and tracking rectangles scrolling capability. No printing, paging, or postscript.
implemented. No scrolling capability. No cursor management. No
printing, paging, or postscript.
@item NSWindow:: [4] @item NSWindow:: [4]
Most methods not implemented, but maybe usable with backend implementation. Most methods not implemented, but maybe usable with backend implementation.
@item NSWorkspace:: [2] @item NSWorkspace:: [2]
Erich Boleyn has some initial ideas and design.
@end table @end table
@section Protocols @section Protocols
@table @strong @table @strong
@item NSChangeSpelling:: [0] @item NSChangeSpelling:: [9]
@item NSColorPickingCustom:: [0] @item NSColorPickingCustom:: [9]
@item NSColorPickingDefault:: [0] @item NSColorPickingDefault:: [9]
@item NSDraggingDestination:: [0] @item NSDraggingDestination:: [9]
@item NSDraggingInfo:: [0] @item NSDraggingInfo:: [9]
@item NSDraggingSource:: [0] @item NSDraggingSource:: [9]
@item NSIgnoreMisspelledWords:: [0] @item NSIgnoreMisspelledWords:: [9]
@item NSMenuActionResponder:: [0] @item NSMenuActionResponder:: [9]
@item NSNibAwaking:: [0] @item NSNibAwaking:: [9]
@item NSServicesRequests:: [0] @item NSServicesRequests:: [9]
@end table @end table

View file

@ -29,7 +29,7 @@ That would be optimal because GNUstep and non-GNUstep programs would then
be able to partially interoperate. be able to partially interoperate.
@item @item
Expand the image handling capabilities beyond OPENSTEP. There is no Expand the image handling capabilities beyond OpenStep. There is no
reason why we must limit ourselves to EPS and TIFF bitmaps, we should reason why we must limit ourselves to EPS and TIFF bitmaps, we should
have image representations for as many bitmap formats as possible; have image representations for as many bitmap formats as possible;
excluding GIF files which are currently restricted by patents. excluding GIF files which are currently restricted by patents.
@ -41,6 +41,8 @@ interface with the GNU Dictionary project.
@item @item
GNUstep window manager. Though not part of the GUI Library per se, an X GNUstep window manager. Though not part of the GUI Library per se, an X
Window manager that gives the complete desktop the GNUstep look and feel Window manager that gives the complete desktop the GNUstep look and feel
would be a great thing to have. would be a great thing to have. There is actually some work that has
been started; a clearly defined interface between GNUstep and the X
Window manager needs to be defined and implemented.
@end itemize @end itemize

53
FAQ
View file

@ -3,7 +3,7 @@ Frequently Asked Questions With Answers
Maintained by Scott Christley <scottc@net-community.com>. Maintained by Scott Christley <scottc@net-community.com>.
Last updated August 26 1996. The most up-to-date version of this FAQ Last updated March 28 1997. The most up-to-date version of this FAQ
is available at: is available at:
`ftp://www.gnustep.org/Documentation/gnustep-gui/gnustep-gui_toc.html' `ftp://www.gnustep.org/Documentation/gnustep-gui/gnustep-gui_toc.html'
@ -26,19 +26,19 @@ is available at:
been written to take advantage of GNUstep enhancements wherever been written to take advantage of GNUstep enhancements wherever
possible. possible.
2. Explain the organization of the front- and back-ends. 2. Explain the organization of the front and back-ends.
The GNUstep GUI Library is divided into a front- and back-end. The The GNUstep GUI Library is divided into a front and back-end. The
front-end contains the majority of implementation, but leaves out front-end contains the majority of implementation, but leaves out
the low-level drawing and event code. A back-end can override the low-level drawing and event code. A back-end can override
whatever methods necessary in order to implement low-level drawing whatever methods necessary in order to implement low-level drawing
event receiving. Different back-ends will make GNUstep available event receiving. Different back-ends will make GNUstep available
on various platforms. The default GNU back-end will run on top of on various platforms. The default GNU back-end will run on top of
X Windows and the DisplayGhostScript Server. Other back-ends the X Window System and the Display Ghostscript Server. Other
could allow GNUstep to run on OpenGL, OS/2, and WIN32 back-ends could allow GNUstep to run on Mac, OS/2, and WIN32
graphics/event platforms. Much work will be saved by this clean graphics/event platforms. Much work will be saved by this clean
separation between front- and back-end, because it allows separation between front and back-end, because it allows different
different platforms to share the large amount of front-end code. platforms to share the large amount of front-end code.
The front-end does not specify what mechanism to use in order to The front-end does not specify what mechanism to use in order to
"plug in" the back-end; that is the back-end implementor's choice. "plug in" the back-end; that is the back-end implementor's choice.
@ -46,20 +46,21 @@ is available at:
running `[XDPSWindow poseAs: [NSWindow class]]'. Using `+poseAs:' running `[XDPSWindow poseAs: [NSWindow class]]'. Using `+poseAs:'
is more flexible than using Categories because it allows the the is more flexible than using Categories because it allows the the
back-end implementor to choose what to override in the front-end, back-end implementor to choose what to override in the front-end,
instead of having the interface between front- and back-end fixed instead of having the interface between front and back-end fixed
by the front-end. by the front-end.
3. What is the current state of development of the front-end? 3. What is the current state of development of the front-end?
A number of classes in the front-end are complete or almost A number of classes in the front-end are complete or almost
complete; these include: NSActionCell, NSButtonCell, NSButton, complete; these include: NSActionCell, NSButtonCell, NSButton,
NSCell, NSControl, NSEvent, NSFont, NSResponder, and NSSlider. NSCell, NSColor, NSColorWell, NSControl, NSCursor, NSEvent,
NSFont, NSImage, NSImageRep, NSBitmapImageRep, NSResponder,
NSSlider, NSScroller, NSTextField, and NSTextFieldCell.
Other classes are complete enough to use, but still require some Other classes are complete enough to use, but still require some
major additions before being considered almost complete: major additions before being considered almost complete:
NSApplication, NSBox, NSColor, NSFontManager, NSMenu, NSMenuCell, NSApplication, NSBox, NSFontManager, NSMatrix, NSMenu, NSMenuCell,
NSPopUpButton, NSSliderCell, NSText, NSTextField, NSTextFieldCell, NSPopUpButton, NSSliderCell, NSText, NSView, and NSWindow.
NSView, and NSWindow.
You can review the most up-to-date status report at: You can review the most up-to-date status report at:
@ -67,7 +68,7 @@ is available at:
4. What back-ends are available? 4. What back-ends are available?
The official back-end is the GNUstep GUI X/DPS Backend which runs The official back-end is the GNUstep X/DPS GUI Backend which runs
under the X Window System and interfaces to the Display Ghostscript under the X Window System and interfaces to the Display Ghostscript
System. You can learn more at: System. You can learn more at:
@ -75,13 +76,27 @@ is available at:
5. Where can I get a copy? 5. Where can I get a copy?
It is not yet publically released. When it is available you will The gstep-gui-0.2.0.tar.gz distribution file has been placed on
be able to find it in: `ftp.gnustep.org' in `pub/gnustep'.
`ftp://alpha.gnu.ai.mit.edu/gnu/gnustep' The program requires gcc 2.7.0 or higher.
Pre-release snapshots are available at: It requires the Display Ghostscript System version 0.2.0 and the
TIFF Graphics library version 3.4.
`ftp://ftp.net-community.com/pub/GNUstep' It also requires a FoundationKit library as specified by the
OpenStep specification. The FoundationKit library known to work
is the GNUstep Base Library version `0.2.12'.
The `.tar' file is compressed with GNU gzip. Gzip can be obtained
by anonymous ftp at any of the GNU archive sites.
For info about FTP via email, send email to
<ftpmail@decwrl.dec.com> with no subject line, and two-line body
with line one `help' and line two `quit'.
The most recent (not necessarily tested) snapshots of the library
will be placed in
`ftp://alpha.gnu.ai.mit.edu/gnu/gnustep'.

92
INSTALL
View file

@ -2,35 +2,29 @@ Installation
************ ************
This file documents the installation of the GNUstep GUI Library, This file documents the installation of the GNUstep GUI Library,
`libgnustep-gui'. Copyright (C) 1996 Free Software Foundation, Inc. `gnustep-gui'. Copyright (C) 1996 Free Software Foundation, Inc. You
You may copy, distribute, and modify it freely as long as you preserve may copy, distribute, and modify it freely as long as you preserve this
this copyright notice and permission notice. copyright notice and permission notice.
This is version 0.1.1 of the GNUstep GUI library. This is version 0.2.0 of the GNUstep GUI library.
Installing `libgnustep-gui' Installing `gnustep-gui'
=========================== ========================
These notes are for a GNU system that can run `./configure'. For
Windows NT/95, if you have a working bash shell then you can follow
these instructions; otherwise, follow the MediaBook Environment specific
instructions below.
Here is a quick-and-dirty example of installation commands: Here is a quick-and-dirty example of installation commands:
./configure --prefix=/usr/local ./configure --prefix=/usr/GNUstep
make make
make install make install
Here are more detailed instructions. Here are more detailed instructions.
1. Install `gcc'. The library requires gcc version 1. Install `gcc'. The library requires gcc version 2.7.0 or later.
2.7.0 or later.
2. Install `libgnustep-base'. This library requires the classes in 2. Install `gnustep-base'. This library requires the classes in the
the GNUstep Base Library. You must also apply the Objective-C GNUstep Base Library. You must also apply the Objective-C Runtime
Runtime patches to GCC which makes the runtime thread-safe, if patches to GCC which makes the runtime thread-safe, if your
your version of GCC lacks them. version of GCC lacks them.
3. Install the `TIFF' library. This library requires the header files 3. Install the `TIFF' library. This library requires the header files
in the TIFF library to compile; the TIFF library is used for the in the TIFF library to compile; the TIFF library is used for the
@ -40,7 +34,7 @@ instructions below.
4. Install `DGS'. Though this library does not directly use the 4. Install `DGS'. Though this library does not directly use the
Display Ghostscript System; it does require the DPS client library Display Ghostscript System; it does require the DPS client library
headers in order to compile. You should have at least version headers in order to compile. You should have at least version
0.1.1; likewise, you could just install the DPS client library 0.2.0; likewise, you could just install the DPS client library
itself in which use version 6.1. itself in which use version 6.1.
5. Configure the package for your system. In the directory that this 5. Configure the package for your system. In the directory that this
@ -153,63 +147,3 @@ instructions below.
if you want to regenerate `configure' using a newer version of if you want to regenerate `configure' using a newer version of
`autoconf'. `autoconf'.
Installing in the MediaBook environment
=======================================
The MediaBook environment under Windows NT and Window 95 utilizes the
native shell of the operating systems, so it does not require you to
have a `bash' or UNIX-like shell to configure and install the library.
The MediaBook environment utilizes the `configure.bat' batch file to
configure the package; it creates the `Makefile(s)' by processing a
`Makefile.in' with its corresponding `Makefile.sed.nt'.
The MediaBook environment should have these environment variables
defined for the installation to work.
*MB_DEV*
The drive and directory of the development root. For example it
may be `C:\MBCD\Development'; it is analogous to `/usr/local' on
UNIX systems.
*MB_H*
The directory name within the development root `MB_DEV' where the
header files are stored; e.g. `Headers'.
*MB_LIB*
The directory name within the development root `MB_DEV' where the
library files are stored; this tends to be specific to the target
operating system, e.g. `Libraries\MS-WIN32'.
To install the headers and import libraries:
configure.bat
make install
Here are more detailed instructions.
1. Install `gcc'. The library requires gcc version
2.7.0 or later.
2. Install `libgnustep-base'. This library requires the classes in
the GNUstep Base Library. You must also apply the Objective-C
Runtime patches to GCC which makes the runtime thread-safe, if
your version of GCC lacks them.
3. Configure the package for your system. In the directory that this
file is in, type `configure.bat'.
The `configure.bat' batch file processes the `Makefile.in'
templates with the corresponding `Makefile.sed.nt' sed script file
to produce the resultant `Makefile(s)'.
By default, `make install' will install the package's header files
into `$(MB_DEV)\$(MB_H)' and the library files in
`$(MB_DEV)\$(MB_LIB)'. You should have these environment variables
defined before you run `make'. You can change the development root
`MB_DEV' by giving a value for the `prefix' variable when you run
`make', e.g.,
make prefix=C:\MBCD\MyDevelopment
4. Type `make install' to install the import libraries, header files,
and documentation.

38
NEWS
View file

@ -1,7 +1,41 @@
NEWS NEWS
**** ****
The currently released version of the library is `0.1.1'. The currently released version of the library is `0.2.0'.
Noteworthy changes in version `0.2.0'
=====================================
* Additional NSImage and NSImageRep class work. Incorporated common
images for use with controls that were designed by Andrew Lindesay.
* Fill out implementation of NSColorWell class.
* Fill out implementation of NSColorList class.
* Cleaned up the header files and added missing headers, methods,
categories, and protocols; thanks to Simon Frankau for much of this
work. Major reorganization of header files. Types and constants
were moved in the files they belong. Each header file includes
only the headers it really needs. Use `@class' to forward class
definitions instead of including the corresponding class file.
* Completely reworked the NSFont and NSFontManager classes so that
NSUserDefaults is used for getting defaults and list of known
fonts are maintained.
* Initial implementation of NSCursor class.
* Almost complete implementation of NSButton and NSButtonCell class.
Buttons can not display images and/or text, handles all of the
OpenStep button types and styles.
* Fill out implementation of NSScroller class.
* Put in underlying support for optimizing drawing; flushing of
windows, backing store, and only display when needed.
* Many bug fixes and minor enhancements.
Noteworthy changes in version `0.1.1' Noteworthy changes in version `0.1.1'
===================================== =====================================
@ -42,3 +76,5 @@ Noteworthy changes in version `0.1.0'
allow both GNUstep and other OpenStep implementations to reside on allow both GNUstep and other OpenStep implementations to reside on
the same machine without conflicts. the same machine without conflicts.
Also see the `ChangeLog' file for more detail.

2
README
View file

@ -1,7 +1,7 @@
README README
****** ******
This is version 0.1.1 of the GNUstep GUI library (`libgnustep-gui'). This is version 0.2.0 of the GNUstep GUI library (`gnustep-gui').
Here is some introductory info to get you started: Here is some introductory info to get you started:

101
STATUS
View file

@ -1,7 +1,7 @@
Status Report Status Report
************* *************
Last updated August 1996. The most up-to-date version of this status Last updated March 1997. The most up-to-date version of this status
report is available at: report is available at:
`http://www.gnustep.org/Documentation/gnustep-gui/gnustep-gui_toc.html' `http://www.gnustep.org/Documentation/gnustep-gui/gnustep-gui_toc.html'
@ -34,8 +34,7 @@ report is available at:
Classes Classes
======= =======
Currently none of the classes raise exceptions; and notifications and Currently none of the classes raise exceptions.
notifications centers are non-existent.
*NSActionCell:: [9]* *NSActionCell:: [9]*
Should not require any implementation in the backend as it is an Should not require any implementation in the backend as it is an
@ -50,10 +49,10 @@ notifications centers are non-existent.
Modal loops are not implemented. Modal loops are not implemented.
*NSBitmapImageRep:: [4]* *NSBitmapImageRep:: [4]*
Many of the methods have code, but the class has not been made to Implementation has been filled out enough so that TIFF images can
work; though, some of this could be due to lack of backend be displayed; its possible that not all TIFF image types are
implementation. No compression nor generation of TIFF handled yet as the backend implementation must deal with each of
representations. them. No compression nor generation of TIFF representations.
*NSBox:: [8]* *NSBox:: [8]*
Many of the methods have code, but whether the class is usable Many of the methods have code, but whether the class is usable
@ -61,20 +60,20 @@ notifications centers are non-existent.
*NSBrowser:: [2]* *NSBrowser:: [2]*
*NSBrowserCell:: [2]* *NSBrowserCell:: [2]*
*NSButton:: [8]* *NSButton:: [9]*
Repeat intervals and key equivalents not implemented. There Repeat intervals and key equivalents not implemented. There
should be little need for backend implementation as NSButton is should be little need for backend implementation as NSButton is
mainly behavior; its cell class does all drawing. mainly behavior; its cell class does all drawing.
*NSButtonCell:: [8]* *NSButtonCell:: [9]*
Repeat intervals and key equivalents not implemented. Actual This class is basically complete; repeat intervals and key
ability to use will depend upon backend implementation. equivalents need to be implemented to finalize the class.
*NSCachedImageRep:: [4]* *NSCachedImageRep:: [4]*
All methods are implemented but its unknown if the class works. All methods are implemented but its unknown if the class works.
*NSCell:: [8]* *NSCell:: [8]*
No determination of component sizes. Editting text, validating No determination of component sizes. Editing text, validating
input, represented object, and some other odd and end methods not input, represented object, and some other odd and end methods not
implemented. implemented.
@ -83,14 +82,23 @@ notifications centers are non-existent.
Now implements all colorspaces; however, does not know the Now implements all colorspaces; however, does not know the
difference between calibrated and device. difference between calibrated and device.
*NSColorList:: [2]* *NSColorList:: [9]*
Implementation should be fairly complete; may need some work for
reading and writing color list files.
*NSColorPanel:: [2]* *NSColorPanel:: [2]*
*NSColorPicker:: [2]* *NSColorPicker:: [2]*
*NSColorWell:: [2]* *NSColorWell:: [9]*
Implementation should be fairly complete; backend implementation
required for the actual drawing of the control.
*NSControl:: [8]* *NSControl:: [8]*
No field editor; doesn't know how to calculate its size. No field editor; doesn't know how to calculate its size.
*NSCursor:: [2]* *NSCursor:: [8]*
Implementation should be fairly complete; backend implementation
required to be usable. May not handle user specified images.
*NSCustomImageRep:: [4]* *NSCustomImageRep:: [4]*
All methods are implemented but it is unknown if the class works. All methods are implemented but it is unknown if the class works.
@ -105,9 +113,9 @@ notifications centers are non-existent.
*NSEvent:: [9]* *NSEvent:: [9]*
All methods implemented except periodic events. All methods implemented except periodic events.
*NSFont:: [6]* *NSFont:: [9]*
Maintains no AFM or glyph information. Has been filled out some Now maintains AFM and glyph information but requires the backend
more so as to be quite usable with the Display Ghostscript System. implementation to supply it.
*NSFontManager:: [6]* *NSFontManager:: [6]*
Has been filled out some more so as to be usable with the Display Has been filled out some more so as to be usable with the Display
@ -119,19 +127,23 @@ notifications centers are non-existent.
*NSForm:: [2]* *NSForm:: [2]*
*NSFormCell:: [2]* *NSFormCell:: [2]*
*NSHelpPanel:: [2]* *NSHelpPanel:: [2]*
*NSImage:: [4]* *NSImage:: [8]*
All methods are implemented but it is unknown if the class works. Additional implementation to the point where TIFF images can be
displayed; requires sufficient backend implementation in the
NSImageRep classes.
*NSImageRep:: [4]* *NSImageRep:: [8]*
All methods are implemented but it is unknown if the class works. Additional implementation to the point where TIFF images can be
displayed; requires sufficient backend implementation.
*NSMatrix:: [6]* *NSMatrix:: [6]*
Many methods are implemented but more thorough testing needs to be Many methods are implemented but more thorough testing needs to be
done. done.
*NSMenu:: [8]* *NSMenu:: [2]*
Almost complete implementation; actual ability to use depends upon Implementation was removed until a more efficient mechanism can be
backend implementation. devised. The OpenStep specification has changed regarding this
class.
*NSMenuCell:: [8]* *NSMenuCell:: [8]*
Almost complete implementation; actual ability to use depends upon Almost complete implementation; actual ability to use depends upon
@ -161,9 +173,9 @@ notifications centers are non-existent.
Knows nothing about window depth, greatly depends upon backend Knows nothing about window depth, greatly depends upon backend
implementation. implementation.
*NSScroller:: [2]* *NSScroller:: [9]*
Most behaviour can probably be taken from NSSlider and Filled out implementation so that it should be almost complete;
NSSliderCell. requires backend implementation of a few methods.
*NSScrollView:: [2]* *NSScrollView:: [2]*
*NSSelection:: [2]* *NSSelection:: [2]*
@ -188,33 +200,30 @@ notifications centers are non-existent.
*NSView:: [6]* *NSView:: [6]*
Maintains subview lists, notification of new window, send resizing Maintains subview lists, notification of new window, send resizing
messages to subviews. No rotation, scaling, or translation of messages to subviews. Rotation, scaling, or translation of user
user coordinate space; coordinate conversion doesn't take user coordinate space depends upon backend implementation. Event
coordinate space into affect, so everything is based upon device handling and tracking rectangles implemented. Cursor management
coordinate space. Event handling and tracking rectangles implemented. No scrolling capability. No printing, paging, or
implemented. No scrolling capability. No cursor management. No postscript.
printing, paging, or postscript.
*NSWindow:: [4]* *NSWindow:: [4]*
Most methods not implemented, but maybe usable with backend Most methods not implemented, but maybe usable with backend
implementation. implementation.
*NSWorkspace:: [2]* *NSWorkspace:: [2]*
Erich Boleyn has some initial ideas and design.
Protocols Protocols
========= =========
*NSChangeSpelling:: [0]* *NSChangeSpelling:: [9]*
*NSColorPickingCustom:: [0]* *NSColorPickingCustom:: [9]*
*NSColorPickingDefault:: [0]* *NSColorPickingDefault:: [9]*
*NSDraggingDestination:: [0]* *NSDraggingDestination:: [9]*
*NSDraggingInfo:: [0]* *NSDraggingInfo:: [9]*
*NSDraggingSource:: [0]* *NSDraggingSource:: [9]*
*NSIgnoreMisspelledWords:: [0]* *NSIgnoreMisspelledWords:: [9]*
*NSMenuActionResponder:: [0]* *NSMenuActionResponder:: [9]*
*NSNibAwaking:: [0]* *NSNibAwaking:: [9]*
*NSServicesRequests:: [0]* *NSServicesRequests:: [9]*
Functions Functions
========= =========

View file

@ -46,6 +46,7 @@ personnel.
NET-Community NET-Community
522 SW 5th Avenue, Suite 1105 522 SW 5th Avenue, Suite 1105
Portland, Oregon 97204 Portland, Oregon 97204
1-800-919-0060 voice: (800) 919-0060 or (503) 274-4423
fax: (503) 274-5406
http://www.net-community.com http://www.net-community.com
mailto:sales@net-community.com mailto:sales@net-community.com

7
TODO
View file

@ -21,7 +21,7 @@ help is greatly appreciated. Send email to <scottc@net-community.com>.
just GNUstep? That would be optimal because GNUstep and just GNUstep? That would be optimal because GNUstep and
non-GNUstep programs would then be able to partially interoperate. non-GNUstep programs would then be able to partially interoperate.
* Expand the image handling capabilities beyond OPENSTEP. There is * Expand the image handling capabilities beyond OpenStep. There is
no reason why we must limit ourselves to EPS and TIFF bitmaps, we no reason why we must limit ourselves to EPS and TIFF bitmaps, we
should have image representations for as many bitmap formats as should have image representations for as many bitmap formats as
possible; excluding GIF files which are currently restricted by possible; excluding GIF files which are currently restricted by
@ -32,5 +32,8 @@ help is greatly appreciated. Send email to <scottc@net-community.com>.
* GNUstep window manager. Though not part of the GUI Library per * GNUstep window manager. Though not part of the GUI Library per
se, an X Window manager that gives the complete desktop the se, an X Window manager that gives the complete desktop the
GNUstep look and feel would be a great thing to have. GNUstep look and feel would be a great thing to have. There is
actually some work that has been started; a clearly defined
interface between GNUstep and the X Window manager needs to be
defined and implemented.

17
Version
View file

@ -1,22 +1,23 @@
# This file is included in various Makefile's to get version information. # This file is included in various Makefile's to get version information.
# The gcc version required to compile the library. # The gcc version required to compile the library.
GNUSTEP_GUI_GCC_VERSION = 2.7.0 GNUSTEP_GUI_GCC = 2.7.0
# Versions for libraries that gnustep-gui is dependent upon # Versions for libraries that gnustep-gui is dependent upon
GNUSTEP_GUI_BASE = 0.2.12
GNUSTEP_GUI_LIBTIFF = 3.4 GNUSTEP_GUI_LIBTIFF = 3.4
GNUSTEP_GUI_DGS = 0.1.1 GNUSTEP_GUI_DGS = 0.2.0
GNUSTEP_GUI_DPSCLIENT = 6.1 GNUSTEP_GUI_DPSCLIENT = 6.1
# The version number of this release. # The version number of this release.
GNUSTEP_GUI_MAJOR_VERSION = 0 GNUSTEP_GUI_MAJOR_VERSION = 0
GNUSTEP_GUI_MINOR_VERSION = 1 GNUSTEP_GUI_MINOR_VERSION = 2
GNUSTEP_GUI_SUBMINOR_VERSION = 1 GNUSTEP_GUI_SUBMINOR_VERSION = 0
GNUSTEP_GUI_VERSION = \ GNUSTEP_GUI_VERSION = \
$(GNUSTEP_GUI_MAJOR_VERSION).$(GNUSTEP_GUI_MINOR_VERSION).$(GNUSTEP_GUI_SUBMINOR_VERSION) $(GNUSTEP_GUI_MAJOR_VERSION).$(GNUSTEP_GUI_MINOR_VERSION).$(GNUSTEP_GUI_SUBMINOR_VERSION)
GNUSTEP_GUI_FTP_MACHINE = alpha.gnu.ai.mit.edu GNUSTEP_GUI_FTP_MACHINE = ftp.gnustep.org
GNUSTEP_GUI_FTP_DIRECTORY = gnu/gnustep GNUSTEP_GUI_FTP_DIRECTORY = pub/gnustep
GNUSTEP_GUI_SNAP_FTP_MACHINE = ftp.net-community.com GNUSTEP_GUI_SNAP_FTP_MACHINE = alpha.gnu.ai.mit.edu
GNUSTEP_GUI_SNAP_FTP_DIRECTORY = pub/GNUstep GNUSTEP_GUI_SNAP_FTP_DIRECTORY = gnu/gnustep