diff options
| -rw-r--r-- | CHANGES | 11 | ||||
| -rw-r--r-- | FL/Fl_Widget.H | 8 | ||||
| -rw-r--r-- | FL/Fl_Window.H | 13 | ||||
| -rw-r--r-- | configure.in | 9 | ||||
| -rw-r--r-- | src/Fl_Tooltip.cxx | 17 | ||||
| -rw-r--r-- | src/Fl_x.cxx | 12 |
6 files changed, 47 insertions, 23 deletions
@@ -1,5 +1,16 @@ CHANGES IN FLTK 1.1.0b4 + **** NOTE: DUE TO CHANGES IN THE FL_WIDGET CLASS, **** + **** YOU MUST RECOMPILE ALL SOURCE FILES **** + **** THAT USE FLTK!!! **** + + - Updated the flags_ member of Fl_Widget to be an + integer instead of uchar, to support the new + FL_OVERRIDE flag for Fl_Window. + + - Fl_Window now provides the FLTK 2.0 "override()" and + "set_override()" methods for windows. + - Updated the configure script to check for the png_set_tRNS_to_alpha() function. diff --git a/FL/Fl_Widget.H b/FL/Fl_Widget.H index b9de751ce..103f23d14 100644 --- a/FL/Fl_Widget.H +++ b/FL/Fl_Widget.H @@ -1,5 +1,5 @@ // -// "$Id: Fl_Widget.H,v 1.6.2.4.2.6 2001/08/06 23:51:39 easysw Exp $" +// "$Id: Fl_Widget.H,v 1.6.2.4.2.7 2001/10/18 18:53:20 easysw Exp $" // // Widget header file for the Fast Light Tool Kit (FLTK). // @@ -58,7 +58,7 @@ class Fl_Widget { short x_,y_,w_,h_; Fl_Label label_; uchar type_; - uchar flags_; + int flags_; uchar damage_; uchar box_; uchar color_; @@ -81,7 +81,7 @@ protected: void w(int v) {w_ = v;} void h(int v) {h_ = v;} - uchar flags() const {return flags_;} + int flags() const {return flags_;} void set_flag(int c) {flags_ |= c;} void clear_flag(int c) {flags_ &= ~c;} enum {INACTIVE=1, INVISIBLE=2, OUTPUT=4, SHORTCUT_LABEL=64, CHANGED=128}; @@ -206,5 +206,5 @@ public: #endif // -// End of "$Id: Fl_Widget.H,v 1.6.2.4.2.6 2001/08/06 23:51:39 easysw Exp $". +// End of "$Id: Fl_Widget.H,v 1.6.2.4.2.7 2001/10/18 18:53:20 easysw Exp $". // diff --git a/FL/Fl_Window.H b/FL/Fl_Window.H index e4b72bc6b..125cd8a3c 100644 --- a/FL/Fl_Window.H +++ b/FL/Fl_Window.H @@ -1,5 +1,5 @@ // -// "$Id: Fl_Window.H,v 1.12.2.6 2001/05/11 18:37:08 easysw Exp $" +// "$Id: Fl_Window.H,v 1.12.2.6.2.1 2001/10/18 18:53:20 easysw Exp $" // // Window header file for the Fast Light Tool Kit (FLTK). // @@ -49,7 +49,8 @@ class Fl_Window : public Fl_Group { FL_MODAL = 64, FL_NOBORDER = 8, FL_FORCE_POSITION = 16, - FL_NON_MODAL = 32 + FL_NON_MODAL = 32, + FL_OVERRIDE = 256 }; FL_EXPORT void _Fl_Window(); // constructor innards @@ -71,10 +72,12 @@ public: FL_EXPORT void border(int b); void clear_border() {set_flag(FL_NOBORDER);} int border() const {return !(flags() & FL_NOBORDER);} + void set_override() {set_flag(FL_NOBORDER|FL_OVERRIDE);} + int override() const { return flags()&FL_OVERRIDE; } void set_modal() {set_flag(FL_MODAL);} - uchar modal() const {return flags() & FL_MODAL;} + int modal() const {return flags() & FL_MODAL;} void set_non_modal() {set_flag(FL_NON_MODAL);} - uchar non_modal() const {return flags() & (FL_NON_MODAL|FL_MODAL);} + int non_modal() const {return flags() & (FL_NON_MODAL|FL_MODAL);} FL_EXPORT void hotspot(int x, int y, int offscreen = 0); FL_EXPORT void hotspot(const Fl_Widget*, int offscreen = 0); @@ -116,5 +119,5 @@ public: #endif // -// End of "$Id: Fl_Window.H,v 1.12.2.6 2001/05/11 18:37:08 easysw Exp $". +// End of "$Id: Fl_Window.H,v 1.12.2.6.2.1 2001/10/18 18:53:20 easysw Exp $". // diff --git a/configure.in b/configure.in index a0522de15..bb632a38c 100644 --- a/configure.in +++ b/configure.in @@ -1,7 +1,7 @@ dnl -*- sh -*- dnl the "configure" script is made from this by running GNU "autoconf" dnl -dnl "$Id: configure.in,v 1.33.2.31.2.9 2001/10/01 16:49:29 easysw Exp $" +dnl "$Id: configure.in,v 1.33.2.31.2.10 2001/10/18 18:53:20 easysw Exp $" dnl dnl Configuration script for the Fast Light Tool Kit (FLTK). dnl @@ -318,6 +318,11 @@ if test "$mandir" = "\${prefix}/man" -a "$prefix" = "/usr"; then esac fi +dnl Fix "libdir" variable... +if test "$uname" = "IRIX" -a $uversion -ge 62 -a "$libdir" = "\${exec_prefix}/lib" -a "$exec_prefix" = "/usr"; then + libdir="/usr/lib32" +fi + dnl Add warnings to compiler switches: dnl do this last so messing with switches does not break tests MAKEDEPEND="\$(CXX) -M" @@ -461,5 +466,5 @@ AC_OUTPUT(makeinclude fltk-config) chmod +x fltk-config dnl -dnl End of "$Id: configure.in,v 1.33.2.31.2.9 2001/10/01 16:49:29 easysw Exp $". +dnl End of "$Id: configure.in,v 1.33.2.31.2.10 2001/10/18 18:53:20 easysw Exp $". dnl diff --git a/src/Fl_Tooltip.cxx b/src/Fl_Tooltip.cxx index 929f90ca9..5baabf8da 100644 --- a/src/Fl_Tooltip.cxx +++ b/src/Fl_Tooltip.cxx @@ -1,5 +1,5 @@ // -// "$Id: Fl_Tooltip.cxx,v 1.38.2.2 2001/08/02 15:31:59 easysw Exp $" +// "$Id: Fl_Tooltip.cxx,v 1.38.2.3 2001/10/18 18:53:20 easysw Exp $" // // Tooltip source file for the Fast Light Tool Kit (FLTK). // @@ -42,7 +42,9 @@ Fl_TooltipBox *Fl_Tooltip::box = 0; Fl_Menu_Window *Fl_Tooltip::window = 0; Fl_Widget *Fl_Tooltip::widget = 0; int Fl_Tooltip::shown = 0; -uchar Fl_Tooltip::color_ = FL_YELLOW; +uchar Fl_Tooltip::color_ = fl_color_cube(FL_NUM_RED - 1, + FL_NUM_GREEN - 1, + FL_NUM_BLUE - 2); int Fl_Tooltip::font_ = FL_HELVETICA; int Fl_Tooltip::size_ = FL_NORMAL_SIZE; @@ -88,11 +90,9 @@ public: fl_measure(Fl_Tooltip::widget->tooltip(), ww, hh); label(Fl_Tooltip::widget->tooltip()); - int ox = - widgetWindow->x_root() + Fl_Tooltip::widget->x() + Fl_Tooltip::widget->w()/2; - int oy = - widgetWindow->y_root() + Fl_Tooltip::widget->y() + Fl_Tooltip::widget->h() + 10; - + int ox = Fl::event_x_root() + 10; + int oy = Fl::event_y_root() + 10; + if (ox >= Fl::w()) ox = Fl::w() - ww - 6; if (oy >= Fl::h()) @@ -156,6 +156,7 @@ Fl_Tooltip::tooltip_timeout(void *v) { window = new Fl_Menu_Window(0, 0, 10, 10, 0); window->clear_border(); window->box(FL_NO_BOX); + window->set_override(); window->begin(); box = new Fl_TooltipBox; @@ -188,5 +189,5 @@ Fl_Tooltip::tooltip_timeout(void *v) { // -// End of "$Id: Fl_Tooltip.cxx,v 1.38.2.2 2001/08/02 15:31:59 easysw Exp $". +// End of "$Id: Fl_Tooltip.cxx,v 1.38.2.3 2001/10/18 18:53:20 easysw Exp $". // diff --git a/src/Fl_x.cxx b/src/Fl_x.cxx index f97f8575e..900d08428 100644 --- a/src/Fl_x.cxx +++ b/src/Fl_x.cxx @@ -1,5 +1,5 @@ // -// "$Id: Fl_x.cxx,v 1.24.2.24.2.2 2001/08/02 21:11:43 easysw Exp $" +// "$Id: Fl_x.cxx,v 1.24.2.24.2.3 2001/10/18 18:53:20 easysw Exp $" // // X specific code for the Fast Light Tool Kit (FLTK). // @@ -702,7 +702,11 @@ void Fl_X::make_xid(Fl_Window* w, XVisualInfo *visual, Colormap colormap) attr.colormap = colormap; attr.border_pixel = 0; attr.bit_gravity = 0; // StaticGravity; - attr.override_redirect = 0; + if (w->override()) { + attr.override_redirect = 1; + attr.save_under = 1; + mask |= CWOverrideRedirect | CWSaveUnder; + } else attr.override_redirect = 0; if (Fl::grab()) { attr.save_under = 1; mask |= CWSaveUnder; if (!w->border()) {attr.override_redirect = 1; mask |= CWOverrideRedirect;} @@ -786,7 +790,7 @@ void Fl_X::make_xid(Fl_Window* w, XVisualInfo *visual, Colormap colormap) // Send X window stuff that can be changed over time: void Fl_X::sendxjunk() { - if (w->parent()) return; // it's not a window manager window! + if (w->parent() || w->override()) return; // it's not a window manager window! if (!w->size_range_set) { // default size_range based on resizable(): if (w->resizable()) { @@ -927,5 +931,5 @@ void Fl_Window::make_current() { #endif // -// End of "$Id: Fl_x.cxx,v 1.24.2.24.2.2 2001/08/02 21:11:43 easysw Exp $". +// End of "$Id: Fl_x.cxx,v 1.24.2.24.2.3 2001/10/18 18:53:20 easysw Exp $". // |
