Browse Source

STR #1962: I tried to fix the configuration scripts so that the image support libraries (fltk_jpeg fltk_png fltk_z) are linked in the same fashion as the fltk_image library. Please verify this fix.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@6610 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
pull/168/head
Matthias Melcher 17 years ago
parent
commit
65ff21e2aa
  1. 1
      CHANGES
  2. 8
      configure.in
  3. 3
      fltk-config.in
  4. 38
      test/menubar.cxx

1
CHANGES

@ -1,5 +1,6 @@ @@ -1,5 +1,6 @@
CHANGES IN FLTK 1.1.10
- Fixed static linking of image libraries (STR #1962)
- Fixed callback would not be called when shortcut was used with
radio and toggle buttons in default FL_RELEASE mode.
- Fixed a problem with TrackMouseEvent() (Windows only) that would

8
configure.in

@ -481,8 +481,10 @@ AC_SUBST(AUDIOLIBS) @@ -481,8 +481,10 @@ AC_SUBST(AUDIOLIBS)
dnl Check for image libraries...
SAVELIBS="$LIBS"
IMAGELIBS=""
STATICIMAGELIBS=""
AC_SUBST(IMAGELIBS)
AC_SUBST(STATICIMAGELIBS)
AC_ARG_ENABLE(localjpeg, [ --enable-localjpeg use local JPEG library, default=auto],
[if test x$enable_localjpeg = xyes; then
@ -494,6 +496,7 @@ AC_CHECK_LIB(jpeg,jpeg_CreateCompress, @@ -494,6 +496,7 @@ AC_CHECK_LIB(jpeg,jpeg_CreateCompress,
JPEGINC=""
JPEG=""
IMAGELIBS="-ljpeg $IMAGELIBS",
STATICIMAGELIBS="-ljpeg $STATICIMAGELIBS"
if test x$enable_localjpeg = xno; then
JPEGINC=""
JPEG=""
@ -502,6 +505,7 @@ AC_CHECK_LIB(jpeg,jpeg_CreateCompress, @@ -502,6 +505,7 @@ AC_CHECK_LIB(jpeg,jpeg_CreateCompress,
JPEGINC="-I../jpeg"
JPEG="jpeg"
IMAGELIBS="-lfltk_jpeg $IMAGELIBS"
STATICIMAGELIBS="\$libdir/libfltk_jpeg.a $STATICIMAGELIBS"
fi)
AC_ARG_ENABLE(localzlib, [ --enable-localzlib use local ZLIB library, default=auto],
@ -515,6 +519,7 @@ AC_CHECK_LIB(z,gzgets, @@ -515,6 +519,7 @@ AC_CHECK_LIB(z,gzgets,
ZLIB=""
LIBS="-lz $LIBS"
IMAGELIBS="-lz $IMAGELIBS",
STATICIMAGELIBS="-lz $STATICIMAGELIBS"
if test x$enable_localzlib = xno; then
ZLIBINC=""
ZLIB=""
@ -524,6 +529,7 @@ AC_CHECK_LIB(z,gzgets, @@ -524,6 +529,7 @@ AC_CHECK_LIB(z,gzgets,
ZLIB="zlib"
LIBS="-lfltk_z $LIBS"
IMAGELIBS="-lfltk_z $IMAGELIBS"
STATICIMAGELIBS="\$libdir/libfltk_z.a $STATICIMAGELIBS"
fi)
AC_ARG_ENABLE(localpng, [ --enable-localpng use local PNG library, default=auto],
@ -535,6 +541,7 @@ AC_CHECK_LIB(png,png_set_tRNS_to_alpha, [ @@ -535,6 +541,7 @@ AC_CHECK_LIB(png,png_set_tRNS_to_alpha, [
PNGINC=""
PNG=""
IMAGELIBS="-lpng $IMAGELIBS"
STATICIMAGELIBS="-lpng $STATICIMAGELIBS"
AC_DEFINE(HAVE_LIBPNG)
AC_CHECK_HEADER(png.h, AC_DEFINE(HAVE_PNG_H))],[
if test x$enable_localpng = xno; then
@ -546,6 +553,7 @@ AC_CHECK_LIB(png,png_set_tRNS_to_alpha, [ @@ -546,6 +553,7 @@ AC_CHECK_LIB(png,png_set_tRNS_to_alpha, [
PNGINC="-I../png"
PNG="png"
IMAGELIBS="-lfltk_png $IMAGELIBS"
STATICIMAGELIBS="\$libdir/libfltk_png.a $STATICIMAGELIBS"
fi])
AC_SUBST(JPEG)

3
fltk-config.in

@ -92,6 +92,7 @@ LIBNAME="@LIBNAME@" @@ -92,6 +92,7 @@ LIBNAME="@LIBNAME@"
DSONAME="@DSONAME@"
DSOLINK="@DSOLINK@"
IMAGELIBS="@IMAGELIBS@"
STATICIMAGELIBS="@STATICIMAGELIBS@"
SHAREDSUFFIX="@SHAREDSUFFIX@"
usage ()
@ -236,7 +237,7 @@ if test x$use_gl = xyes; then @@ -236,7 +237,7 @@ if test x$use_gl = xyes; then
fi
if test x$use_images = xyes; then
LDLIBS="-lfltk_images$SHAREDSUFFIX $IMAGELIBS $LDLIBS"
LDSTATIC="$libdir/libfltk_images.a $IMAGELIBS $LDSTATIC"
LDSTATIC="$libdir/libfltk_images.a $STATICIMAGELIBS $LDSTATIC"
fi
LDLIBS="$DSOLINK $LDFLAGS $libs $LDLIBS"

38
test/menubar.cxx

@ -171,6 +171,41 @@ Fl_Menu_Item pulldown[] = { @@ -171,6 +171,41 @@ Fl_Menu_Item pulldown[] = {
Fl_Menu_* menus[4];
class MyWindow : public Fl_Window {
public:
MyWindow(int w, int h, const char *l=0)
: Fl_Window(w, h, l) { }
int handle(int event) {
switch (event) {
case FL_ENTER:
// puts("ENTER"); break;
case FL_LEAVE:
// puts("LEAVE"); break;
break;
}
// printf("%d\n", event);
return Fl_Window::handle(event);
}
};
class MyButton : public Fl_Button {
public:
MyButton(int x, int y,int w, int h, const char *l=0)
: Fl_Button(x, y, w, h, l) { }
int handle(int event) {
switch (event) {
case FL_ENTER:
puts("ENTER"); break;
case FL_LEAVE:
puts("LEAVE"); break;
}
printf("%d\n", event);
return Fl_Button::handle(event);
}
};
int main(int argc, char **argv) {
//Fl::set_color(Fl_Color(15),0,0,128);
for (int i=0; i<99; i++) {
@ -178,11 +213,12 @@ int main(int argc, char **argv) { @@ -178,11 +213,12 @@ int main(int argc, char **argv) {
sprintf(buf,"item %d",i);
hugemenu[i].text = strdup(buf);
}
Fl_Window window(WIDTH,400);
MyWindow window(WIDTH,400);
window.callback(window_cb);
Fl_Menu_Bar menubar(0,0,WIDTH,30); menubar.menu(menutable);
menubar.callback(test_cb);
menus[0] = &menubar;
MyButton bb(100, 125, 120, 25, "Erwinn");
Fl_Menu_Button mb1(100,100,120,25,"&menubutton"); mb1.menu(pulldown);
mb1.tooltip("this is a menu button");
mb1.callback(test_cb);

Loading…
Cancel
Save