Documentation updates (STR #570)

Added DESTDIR support and now remove all man pages for the
"uninstall" target (STR #545)

Fix PNG drawing on buggy WIN32 graphics cards (STR #548)

The configure script didn't propagate the CPPFLAGS environment
variable (STR #549)

The numpad keys didn't work properly on WIN32 (STR #502)

fl_input() and friends now set the input focus to the text field
when the dialog is shown (STR #553)

Fixed background color mixup when drawing Fl_Choice menus (STR
#544)

Fixed MingW makefiles (STR #550)

More VC++ project file tweaking (STR #559)

Fl_PNG_Image didn't use the png_set_trns_to_alpha function when
available (STR #547)

The FL_UNFOCUS event wasn't always sent when switching tabs (STR
#558)


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3868 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Michael R Sweet 2004-10-18 20:22:25 +00:00
parent f7fd28ddfc
commit bf910884cc
16 changed files with 330 additions and 199 deletions

23
CHANGES
View File

@ -1,3 +1,26 @@
CHANGES IN FLTK 1.1.5
- Documentation updates (STR #570)
- Added DESTDIR support and now remove all man pages for
the "uninstall" target (STR #545)
- Fix PNG drawing on buggy WIN32 graphics cards (STR
#548)
- The configure script didn't propagate the CPPFLAGS
environment variable (STR #549)
- The numpad keys didn't work properly on WIN32 (STR
#502)
- fl_input() and friends now set the input focus to the
text field when the dialog is shown (STR #553)
- Fixed background color mixup when drawing Fl_Choice
menus (STR #544)
- Fixed MingW makefiles (STR #550)
- More VC++ project file tweaking (STR #559)
- Fl_PNG_Image didn't use the png_set_trns_to_alpha
function when available (STR #547)
- The FL_UNFOCUS event wasn't always sent when switching
tabs (STR #558)
CHANGES IN FLTK 1.1.5rc3
- Documentation updates (STR #505, STR #513)

View File

@ -1,5 +1,5 @@
#
# "$Id: Makefile.in,v 1.1.2.8 2004/04/11 04:38:54 easysw Exp $"
# "$Id: Makefile.in,v 1.1.2.9 2004/10/18 20:22:21 easysw Exp $"
#
# Header makefile for the Fast Light Tool Kit (FLTK).
#
@ -28,31 +28,31 @@ include ../makeinclude
all:
install:
echo "Installing include files in $(includedir)..."
-$(MKDIR) -p $(includedir)
$(RMDIR) $(includedir)/FL
$(MKDIR) $(includedir)/FL
$(CHMOD) 755 $(includedir)/FL
$(CP) ../FL/*.[hHr] $(includedir)/FL
$(CHMOD) 644 $(includedir)/FL/*.[hHr]
@HLINKS@ cd $(includedir)/FL;\
echo "Installing include files in $(DESTDIR)$(includedir)..."
-$(MKDIR) -p $(DESTDIR)$(includedir)
$(RMDIR) $(DESTDIR)$(includedir)/FL
$(MKDIR) $(DESTDIR)$(includedir)/FL
$(CHMOD) 755 $(DESTDIR)$(includedir)/FL
$(CP) ../FL/*.[hHr] $(DESTDIR)$(includedir)/FL
$(CHMOD) 644 $(DESTDIR)$(includedir)/FL/*.[hHr]
@HLINKS@ cd $(DESTDIR)$(includedir)/FL;\
@HLINKS@ for file in *.H; do\
@HLINKS@ $(RM) "`basename $$file H`h";\
@HLINKS@ $(LN) $$file "`basename $$file H`h";\
@HLINKS@ done
@HLINKS@ $(RM) $(includedir)/FL/fl_file_chooser.H
@HLINKS@ $(LN) Fl_File_Chooser.H $(includedir)/FL/fl_file_chooser.H
@HLINKS@ $(RM) $(includedir)/FL/fl_file_chooser.h
@HLINKS@ $(LN) Fl_File_Chooser.H $(includedir)/FL/fl_file_chooser.h
@HLINKS@ $(RM) $(includedir)/Fl
@HLINKS@ $(LN) FL $(includedir)/Fl
@HLINKS@ $(RM) $(DESTDIR)$(includedir)/FL/fl_file_chooser.H
@HLINKS@ $(LN) Fl_File_Chooser.H $(DESTDIR)$(includedir)/FL/fl_file_chooser.H
@HLINKS@ $(RM) $(DESTDIR)$(includedir)/FL/fl_file_chooser.h
@HLINKS@ $(LN) Fl_File_Chooser.H $(DESTDIR)$(includedir)/FL/fl_file_chooser.h
@HLINKS@ $(RM) $(DESTDIR)$(includedir)/Fl
@HLINKS@ $(LN) FL $(DESTDIR)$(includedir)/Fl
uninstall:
echo "Uninstalling include files..."
$(RMDIR) $(includedir)/FL
@HLINKS@ $(RM) $(includedir)/Fl
$(RMDIR) $(DESTDIR)$(includedir)/FL
@HLINKS@ $(RM) $(DESTDIR)$(includedir)/Fl
#
# End of "$Id: Makefile.in,v 1.1.2.8 2004/04/11 04:38:54 easysw Exp $".
# End of "$Id: Makefile.in,v 1.1.2.9 2004/10/18 20:22:21 easysw Exp $".
#

View File

@ -1,5 +1,5 @@
#
# "$Id: Makefile,v 1.12.2.6.2.18 2004/07/06 00:18:48 easysw Exp $"
# "$Id: Makefile,v 1.12.2.6.2.19 2004/10/18 20:22:21 easysw Exp $"
#
# Top-level makefile for the Fast Light Tool Kit (FLTK).
#
@ -34,17 +34,17 @@ all: makeinclude
done
install: makeinclude
-mkdir -p $(bindir)
$(RM) $(bindir)/fltk-config
-cp fltk-config $(bindir)
-chmod 755 $(bindir)/fltk-config
-mkdir -p $(DESTDIR)$(bindir)
$(RM) $(DESTDIR)$(bindir)/fltk-config
-cp fltk-config $(DESTDIR)$(bindir)
-chmod 755 $(DESTDIR)$(bindir)/fltk-config
for dir in FL $(DIRS); do\
echo "=== installing $$dir ===";\
(cd $$dir; $(MAKE) $(MFLAGS) install) || break;\
done
uninstall: makeinclude
$(RM) $(bindir)/fltk-config
$(RM) $(DESTDIR)$(bindir)/fltk-config
for dir in FL $(DIRS); do\
echo "=== uninstalling $$dir ===";\
(cd $$dir; $(MAKE) $(MFLAGS) uninstall) || break;\
@ -97,5 +97,5 @@ native-dist:
#
# End of "$Id: Makefile,v 1.12.2.6.2.18 2004/07/06 00:18:48 easysw Exp $".
# End of "$Id: Makefile,v 1.12.2.6.2.19 2004/10/18 20:22:21 easysw Exp $".
#

View File

@ -36,10 +36,12 @@ does not exist for every visual.
<LI><A href=#Fl_Double_Window.~Fl_Double_Window>~Fl_Double_Window</A></LI>
</UL>
<H4><A name=Fl_Double_Window.Fl_Double_Window>
Fl_Double_Window::Fl_Double_Window(int w, int h, const
char *label = 0)<br>
Fl_Double_Window::Fl_Double_Window(int x, int y, int w, int h, const
char *label = 0)</A></H4>
Creates a new <TT>Fl_Double_Window</TT> widget using the given
position, size, and label (title) string.
<p>Creates a new <TT>Fl_Double_Window</TT> widget using the given
position, size, and label (title) string.</p>
<H4><A name=Fl_Double_Window.~Fl_Double_Window>virtual
Fl_Double_Window::~Fl_Double_Window()</A></H4>
The destructor <I>also deletes all the children</I>. This allows a

View File

@ -79,25 +79,33 @@ Fl::modal()</TT></A> is zero or equal to the window. <TT>Fl_Window</TT>
</TD></TR>
</TABLE>
</CENTER>
<H4><A name=Fl_Window.Fl_Window>Fl_Window::Fl_Window(int w, int h, const char *title = 0)</A></H4>
<H4><A name=Fl_Window.Fl_Window>Fl_Window::Fl_Window(int w, int h, const char *title = 0)<br>
Fl_Window::Fl_Window(int x, int y, int w, int h, const char *title = 0)</A></H4>
The first form of the constructor should be used for a "top-level" window
(that is, one that is not inside another window). It correctly sets
<tt>visible()</tt> to false and <tt>parent()</tt> to <tt>NULL</tt>.
By not specifying the position of the window, the window system will pick a
place to show the window or allow the user to pick a location. If you want to
force a position you should call <tt>position(x,y)</tt> or <tt>hotspot()</tt>
before calling <tt>show()</tt>.
<p>Creates a new window. If <a
href='Fl_Group.html#Fl_Group.current'><tt>Fl_Group::current()</tt></a>
is not <tt>NULL</tt>, the window is created as a subwindow of
the parent window.</p>
<P><TT>Fl_Widget::box()</TT> is set to <TT>FL_FLAT_BOX</TT>. If you
<p>The first form of the constructor creates a top-level window
and tells the window manager to position the window. The second
form of the constructor either creates a subwindow or a
top-level window at the specified location, subject to window
manager configuration. If you do not specify the position of the
window, the window manager will pick a place to show the window
or allow the user to pick a location. Use <tt>position(x,y)</tt>
or <tt>hotspot()</tt> before calling <tt>show()</tt> to force a
position on the screen.</p>
<p>Top-level windows initially have <tt>visible()</tt> set to 0
and <tt>parent()</tt> set to <tt>NULL</tt>. Subwindows initially
have <tt>visible()</tt> set to 1 and <tt>parent()</tt> set to
the parent window pointer.</p>
<P><TT>Fl_Widget::box()</TT> defaults to <TT>FL_FLAT_BOX</TT>. If you
plan to completely fill the window with children widgets you should
change this to <TT>FL_NO_BOX</TT>. If you turn the window border off
you may want to change this to <TT>FL_UP_BOX</TT>. </P>
<h4>Fl_Window::Fl_Window(int x, int y, int w, int h, const char *title = 0)</H4>
<P>The second form of the constructor is for creating child windows. It
leaves <tt>visible()</tt> set to true.
you may want to change this to <TT>FL_UP_BOX</TT>.</P>
<H4><A name=Fl_Window.~Fl_Window>virtual Fl_Window::~Fl_Window()</A></H4>
The destructor <I>also deletes all the children</I>. This allows a

View File

@ -1,5 +1,5 @@
#
# "$Id: Makefile,v 1.9.2.10.2.22 2004/04/11 04:38:55 easysw Exp $"
# "$Id: Makefile,v 1.9.2.10.2.23 2004/10/18 20:22:22 easysw Exp $"
#
# Documentation makefile for the Fast Light Tool Kit (FLTK).
#
@ -225,35 +225,37 @@ depend:
docdir = $(datadir)/doc/fltk
install: $(MANPAGES)
echo "Installing documentation files in $(docdir)..."
-$(MKDIR) $(docdir)
$(CP) $(HTMLFILES) *.gif *.jpg index.html $(docdir)
$(CHMOD) 644 $(docdir)/*
echo "Installing man pages in $(mandir)..."
-$(MKDIR) $(mandir)/cat1
$(CP) fluid.$(CAT1EXT) $(mandir)/cat1
$(CHMOD) 644 $(mandir)/cat1/fluid.$(CAT1EXT)
$(CP) fltk-config.$(CAT1EXT) $(mandir)/cat1
$(CHMOD) 644 $(mandir)/cat1/fltk-config.$(CAT1EXT)
-$(MKDIR) $(mandir)/cat3
$(CP) fltk.$(CAT3EXT) $(mandir)/cat3
$(CHMOD) 644 $(mandir)/cat3/fltk.$(CAT3EXT)
-$(MKDIR) $(mandir)/man1
$(CP) fluid.man $(mandir)/man1/fluid.1
$(CHMOD) 644 $(mandir)/man1/fluid.1
$(CP) fltk-config.man $(mandir)/man1/fltk-config.1
$(CHMOD) 644 $(mandir)/man1/fltk-config.1
-$(MKDIR) $(mandir)/man3
$(CP) fltk.man $(mandir)/man3/fltk.3
$(CHMOD) 644 $(mandir)/man3/fltk.3
echo "Installing documentation files in $(DESTDIR)$(docdir)..."
-$(MKDIR) $(DESTDIR)$(docdir)
$(CP) $(HTMLFILES) *.gif *.jpg index.html $(DESTDIR)$(docdir)
$(CHMOD) 644 $(DESTDIR)$(docdir)/*
echo "Installing man pages in $(DESTDIR)$(mandir)..."
-$(MKDIR) $(DESTDIR)$(mandir)/cat1
$(CP) fluid.$(CAT1EXT) $(DESTDIR)$(mandir)/cat1
$(CHMOD) 644 $(DESTDIR)$(mandir)/cat1/fluid.$(CAT1EXT)
$(CP) fltk-config.$(CAT1EXT) $(DESTDIR)$(mandir)/cat1
$(CHMOD) 644 $(DESTDIR)$(mandir)/cat1/fltk-config.$(CAT1EXT)
-$(MKDIR) $(DESTDIR)$(mandir)/cat3
$(CP) fltk.$(CAT3EXT) $(DESTDIR)$(mandir)/cat3
$(CHMOD) 644 $(DESTDIR)$(mandir)/cat3/fltk.$(CAT3EXT)
-$(MKDIR) $(DESTDIR)$(mandir)/man1
$(CP) fluid.man $(DESTDIR)$(mandir)/man1/fluid.1
$(CHMOD) 644 $(DESTDIR)$(mandir)/man1/fluid.1
$(CP) fltk-config.man $(DESTDIR)$(mandir)/man1/fltk-config.1
$(CHMOD) 644 $(DESTDIR)$(mandir)/man1/fltk-config.1
-$(MKDIR) $(DESTDIR)$(mandir)/man3
$(CP) fltk.man $(DESTDIR)$(mandir)/man3/fltk.3
$(CHMOD) 644 $(DESTDIR)$(mandir)/man3/fltk.3
uninstall:
$(RMDIR) $(docdir)
$(RM) $(mandir)/cat1/fluid.$(CAT1EXT)
$(RM) $(mandir)/man1/fluid.1
$(RM) $(mandir)/cat3/fltk.$(CAT3EXT)
$(RM) $(mandir)/man3/fltk.3
$(RMDIR) $(DESTDIR)$(docdir)
$(RM) $(DESTDIR)$(mandir)/cat1/fluid.$(CAT1EXT)
$(RM) $(DESTDIR)$(mandir)/man1/fluid.1
$(RM) $(DESTDIR)$(mandir)/cat1/fltk-config.$(CAT1EXT)
$(RM) $(DESTDIR)$(mandir)/man1/fltk-config.1
$(RM) $(DESTDIR)$(mandir)/cat3/fltk.$(CAT3EXT)
$(RM) $(DESTDIR)$(mandir)/man3/fltk.3
# Base html files are now the readable ones, so this target is not make by
@ -275,5 +277,5 @@ fltk.pdf: $(HTMLFILES) $(IMAGEFILES)
-$(HTMLDOC) --verbose --batch fltk.book $(MEDIA) -f fltk.pdf
#
# End of "$Id: Makefile,v 1.9.2.10.2.22 2004/04/11 04:38:55 easysw Exp $".
# End of "$Id: Makefile,v 1.9.2.10.2.23 2004/10/18 20:22:22 easysw Exp $".
#

View File

@ -1,5 +1,5 @@
#
# "$Id: Makefile,v 1.10.2.6.2.26 2004/04/11 04:38:56 easysw Exp $"
# "$Id: Makefile,v 1.10.2.6.2.27 2004/10/18 20:22:22 easysw Exp $"
#
# FLUID makefile for the Fast Light Tool Kit (FLTK).
#
@ -73,15 +73,15 @@ depend: $(CPPFILES)
include makedepend
install: all
echo "Installing FLUID in $(bindir)..."
-$(MKDIR) $(bindir)
$(CP) $(FLUID) $(bindir)/fluid$(EXEEXT)
$(STRIP) $(bindir)/fluid$(EXEEXT)
$(bindir)/fltk-config --post $(bindir)/fluid$(EXEEXT)
$(CHMOD) 755 $(bindir)/fluid$(EXEEXT)
echo "Installing FLUID in $(DESTDIR)$(bindir)..."
-$(MKDIR) $(DESTDIR)$(bindir)
$(CP) $(FLUID) $(DESTDIR)$(bindir)/fluid$(EXEEXT)
$(STRIP) $(DESTDIR)$(bindir)/fluid$(EXEEXT)
$(DESTDIR)$(bindir)/fltk-config --post $(DESTDIR)$(bindir)/fluid$(EXEEXT)
$(CHMOD) 755 $(DESTDIR)$(bindir)/fluid$(EXEEXT)
uninstall:
$(RM) $(bindir)/fluid
$(RM) $(DESTDIR)$(bindir)/fluid$(EXEEXT)
#
# Note: The rebuild target can only be used if you have the original .fl
@ -95,5 +95,5 @@ rebuild:
./fluid -c widget_panel.fl
#
# End of "$Id: Makefile,v 1.10.2.6.2.26 2004/04/11 04:38:56 easysw Exp $".
# End of "$Id: Makefile,v 1.10.2.6.2.27 2004/10/18 20:22:22 easysw Exp $".
#

View File

@ -1,5 +1,5 @@
#
# "$Id: Makefile.mingw,v 1.1.2.2 2001/01/22 15:13:39 easysw Exp $"
# "$Id: Makefile.mingw,v 1.1.2.2.2.1 2004/10/18 20:22:22 easysw Exp $"
#
# Top-level makefile for the Fast Light Tool Kit (FLTK).
#
@ -44,6 +44,15 @@
all: makeinclude config.h
echo "=== making zlib ==="
touch zlib/makedepend
cd zlib ; $(MAKE)
echo "=== making jpeg ==="
touch jpeg/makedepend
cd jpeg ; $(MAKE)
echo "=== making png ==="
touch png/makedepend
cd png ; $(MAKE)
echo "=== making src ==="
touch src/makedepend
cd src ; $(MAKE)
@ -55,6 +64,15 @@ all: makeinclude config.h
cd test ; $(MAKE)
install:
echo "=== installing zlib ==="
touch zlib/makedepend
cd zlib ; $(MAKE) install
echo "=== installing jpeg ==="
touch jpeg/makedepend
cd jpeg ; $(MAKE) install
echo "=== installing png ==="
touch png/makedepend
cd png ; $(MAKE) install
echo "=== installing src ==="
touch src/makedepend
cd src ; $(MAKE) install
@ -92,5 +110,5 @@ makeinclude: makefiles/makeinclude.mingw
cp $< $@
#
# End of "$Id: Makefile.mingw,v 1.1.2.2 2001/01/22 15:13:39 easysw Exp $".
# End of "$Id: Makefile.mingw,v 1.1.2.2.2.1 2004/10/18 20:22:22 easysw Exp $".
#

View File

@ -1,5 +1,5 @@
#
# "$Id: makeinclude.mingw,v 1.1.2.3.2.13 2004/07/23 19:26:26 easysw Exp $"
# "$Id: makeinclude.mingw,v 1.1.2.3.2.14 2004/10/18 20:22:22 easysw Exp $"
#
# Make include file for the Fast Light Tool Kit (FLTK).
# (this file for MingW using GCC 2.95.x)
@ -95,8 +95,15 @@ GLDLIBS =-mwindows -lglu32 -lopengl32 -lole32 -luuid -lcomctl32 -lwsock32 -lsup
LINKFLTK =-L../lib -lfltk
LINKFLTKGL =-L../lib -lfltk_gl
LINKFLTKFORMS =-L../lib -lfltk_forms -lfltk
LINKFLTKIMG =-L../lib -lfltk_images -lfltk
IMAGELIBS =
LINKFLTKIMG =-L../lib -lfltk_images -lfltk $(IMAGELIBS)
LINKSHARED = -L../lib -lfltk_images -lfltk_forms -lfltk $(IMAGELIBS)
IMAGELIBS =-lfltk_png -lfltk_z -lfltk_jpeg
# image libraries to build...
IMAGEDIRS = jpeg zlib png
# The extension to use for executables...
EXEEXT = .exe
# Do we build the OpenGL demos?
GLDEMOS =gldemos
@ -104,6 +111,16 @@ GLDEMOS =gldemos
# Do we build the threads demo?
THREADS =threads
# Name of FLUID executable we install
FLUID = fluid$(EXEEXT)
# Possible steps after linking...
POSTBUILD = :
# Man page extensions...
CAT1EXT = 1
CAT3EXT = 3
# Be quiet when building...
.SILENT:
@ -112,16 +129,16 @@ THREADS =threads
.cxx:
echo Compiling and linking $@...
$(CXX) -I.. $(CXXFLAGS) $< $(LINKFLTK) $(LDLIBS) -o $@
$(CXX) -I.. -I../png -I../jpeg -I../zlib $(CXXFLAGS) $< $(LINKFLTK) $(LDLIBS) -o $@
.c.o:
echo Compiling $@...
$(CC) -I.. $(CXXFLAGS) $< -c
$(CC) -I.. -I../png -I../jpeg -I../zlib $(CXXFLAGS) $< -c
.cxx.o:
echo Compiling $@...
$(CXX) -I.. $(CXXFLAGS) $< -c
$(CXX) -I.. -I../png -I../jpeg -I../zlib $(CXXFLAGS) $< -c
#
# End of "$Id: makeinclude.mingw,v 1.1.2.3.2.13 2004/07/23 19:26:26 easysw Exp $".
# End of "$Id: makeinclude.mingw,v 1.1.2.3.2.14 2004/10/18 20:22:22 easysw Exp $".
#

View File

@ -1,5 +1,5 @@
#
# "$Id: makeinclude.in,v 1.7.2.11.2.28 2004/07/23 19:26:25 easysw Exp $"
# "$Id: makeinclude.in,v 1.7.2.11.2.29 2004/10/18 20:22:21 easysw Exp $"
#
# Make include file for the Fast Light Tool Kit (FLTK).
#
@ -52,8 +52,8 @@ MAKEDEPEND = @MAKEDEPEND@
# flags for C++ compiler:
OPTIM = @OPTIM@
CFLAGS = $(OPTIM) @CFLAGS@
CXXFLAGS = $(OPTIM) @CXXFLAGS@
CFLAGS = $(OPTIM) @CPPFLAGS@ @CFLAGS@
CXXFLAGS = $(OPTIM) @CPPFLAGS@ @CXXFLAGS@
# program to make the archive:
LIBNAME = @LIBNAME@
@ -133,5 +133,5 @@ CAT3EXT = @CAT3EXT@
mv t.z $@
#
# End of "$Id: makeinclude.in,v 1.7.2.11.2.28 2004/07/23 19:26:25 easysw Exp $".
# End of "$Id: makeinclude.in,v 1.7.2.11.2.29 2004/10/18 20:22:21 easysw Exp $".
#

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_Group.cxx,v 1.8.2.8.2.24 2004/04/11 04:38:57 easysw Exp $"
// "$Id: Fl_Group.cxx,v 1.8.2.8.2.25 2004/10/18 20:22:22 easysw Exp $"
//
// Group widget for the Fast Light Tool Kit (FLTK).
//
@ -225,6 +225,11 @@ int Fl_Group::handle(int event) {
case FL_HIDE:
for (i = children(); i--;) {
o = *a++;
if (event == FL_HIDE && o == Fl::focus()) {
// Give up input focus...
o->handle(FL_UNFOCUS);
Fl::focus(0);
}
if (o->visible()) o->handle(event);
}
return 1;
@ -586,5 +591,5 @@ void Fl_Group::draw_outside_label(const Fl_Widget& widget) const {
}
//
// End of "$Id: Fl_Group.cxx,v 1.8.2.8.2.24 2004/04/11 04:38:57 easysw Exp $".
// End of "$Id: Fl_Group.cxx,v 1.8.2.8.2.25 2004/10/18 20:22:22 easysw Exp $".
//

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_Menu.cxx,v 1.18.2.12.2.33 2004/07/26 20:52:51 easysw Exp $"
// "$Id: Fl_Menu.cxx,v 1.18.2.12.2.34 2004/10/18 20:22:23 easysw Exp $"
//
// Menu code for the Fast Light Tool Kit (FLTK).
//
@ -378,7 +378,7 @@ void menutitle::draw() {
void menuwindow::draw() {
if (damage() != FL_DAMAGE_CHILD) { // complete redraw
fl_draw_box(box(), 0, 0, w(), h(), color());
fl_draw_box(box(), 0, 0, w(), h(), button ? button->color() : color());
if (menu) {
const Fl_Menu_Item* m; int j;
for (m=menu->first(), j=0; m->text; j++, m = m->next()) drawentry(m, j, 0);
@ -791,5 +791,5 @@ const Fl_Menu_Item* Fl_Menu_Item::test_shortcut() const {
}
//
// End of "$Id: Fl_Menu.cxx,v 1.18.2.12.2.33 2004/07/26 20:52:51 easysw Exp $".
// End of "$Id: Fl_Menu.cxx,v 1.18.2.12.2.34 2004/10/18 20:22:23 easysw Exp $".
//

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_PNG_Image.cxx,v 1.1.2.11 2004/04/11 04:38:58 easysw Exp $"
// "$Id: Fl_PNG_Image.cxx,v 1.1.2.12 2004/10/18 20:22:24 easysw Exp $"
//
// Fl_PNG_Image routines.
//
@ -108,11 +108,11 @@ Fl_PNG_Image::Fl_PNG_Image(const char *png) // I - File to read
else if (info->bit_depth == 16)
png_set_strip_16(pp);
# if defined(HAVE_PNG_GET_VALID) && defined(HAVE_SET_TRNS_TO_ALPHA)
# if defined(HAVE_PNG_GET_VALID) && defined(HAVE_PNG_SET_TRNS_TO_ALPHA)
// Handle transparency...
if (png_get_valid(pp, info, PNG_INFO_tRNS))
png_set_tRNS_to_alpha(pp);
# endif // HAVE_PNG_GET_VALID && HAVE_SET_TRNS_TO_ALPHA
# endif // HAVE_PNG_GET_VALID && HAVE_PNG_SET_TRNS_TO_ALPHA
array = new uchar[w() * h() * d()];
alloc_array = 1;
@ -127,6 +127,16 @@ Fl_PNG_Image::Fl_PNG_Image(const char *png) // I - File to read
for (i = png_set_interlace_handling(pp); i > 0; i --)
png_read_rows(pp, rows, NULL, h());
#ifdef WIN32
// Some Windows graphics drivers don't honor transparency when RGB == white
if (channels == 4) {
// Convert RGB to 0 when alpha == 0...
uchar *ptr = (uchar *)array;
for (i = w() * h(); i > 0; i --, ptr += 4)
if (!ptr[3]) ptr[0] = ptr[1] = ptr[2] = 0;
}
#endif // WIN32
// Free memory and return...
delete[] rows;
@ -139,5 +149,5 @@ Fl_PNG_Image::Fl_PNG_Image(const char *png) // I - File to read
//
// End of "$Id: Fl_PNG_Image.cxx,v 1.1.2.11 2004/04/11 04:38:58 easysw Exp $".
// End of "$Id: Fl_PNG_Image.cxx,v 1.1.2.12 2004/10/18 20:22:24 easysw Exp $".
//

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_win32.cxx,v 1.33.2.37.2.49 2004/06/01 01:08:50 easysw Exp $"
// "$Id: Fl_win32.cxx,v 1.33.2.37.2.50 2004/10/18 20:22:24 easysw Exp $"
//
// WIN32-specific code for the Fast Light Tool Kit (FLTK).
//
@ -726,10 +726,55 @@ static LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lPar
if (uMsg == WM_CHAR || uMsg == WM_SYSCHAR) {
buffer[0] = char(wParam);
Fl::e_length = 1;
} else if (Fl::e_keysym >= FL_KP && Fl::e_keysym <= FL_KP_Last &&
(state & FL_NUM_LOCK)) {
buffer[0] = Fl::e_keysym-FL_KP;
Fl::e_length = 1;
} else if (Fl::e_keysym >= FL_KP && Fl::e_keysym <= FL_KP_Last) {
if (state & FL_NUM_LOCK) {
// Convert to regular keypress...
buffer[0] = Fl::e_keysym-FL_KP;
Fl::e_length = 1;
} else {
// Convert to special keypress...
buffer[0] = 0;
Fl::e_length = 0;
switch (Fl::e_keysym) {
case FL_KP + '0' :
Fl::e_keysym = Fl_Insert;
break;
case FL_KP + '1' :
Fl::e_keysym = Fl_End;
break;
case FL_KP + '2' :
Fl::e_keysym = Fl_Down;
break;
case FL_KP + '3' :
Fl::e_keysym = Fl_Page_Down;
break;
case FL_KP + '4' :
Fl::e_keysym = Fl_Left;
break;
case FL_KP + '6' :
Fl::e_keysym = Fl_Right;
break;
case FL_KP + '7' :
Fl::e_keysym = Fl_Home;
break;
case FL_KP + '8' :
Fl::e_keysym = Fl_Up;
break;
case FL_KP + '9' :
Fl::e_keysym = Fl_Page_Up;
break;
case FL_KP + '.' :
Fl::e_keysym = Fl_Delete;
break;
case FL_KP + '/' :
case FL_KP + '*' :
case FL_KP + '-' :
case FL_KP + '+' :
buffer[0] = Fl::e_keysym-FL_KP;
Fl::e_length = 1;
break;
}
}
} else {
buffer[0] = 0;
Fl::e_length = 0;
@ -1196,5 +1241,5 @@ void Fl_Window::make_current() {
}
//
// End of "$Id: Fl_win32.cxx,v 1.33.2.37.2.49 2004/06/01 01:08:50 easysw Exp $".
// End of "$Id: Fl_win32.cxx,v 1.33.2.37.2.50 2004/10/18 20:22:24 easysw Exp $".
//

View File

@ -1,5 +1,5 @@
#
# "$Id: Makefile,v 1.18.2.14.2.57 2004/07/23 19:26:26 easysw Exp $"
# "$Id: Makefile,v 1.18.2.14.2.58 2004/10/18 20:22:25 easysw Exp $"
#
# Library makefile for the Fast Light Tool Kit (FLTK).
#
@ -419,169 +419,169 @@ install: $(LIBNAME) $(DSONAME) \
$(FLLIBNAME) $(FLDSONAME) \
$(GLLIBNAME) $(GLDSONAME) \
$(IMGLIBNAME) $(IMGDSONAME)
echo "Installing libraries in $(libdir)..."
-$(MKDIR) $(libdir)
$(RM) $(libdir)/$(LIBNAME)
-$(CP) $(LIBNAME) $(FLLIBNAME) $(GLLIBNAME) $(IMGLIBNAME) $(libdir)
$(RANLIB) $(libdir)/$(LIBNAME)
$(RANLIB) $(libdir)/$(FLLIBNAME)
echo "Installing libraries in $(DESTDIR)$(libdir)..."
-$(MKDIR) $(DESTDIR)$(libdir)
$(RM) $(DESTDIR)$(libdir)/$(LIBNAME)
-$(CP) $(LIBNAME) $(FLLIBNAME) $(GLLIBNAME) $(IMGLIBNAME) $(DESTDIR)$(libdir)
$(RANLIB) $(DESTDIR)$(libdir)/$(LIBNAME)
$(RANLIB) $(DESTDIR)$(libdir)/$(FLLIBNAME)
if test x$(GLLIBNAME) != x; then \
$(RANLIB) $(libdir)/$(GLLIBNAME); \
$(RANLIB) $(DESTDIR)$(libdir)/$(GLLIBNAME); \
fi
$(RANLIB) $(libdir)/$(IMGLIBNAME)
$(RANLIB) $(DESTDIR)$(libdir)/$(IMGLIBNAME)
if test x$(DSONAME) = xlibfltk.so.1.1; then\
$(RM) $(libdir)/libfltk.so*;\
$(CP) libfltk.so.1.1 $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk.so.1.1; \
$(LN) libfltk.so.1.1 $(libdir)/libfltk.so;\
$(RM) $(DESTDIR)$(libdir)/libfltk.so*;\
$(CP) libfltk.so.1.1 $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk.so.1.1; \
$(LN) libfltk.so.1.1 $(DESTDIR)$(libdir)/libfltk.so;\
fi
if test x$(DSONAME) = xlibfltk.sl.1.1; then\
$(RM) $(libdir)/libfltk.sl*;\
$(CP) libfltk.sl.1.1 $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk.sl.1.1; \
$(LN) libfltk.sl.1.1 $(libdir)/libfltk.sl;\
$(RM) $(DESTDIR)$(libdir)/libfltk.sl*;\
$(CP) libfltk.sl.1.1 $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk.sl.1.1; \
$(LN) libfltk.sl.1.1 $(DESTDIR)$(libdir)/libfltk.sl;\
fi
if test x$(DSONAME) = xlibfltk.1.1.dylib; then\
$(RM) $(libdir)/libfltk.*dylib;\
$(CP) libfltk.1.1.dylib $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk.1.1.dylib; \
$(LN) libfltk.1.1.dylib $(libdir)/libfltk.dylib;\
$(RM) $(DESTDIR)$(libdir)/libfltk.*dylib;\
$(CP) libfltk.1.1.dylib $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk.1.1.dylib; \
$(LN) libfltk.1.1.dylib $(DESTDIR)$(libdir)/libfltk.dylib;\
fi
if test x$(DSONAME) = xlibfltk_s.a; then\
$(RM) $(libdir)/libfltk_s.a;\
$(CP) libfltk_s.a $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_s.a; \
$(RM) $(DESTDIR)$(libdir)/libfltk_s.a;\
$(CP) libfltk_s.a $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_s.a; \
fi
if test x$(FLDSONAME) = xlibfltk_forms.so.1.1; then\
$(RM) $(libdir)/libfltk_forms.so*;\
$(CP) libfltk_forms.so.1.1 $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_forms.so.1.1; \
$(LN) libfltk_forms.so.1.1 $(libdir)/libfltk_forms.so;\
$(RM) $(DESTDIR)$(libdir)/libfltk_forms.so*;\
$(CP) libfltk_forms.so.1.1 $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_forms.so.1.1; \
$(LN) libfltk_forms.so.1.1 $(DESTDIR)$(libdir)/libfltk_forms.so;\
fi
if test x$(FLDSONAME) = xlibfltk_forms.sl.1.1; then\
$(RM) $(libdir)/libfltk_forms.sl*;\
$(CP) libfltk_forms.sl.1.1 $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_forms.sl.1.1; \
$(LN) libfltk_forms.sl.1.1 $(libdir)/libfltk_forms.sl;\
$(RM) $(DESTDIR)$(libdir)/libfltk_forms.sl*;\
$(CP) libfltk_forms.sl.1.1 $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_forms.sl.1.1; \
$(LN) libfltk_forms.sl.1.1 $(DESTDIR)$(libdir)/libfltk_forms.sl;\
fi
if test x$(FLDSONAME) = xlibfltk_forms.1.1.dylib; then\
$(RM) $(libdir)/libfltk_forms.*dylib;\
$(CP) libfltk_forms.1.1.dylib $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_forms.1.1.dylib; \
$(LN) libfltk_forms.1.1.dylib $(libdir)/libfltk_forms.dylib;\
$(RM) $(DESTDIR)$(libdir)/libfltk_forms.*dylib;\
$(CP) libfltk_forms.1.1.dylib $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_forms.1.1.dylib; \
$(LN) libfltk_forms.1.1.dylib $(DESTDIR)$(libdir)/libfltk_forms.dylib;\
fi
if test x$(FLDSONAME) = xlibfltk_forms_s.a; then\
$(RM) $(libdir)/libfltk_forms_s.a;\
$(CP) libfltk_forms_s.a $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_forms.a; \
$(RM) $(DESTDIR)$(libdir)/libfltk_forms_s.a;\
$(CP) libfltk_forms_s.a $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_forms.a; \
fi
if test x$(GLDSONAME) = xlibfltk_gl.so.1.1; then\
$(RM) $(libdir)/libfltk_gl.so*;\
$(CP) libfltk_gl.so.1.1 $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_gl.so.1.1; \
$(LN) libfltk_gl.so.1.1 $(libdir)/libfltk_gl.so;\
$(RM) $(DESTDIR)$(libdir)/libfltk_gl.so*;\
$(CP) libfltk_gl.so.1.1 $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_gl.so.1.1; \
$(LN) libfltk_gl.so.1.1 $(DESTDIR)$(libdir)/libfltk_gl.so;\
fi
if test x$(GLDSONAME) = xlibfltk_gl.sl.1.1; then\
$(RM) $(libdir)/libfltk_gl.sl*;\
$(CP) libfltk_gl.sl.1.1 $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_gl.sl.1.1; \
$(LN) libfltk_gl.sl.1.1 $(libdir)/libfltk_gl.sl;\
$(RM) $(DESTDIR)$(libdir)/libfltk_gl.sl*;\
$(CP) libfltk_gl.sl.1.1 $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_gl.sl.1.1; \
$(LN) libfltk_gl.sl.1.1 $(DESTDIR)$(libdir)/libfltk_gl.sl;\
fi
if test x$(GLDSONAME) = xlibfltk_gl.1.1.dylib; then\
$(RM) $(libdir)/libfltk_gl.*dylib;\
$(CP) libfltk_gl.1.1.dylib $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_gl.1.1.dylib; \
$(LN) libfltk_gl.1.1.dylib $(libdir)/libfltk_gl.dylib;\
$(RM) $(DESTDIR)$(libdir)/libfltk_gl.*dylib;\
$(CP) libfltk_gl.1.1.dylib $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_gl.1.1.dylib; \
$(LN) libfltk_gl.1.1.dylib $(DESTDIR)$(libdir)/libfltk_gl.dylib;\
fi
if test x$(GLDSONAME) = xlibfltk_gl_s.a; then\
$(RM) $(libdir)/libfltk_gl_s.a;\
$(CP) libfltk_gl_s.a $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_gl.a; \
$(RM) $(DESTDIR)$(libdir)/libfltk_gl_s.a;\
$(CP) libfltk_gl_s.a $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_gl.a; \
fi
if test x$(IMGDSONAME) = xlibfltk_images.so.1.1; then\
$(RM) $(libdir)/libfltk_images.so*;\
$(CP) libfltk_images.so.1.1 $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_images.so.1.1; \
$(LN) libfltk_images.so.1.1 $(libdir)/libfltk_images.so;\
$(RM) $(DESTDIR)$(libdir)/libfltk_images.so*;\
$(CP) libfltk_images.so.1.1 $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_images.so.1.1; \
$(LN) libfltk_images.so.1.1 $(DESTDIR)$(libdir)/libfltk_images.so;\
fi
if test x$(IMGDSONAME) = xlibfltk_images.sl.1.1; then\
$(RM) $(libdir)/libfltk_images.sl*;\
$(CP) libfltk_images.sl.1.1 $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_images.sl.1.1; \
$(LN) libfltk_images.sl.1.1 $(libdir)/libfltk_images.sl;\
$(RM) $(DESTDIR)$(libdir)/libfltk_images.sl*;\
$(CP) libfltk_images.sl.1.1 $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_images.sl.1.1; \
$(LN) libfltk_images.sl.1.1 $(DESTDIR)$(libdir)/libfltk_images.sl;\
fi
if test x$(IMGDSONAME) = xlibfltk_images.1.1.dylib; then\
$(RM) $(libdir)/libfltk_images.*dylib;\
$(CP) libfltk_images.1.1.dylib $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_images.1.1.dylib; \
$(LN) libfltk_images.1.1.dylib $(libdir)/libfltk_images.dylib;\
$(RM) $(DESTDIR)$(libdir)/libfltk_images.*dylib;\
$(CP) libfltk_images.1.1.dylib $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_images.1.1.dylib; \
$(LN) libfltk_images.1.1.dylib $(DESTDIR)$(libdir)/libfltk_images.dylib;\
fi
if test x$(IMGDSONAME) = xlibfltk_images_s.a; then\
$(RM) $(libdir)/libfltk_images_s.a;\
$(CP) libfltk_images_s.a $(libdir); \
$(CHMOD) 755 $(libdir)/libfltk_images.a; \
$(RM) $(DESTDIR)$(libdir)/libfltk_images_s.a;\
$(CP) libfltk_images_s.a $(DESTDIR)$(libdir); \
$(CHMOD) 755 $(DESTDIR)$(libdir)/libfltk_images.a; \
fi
uninstall:
echo "Uninstalling libraries..."
$(RM) $(libdir)/$(LIBNAME)
$(RM) $(DESTDIR)$(libdir)/$(LIBNAME)
if test x$(DSONAME) = xlibfltk.so.1.1; then\
$(RM) $(libdir)/libfltk.so*;\
$(RM) $(DESTDIR)$(libdir)/libfltk.so*;\
fi
if test x$(DSONAME) = xlibfltk.sl.1.1; then\
$(RM) $(libdir)/libfltk.sl*;\
$(RM) $(DESTDIR)$(libdir)/libfltk.sl*;\
fi
if test x$(DSONAME) = xlibfltk.1.1.dylib; then\
$(RM) $(libdir)/libfltk.*dylib;\
$(RM) $(DESTDIR)$(libdir)/libfltk.*dylib;\
fi
if test x$(DSONAME) = xlibfltk_s.a; then\
$(RM) $(libdir)/libfltk_s.a;\
$(RM) $(DESTDIR)$(libdir)/libfltk_s.a;\
fi
$(RM) $(libdir)/$(FLLIBNAME);
$(RM) $(DESTDIR)$(libdir)/$(FLLIBNAME);
if test x$(FLDSONAME) = xlibfltk_forms.so.1.1; then\
$(RM) $(libdir)/libfltk_forms.so*;\
$(RM) $(DESTDIR)$(libdir)/libfltk_forms.so*;\
fi
if test x$(FLDSONAME) = xlibfltk_forms.sl.1.1; then\
$(RM) $(libdir)/libfltk_forms.sl*;\
$(RM) $(DESTDIR)$(libdir)/libfltk_forms.sl*;\
fi
if test x$(FLDSONAME) = xlibfltk_forms.1.1.dylib; then\
$(RM) $(libdir)/libfltk_forms.*dylib;\
$(RM) $(DESTDIR)$(libdir)/libfltk_forms.*dylib;\
fi
if test x$(FLDSONAME) = xlibfltk_forms_s.a; then\
$(RM) $(libdir)/libfltk_forms_s.a;\
$(RM) $(DESTDIR)$(libdir)/libfltk_forms_s.a;\
fi
if test x$(GLLIBNAME) != x; then\
$(RM) $(libdir)/$(GLLIBNAME);\
$(RM) $(DESTDIR)$(libdir)/$(GLLIBNAME);\
fi
if test x$(GLDSONAME) = xlibfltk_gl.so.1.1; then\
$(RM) $(libdir)/libfltk_gl.so*;\
$(RM) $(DESTDIR)$(libdir)/libfltk_gl.so*;\
fi
if test x$(GLDSONAME) = xlibfltk_gl.sl.1.1; then\
$(RM) $(libdir)/libfltk_gl.sl*;\
$(RM) $(DESTDIR)$(libdir)/libfltk_gl.sl*;\
fi
if test x$(GLDSONAME) = xlibfltk_gl.1.1.dylib; then\
$(RM) $(libdir)/libfltk_gl.*dylib;\
$(RM) $(DESTDIR)$(libdir)/libfltk_gl.*dylib;\
fi
if test x$(GLDSONAME) = xlibfltk_gl_s.a; then\
$(RM) $(libdir)/libfltk_gl_s.a;\
$(RM) $(DESTDIR)$(libdir)/libfltk_gl_s.a;\
fi
if test x$(IMGLIBNAME) != x; then\
$(RM) $(libdir)/$(IMGLIBNAME);\
$(RM) $(DESTDIR)$(libdir)/$(IMGLIBNAME);\
fi
if test x$(IMGDSONAME) = xlibfltk_images.so.1.1; then\
$(RM) $(libdir)/libfltk_images.so*;\
$(RM) $(DESTDIR)$(libdir)/libfltk_images.so*;\
fi
if test x$(IMGDSONAME) = xlibfltk_images.sl.1.1; then\
$(RM) $(libdir)/libfltk_images.sl*;\
$(RM) $(DESTDIR)$(libdir)/libfltk_images.sl*;\
fi
if test x$(IMGDSONAME) = xlibfltk_images.1.1.dylib; then\
$(RM) $(libdir)/libfltk_images.*dylib;\
$(RM) $(DESTDIR)$(libdir)/libfltk_images.*dylib;\
fi
if test x$(IMGDSONAME) = xlibfltk_images_s.a; then\
$(RM) $(libdir)/libfltk_images_s.a;\
$(RM) $(DESTDIR)$(libdir)/libfltk_images_s.a;\
fi
#
# End of "$Id: Makefile,v 1.18.2.14.2.57 2004/07/23 19:26:26 easysw Exp $".
# End of "$Id: Makefile,v 1.18.2.14.2.58 2004/10/18 20:22:25 easysw Exp $".
#

View File

@ -1,5 +1,5 @@
//
// "$Id: fl_ask.cxx,v 1.8.2.8.2.13 2004/04/11 04:38:59 easysw Exp $"
// "$Id: fl_ask.cxx,v 1.8.2.8.2.14 2004/10/18 20:22:25 easysw Exp $"
//
// Standard dialog functions for the Fast Light Tool Kit (FLTK).
//
@ -316,6 +316,7 @@ static const char* input_innards(const char* fmt, va_list ap,
input->type(type);
input->show();
input->value(defstr);
input->take_focus();
int r = innards(fmt, ap, fl_cancel, fl_ok, 0);
input->hide();
@ -344,5 +345,5 @@ const char *fl_password(const char *fmt, const char *defstr, ...) {
}
//
// End of "$Id: fl_ask.cxx,v 1.8.2.8.2.13 2004/04/11 04:38:59 easysw Exp $".
// End of "$Id: fl_ask.cxx,v 1.8.2.8.2.14 2004/10/18 20:22:25 easysw Exp $".
//