Go to file
Matthias Melcher c9908d97e3 THIS FIX CONTAINS TWO MORE FILES THAT MUST BE COMPILED. I would
like to ask the maintainers of the build environments to please
add these files to the setup:

  src/fl_encoding_latin1.cxx
  src/fl_encoding_mac_roman.cxx

I ADDED SOME DOCUMENTATION THAT NEEDS TO BE FIXED. Beeing not a
native English speaker, I have a hard time writing documentation.
Would someone please update my babbeling in 
documentation/drawing.html? Thanks.

This commit fixes some very basic problems with OS X's code page in
preparation for the compose-character keyboard fix. It also fixes
issues with MS Windows and X11 not rendering the characters
in the Western (Latin-1) set between 0x80 and 0x9F. In the original
ISO font, they were unused, but are now assigned to international
characters like the Euro currency sign.

This patch also tries to fix one basic flaw with FLTK 1 and
font encoding. I will not put much more work into this because
FLTK 1.2 and FLTK 2 fix the problem entirely by using UTF-8
instead of 8-bit "C"-style strings.

All these changes are only meaningful for foreign language
users or users of special characters like the Euro, the Degree
or the Permille symbol. A short explanation follows.

Max OS X uses a different code page than X11 and Win32. This means
that all characters above 0x7f have an entirely different meaning.
If your source code contains international characters, your 
text will appear different if you change to another OS. This patch
provides two functions that convert text with international
characters from the character set of the source code into the
local character set. Two more functions are provided to convert
them back. The functions are fl_latin1_to_local (source is in Win32 
or X11), fl_mac_roman_to_local (source was written on OS X) and the 
corresponding fl_local_to_latin1 and fl_local_to_mac_roman, which
are very useful if yoou want to store strings with intl. characters
that will be moved between systems.

All this is assuming a "Western" code page as it is common in
the Americas and most of Europe. User of other languages will have 
to use FLTK 2.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4975 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-04-18 13:07:42 +00:00
bc5 Copyright updates. 2005-02-24 21:55:12 +00:00
borlandc Attempt to make 'localeconv()' part of the configuration process. VC6 works, but I'll need feedback for all other platforms... . Trying OS X in a few minutes. 2005-07-24 18:41:30 +00:00
CMake This commit contains patch submitted by "fltk.x0" (thanks fltk.x0!) in the middle of May this year - STR #863. Also small change in fluid.cxx - time.h was needed for successful build on MinGW. 2005-08-06 05:02:56 +00:00
documentation THIS FIX CONTAINS TWO MORE FILES THAT MUST BE COMPILED. I would 2006-04-18 13:07:42 +00:00
FL THIS FIX CONTAINS TWO MORE FILES THAT MUST BE COMPILED. I would 2006-04-18 13:07:42 +00:00
fluid Update copyrights. 2006-01-31 19:00:08 +00:00
GL Copyright updates. 2005-02-24 21:55:12 +00:00
jpeg Fix JPEG jconfig.h header to not include <config.h>. 2005-10-12 20:42:47 +00:00
lib Use true instead of : for POSTBUILD on non-MacOS systems. 2002-06-24 19:49:45 +00:00
makefiles VC++ 2005 Support, drop old files, add icons for Sudoku 2005-11-27 14:45:48 +00:00
png This commit contains patch submitted by "fltk.x0" (thanks fltk.x0!) in the middle of May this year - STR #863. Also small change in fluid.cxx - time.h was needed for successful build on MinGW. 2005-08-06 05:02:56 +00:00
src THIS FIX CONTAINS TWO MORE FILES THAT MUST BE COMPILED. I would 2006-04-18 13:07:42 +00:00
test Fixed previous commit. 2006-04-04 12:24:36 +00:00
vc2005 Add WIN32 audio support, and protect against accidental restarts 2005-12-09 18:31:34 +00:00
vcnet Add VC++.NET project and dependencies for Sudoku 2005-12-11 14:54:01 +00:00
visualc THIS FIX CONTAINS TWO MORE FILES THAT MUST BE COMPILED. I would 2006-04-18 13:07:42 +00:00
watcom Attempt to make 'localeconv()' part of the configuration process. VC6 works, but I'll need feedback for all other platforms... . Trying OS X in a few minutes. 2005-07-24 18:41:30 +00:00
zlib This commit contains patch submitted by "fltk.x0" (thanks fltk.x0!) in the middle of May this year - STR #863. Also small change in fluid.cxx - time.h was needed for successful build on MinGW. 2005-08-06 05:02:56 +00:00
ANNOUNCEMENT Update announcement with edited changelog. 2006-01-18 02:25:56 +00:00
CHANGES STR 1195: caret key lookup entry was missing on Mac OS X 2006-04-04 11:44:20 +00:00
CMakeLists.txt STR #1123: Fixed include path in CMake build. I don't use CMake, but since this patch was contributed by the same company that *wrote* CMake, I have a good feeling that they know what they are doing. 2005-12-16 15:22:29 +00:00
configh.cmake.in Attempt to make 'localeconv()' part of the configuration process. VC6 works, but I'll need feedback for all other platforms... . Trying OS X in a few minutes. 2005-07-24 18:41:30 +00:00
configh.in FLTK now enables large file support when available (STR #1087) 2005-12-14 00:39:55 +00:00
configure.in Fix fl_filename_list() bug (STR #1159) caused by changing of the ABI 2006-01-31 15:50:06 +00:00
COPYING Update paragraph 4 of the FLTK license exemptions; basically, justify/ 2001-12-12 02:20:15 +00:00
CREDITS Bump to 1.1.5rc1... 2003-09-09 15:15:18 +00:00
DartConfig.cmake Cmake updates (STR #645) 2005-02-06 00:17:50 +00:00
fltk-config.in Update copyrights. 2006-01-31 19:00:08 +00:00
fltk.list.in Fix EPM list file and games programs. 2006-01-15 20:33:10 +00:00
fltk.spec.in More packaging fun. 2006-01-15 18:36:16 +00:00
fltk.xpm Add FLTK logo file for distributions. 2003-06-13 17:35:17 +00:00
forms.h Initial revision 1998-10-06 18:21:25 +00:00
install-sh Initial revision 1998-10-06 18:21:25 +00:00
Makefile More packaging fun. 2006-01-15 18:36:16 +00:00
makeinclude.in More packaging fun. 2006-01-15 18:36:16 +00:00
makesrcdist More packaging fun (games package to "advertise" FLTK...) 2006-01-15 18:02:44 +00:00
README Another copyright notice update. 2006-01-15 02:27:48 +00:00
README.mac Doco updates. 2002-10-04 02:30:34 +00:00
README.win32 Doco updates. 2002-10-04 02:30:34 +00:00
watcom.mif More watcom fixes (STR #627) 2004-11-23 18:48:10 +00:00

README - Fast Light Tool Kit (FLTK) Version 1.1.7
-------------------------------------------------

WHAT IS FLTK?

    The Fast Light Tool Kit ("FLTK", pronounced "fulltick") is a
    a cross-platform C++ GUI toolkit for UNIX(r)/Linux(r) (X11),
    Microsoft(r) Windows(r), and MacOS(r) X. FLTK provides
    modern GUI functionality without the bloat and supports 3D
    graphics via OpenGL(r) and its built-in GLUT emulation. It
    was originally developed by Mr. Bill Spitzak and is
    currently maintained by a small group of developers across
    the world with a central repository in the US.


LICENSING

    FLTK comes with complete free source code. FLTK is available
    under the terms of the GNU Library General Public License.
    Contrary to popular belief, it can be used in commercial
    software! (Even Bill Gates could use it.) 


ON-LINE DOCUMENTATION

    All of the documentation is in HTML in the subdirectory
    "documentation". The "index.html" file should be your
    starting point.  PostScript(tm) and PDF versions of this
    documentation is also available from the FLTK web site at:

        http://www.fltk.org/documentation.php


BUILDING AND INSTALLING FLTK UNDER UNIX AND MacOS X

    In most cases you can just type "make".  This will run
    configure with the default (no) options and then compile
    everything.

    FLTK uses GNU autoconf to configure itself for your UNIX
    platform. The main things that the configure script will
    look for are the X11, OpenGL (or Mesa), and JPEG header and
    library files.  Make sure that they are in the standard
    include/library locations.  If they aren't you need to
    define the CFLAGS, CXXFLAGS, and LDFLAGS environment
    variables.

    If you aren't using "gcc", "g++", "c++", or "CC" for your
    C++ compiler, you'll also need to set the CXX environment
    variable. Similarly, if you aren't using "gcc" or "cc" for
    your C compiler you'll need to set the CC environment
    variable.

    You can run configure yourself to get the exact setup you
    need. Type "./configure <options>".  Options include:

	--enable-cygwin         - Enable the Cygwin libraries (WIN32)
	--enable-debug          - Enable debugging code & symbols
	--disable-gl            - Disable OpenGL support
	--enable-shared         - Enable generation of shared libraries
	--enable-threads        - Enable multithreading support
	--enable-xdbe           - Enable the X double-buffer extension
	--enable-xft            - Enable the Xft library (anti-aliased fonts)

	--bindir=/path          - Set the location for executables
                        	  [default = /usr/local/bin]
	--libdir=/path          - Set the location for libraries
                        	  [default = /usr/local/lib]
	--includedir=/path      - Set the location for include files.
                        	  [default = /usr/local/include]
	--prefix=/dir           - Set the directory prefix for files
                        	  [default = /usr/local]

    When the configure script is done you can just run the
    "make" command. This will build the library, FLUID tool, and
    all of the test programs.

    To install the library, become root and type "make
    install".  This will copy the "fluid" executable to
    "bindir", the header files to "includedir", and the library
    files to "libdir".


BUILDING FLTK UNDER MICROSOFT WINDOWS

    There are two ways to build FLTK under Microsoft Windows. 
    The first is to use the VC++ 6.0 project files under the
    "visualc" directory.  Just open (or double-click on) the
    "fltk.dsw" file to get the whole shebang.

    The second method is to use a GNU-based development tool
    with the files in the "makefiles" directory.  To build
    with the CygWin tools, use the supplied configure script
    as specified in the UNIX section above:

        sh configure ...options...

    To build using other tools simply copy the appropriate
    makeinclude and config files to the main directory and do a
    make:

	copy makefiles\Makefile.<env> Makefile
	make


BUILDING FLTK UNDER OS/2

    The current OS/2 build requires XFree86 for OS/2 to work.  A
    native Presentation Manager version has not been implemented
    yet (volunteers are welcome!).

    To build the XFree86 version of FLTK for OS/2, copy the
    appropriate makeinclude and config files to the main
    directory and do a make:

        copy makefiles\Makefile.os2x Makefile
	make


INTERNET RESOURCES

    FLTK is available on the 'net in a bunch of locations:

	- WWW:   http://www.fltk.org
	         http://www.fltk.org/str.php [for reporting bugs]
	         http://fltk.sourceforge.net

	- FTP:   http://ftp.easysw.com/pub/fltk
                 ftp://ftp2.easysw.com/pub/fltk
                 ftp://ftp3.easysw.com/pub/fltk
        	 ftp://ftp.funet.fi/mirrors/ftp.easysw.com/pub/fltk

	- EMail: fltk@fltk.org [see instructions below]

    To send a message to the FLTK mailing list ("fltk@fltk.org")
    you must first join the list.  Non-member submissions are
    blocked to avoid problems with SPAM.

    To join the FLTK mailing list, go the following web page:

        http://lists.easysw.com/listinfo/fltk


REPORTING BUGS

    To report a bug in FLTK, use the form at:

        http://www.fltk.org/str.php

    For general support and questions, please use the FLTK
    mailing list at "fltk@fltk.org".


TRADEMARKS

    Microsoft and Windows are registered trademarks of Microsoft
    Corporation. UNIX is a registered trademark of the X/Open
    Group, Inc.  OpenGL is a registered trademark of Silicon
    Graphics, Inc.  MacOS is a registered trademark of Apple
    Computers, Inc.


COPYRIGHT

    FLTK is copyright 1998-2006 by Bill Spitzak
    (spitzak@users.sourceforge.net) and others, including:

        Craig P. Earls
	Curtis Edwards (trilex@users.sourceforge.net)
	Gustavo Hime (hime@users.sourceforge.net)
	Talbot Hughes
	Robert Kesterson (robertk@users.sourceforge.net)
	Matthias Melcher (matthiaswm@users.sourceforge.net)
	James Dean Palmer (jamespalmer@users.sourceforge.net)
	Vincent Penne (vincentp@users.sourceforge.net)
        Michael Sweet (easysw@users.sourceforge.net)
	Carl Thompson (clip@users.sourceforge.net)
	Nafees Bin Zafar (nafees@users.sourceforge.net)

    This library is free software; you can redistribute it
    and/or modify it under the terms of the GNU Library General
    Public License as published by the Free Software Foundation;
    either version 2 of the License, or (at your option) any
    later version.

    This library is distributed in the hope that it will be
    useful, but WITHOUT ANY WARRANTY; without even the implied
    warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
    PURPOSE.  See the GNU Library General Public License for
    more details.

    You should have received a copy of the GNU Library General
    Public License along with this library; if not, write to the
    Free Software Foundation, Inc., 59 Temple Place, Suite 330,
    Boston, MA 02111-1307 USA.