- sorted fluid menu bar

- fixed some minor Valgrind memory checker complaints
- added conditional compile flag for OS X w/ MetroWerks compiler


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2967 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Matthias Melcher 2003-04-03 04:28:15 +00:00
parent 14b142f7a8
commit 7903799bf2
9 changed files with 176 additions and 169 deletions

View File

@ -1,5 +1,9 @@
CHANGES IN FLTK 1.1.4
- Sorted the icon menu bar in fluid.
- Fixed minor memory access complaints from Valgrind
- Compiling src/flstring.h on OS X with BSD header
would fail.
- Fl_Text_Editor didn't scroll the buffer when the user
pressed Ctrl+End or Ctrl+Home.
- Fl_Text_Editor didn't show its cursor when the mouse

2
README
View File

@ -188,7 +188,7 @@ COPYRIGHT
Gustavo Hime (hime@users.sourceforge.net)
Talbot Hughes
Robert Kesterson (robertk@users.sourceforge.net)
Matthias Melcher (matthias@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)

View File

@ -1,4 +1,4 @@
// generated by Fast Light User Interface Designer (fluid) version 1.0103
// generated by Fast Light User Interface Designer (fluid) version 1.0104
#include "function_panel.h"
#include <FL/Fl_Pixmap.H>
@ -334,42 +334,42 @@ Fl_Double_Window* make_widgetbin() {
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Window"));
o->image(pixmap[1]);
}
{ Fl_Button* o = new Fl_Button(56, 28, 24, 24);
o->tooltip("Tabs");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Tabs"));
o->image(pixmap[13]);
}
{ Fl_Button* o = new Fl_Button(56, 52, 24, 24);
o->tooltip("Tile");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Tile"));
o->image(pixmap[20]);
}
{ Fl_Button* o = new Fl_Button(80, 4, 24, 24);
o->tooltip("Group");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Group"));
o->image(pixmap[6]);
}
{ Fl_Button* o = new Fl_Button(104, 4, 24, 24);
o->tooltip("Pack");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Pack"));
o->image(pixmap[22]);
}
{ Fl_Button* o = new Fl_Button(56, 28, 24, 24);
o->tooltip("Tabs");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Tabs"));
o->image(pixmap[13]);
}
{ Fl_Button* o = new Fl_Button(80, 28, 24, 24);
o->tooltip("Scroll");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Scroll"));
o->image(pixmap[19]);
}
{ Fl_Button* o = new Fl_Button(56, 52, 24, 24);
o->tooltip("Tile");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Tile"));
o->image(pixmap[20]);
}
{ Fl_Button* o = new Fl_Button(80, 52, 24, 24);
o->tooltip("Wizard");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Wizard"));
o->image(pixmap[21]);
}
{ Fl_Button* o = new Fl_Button(104, 4, 24, 24);
o->tooltip("Pack");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Pack"));
o->image(pixmap[22]);
}
o->end();
}
{ Fl_Group* o = new Fl_Group(131, 3, 50, 74);
@ -426,6 +426,12 @@ Fl_Double_Window* make_widgetbin() {
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Scrollbar"));
o->image(pixmap[38]);
}
{ Fl_Button* o = new Fl_Button(232, 4, 24, 24);
o->tooltip("Value Slider");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Value_Slider"));
o->image(pixmap[39]);
}
{ Fl_Button* o = new Fl_Button(184, 28, 24, 24);
o->tooltip("Adjuster");
o->box(FL_THIN_UP_BOX);
@ -438,6 +444,12 @@ Fl_Double_Window* make_widgetbin() {
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Counter"));
o->image(pixmap[41]);
}
{ Fl_Button* o = new Fl_Button(232, 28, 24, 24);
o->tooltip("Dial");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Dial"));
o->image(pixmap[42]);
}
{ Fl_Button* o = new Fl_Button(184, 52, 24, 24);
o->tooltip("Roller");
o->box(FL_THIN_UP_BOX);
@ -450,18 +462,6 @@ Fl_Double_Window* make_widgetbin() {
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Value_Input"));
o->image(pixmap[44]);
}
{ Fl_Button* o = new Fl_Button(232, 4, 24, 24);
o->tooltip("Value Slider");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Value_Slider"));
o->image(pixmap[39]);
}
{ Fl_Button* o = new Fl_Button(232, 28, 24, 24);
o->tooltip("Dial");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Dial"));
o->image(pixmap[42]);
}
{ Fl_Button* o = new Fl_Button(232, 52, 24, 24);
o->tooltip("Value Output");
o->box(FL_THIN_UP_BOX);
@ -478,30 +478,30 @@ Fl_Double_Window* make_widgetbin() {
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Input"));
o->image(pixmap[14]);
}
{ Fl_Button* o = new Fl_Button(260, 28, 24, 24);
o->tooltip("Text Edit");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Text_Editor"));
o->image(pixmap[29]);
}
{ Fl_Button* o = new Fl_Button(260, 52, 24, 24);
o->tooltip("File Input");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_File_Input"));
o->image(pixmap[30]);
}
{ Fl_Button* o = new Fl_Button(284, 4, 24, 24);
o->tooltip("Output");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Output"));
o->image(pixmap[27]);
}
{ Fl_Button* o = new Fl_Button(260, 28, 24, 24);
o->tooltip("Text Edit");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Text_Editor"));
o->image(pixmap[29]);
}
{ Fl_Button* o = new Fl_Button(284, 28, 24, 24);
o->tooltip("Text Display");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Text_Display"));
o->image(pixmap[28]);
}
{ Fl_Button* o = new Fl_Button(260, 52, 24, 24);
o->tooltip("File Input");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_File_Input"));
o->image(pixmap[30]);
}
o->end();
}
{ Fl_Group* o = new Fl_Group(311, 3, 50, 74);
@ -512,30 +512,30 @@ Fl_Double_Window* make_widgetbin() {
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Menu_Bar"));
o->image(pixmap[17]);
}
{ Fl_Button* o = new Fl_Button(312, 28, 24, 24);
o->tooltip("Menu Button");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Menu_Button"));
o->image(pixmap[26]);
}
{ Fl_Button* o = new Fl_Button(312, 52, 24, 24);
o->tooltip("Choice");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Choice"));
o->image(pixmap[15]);
}
{ Fl_Button* o = new Fl_Button(336, 4, 24, 24);
o->tooltip("Menu Item");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("menuitem"));
o->image(pixmap[16]);
}
{ Fl_Button* o = new Fl_Button(312, 28, 24, 24);
o->tooltip("Menu Button");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Menu_Button"));
o->image(pixmap[26]);
}
{ Fl_Button* o = new Fl_Button(336, 28, 24, 24);
o->tooltip("Sub Menu");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("submenu"));
o->image(pixmap[18]);
}
{ Fl_Button* o = new Fl_Button(312, 52, 24, 24);
o->tooltip("Choice");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Choice"));
o->image(pixmap[15]);
}
o->end();
}
{ Fl_Group* o = new Fl_Group(363, 3, 26, 74);
@ -568,6 +568,12 @@ Fl_Double_Window* make_widgetbin() {
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Box"));
o->image(pixmap[5]);
}
{ Fl_Button* o = new Fl_Button(416, 4, 24, 24);
o->tooltip("Clock");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Clock"));
o->image(pixmap[34]);
}
{ Fl_Button* o = new Fl_Button(392, 28, 24, 24);
o->tooltip("Help Browser");
o->box(FL_THIN_UP_BOX);
@ -580,12 +586,6 @@ Fl_Double_Window* make_widgetbin() {
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Progress"));
o->image(pixmap[36]);
}
{ Fl_Button* o = new Fl_Button(416, 4, 24, 24);
o->tooltip("Clock");
o->box(FL_THIN_UP_BOX);
o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Clock"));
o->image(pixmap[34]);
}
o->end();
}
o->size(o->w(),80);

View File

@ -1,5 +1,5 @@
# data file for the Fltk User Interface Designer (fluid)
version 1.0103
version 1.0104
header_name {.h}
code_name {.cxx}
decl {\#include <FL/Fl_Pixmap.H>} {}
@ -54,7 +54,7 @@ Function {make_code_panel()} {open
Fl_Group {} {open
xywh {10 10 525 120} box DOWN_FRAME resizable
} {
Fl_Text_Editor code_input {selected
Fl_Text_Editor code_input {
xywh {12 12 521 116} box NO_BOX resizable
code0 {o->buffer(new Fl_Text_Buffer);}
code1 {o->textfont(FL_COURIER);}
@ -242,42 +242,42 @@ Function {make_widgetbin()} {open
tooltip Window xywh {56 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[1]);}
}
Fl_Button {} {
user_data {"Fl_Tabs"}
callback type_make_cb
tooltip Tabs xywh {56 28 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[13]);}
}
Fl_Button {} {
user_data {"Fl_Tile"}
callback type_make_cb
tooltip Tile xywh {56 52 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[20]);}
}
Fl_Button {} {
user_data {"Fl_Group"}
callback type_make_cb
tooltip Group xywh {80 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[6]);}
}
Fl_Button {} {
user_data {"Fl_Pack"}
callback type_make_cb
tooltip Pack xywh {104 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[22]);}
}
Fl_Button {} {
user_data {"Fl_Tabs"}
callback type_make_cb
tooltip Tabs xywh {56 28 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[13]);}
}
Fl_Button {} {
user_data {"Fl_Scroll"}
callback type_make_cb
tooltip Scroll xywh {80 28 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[19]);}
}
Fl_Button {} {
user_data {"Fl_Tile"}
callback type_make_cb
tooltip Tile xywh {56 52 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[20]);}
}
Fl_Button {} {
user_data {"Fl_Wizard"}
callback type_make_cb
tooltip Wizard xywh {80 52 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[21]);}
}
Fl_Button {} {
user_data {"Fl_Pack"}
callback type_make_cb
tooltip Pack xywh {104 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[22]);}
}
}
Fl_Group {} {open
xywh {131 3 50 74} box THIN_DOWN_BOX
@ -334,6 +334,12 @@ Function {make_widgetbin()} {open
tooltip {Scroll Bar} xywh {208 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[38]);}
}
Fl_Button {} {
user_data {"Fl_Value_Slider"}
callback type_make_cb
tooltip {Value Slider} xywh {232 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[39]);}
}
Fl_Button {} {
user_data {"Fl_Adjuster"}
callback type_make_cb
@ -346,6 +352,12 @@ Function {make_widgetbin()} {open
tooltip Counter xywh {208 28 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[41]);}
}
Fl_Button {} {
user_data {"Fl_Dial"}
callback type_make_cb
tooltip Dial xywh {232 28 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[42]);}
}
Fl_Button {} {
user_data {"Fl_Roller"}
callback type_make_cb
@ -358,18 +370,6 @@ Function {make_widgetbin()} {open
tooltip {Value Input} xywh {208 52 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[44]);}
}
Fl_Button {} {
user_data {"Fl_Value_Slider"}
callback type_make_cb
tooltip {Value Slider} xywh {232 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[39]);}
}
Fl_Button {} {
user_data {"Fl_Dial"}
callback type_make_cb
tooltip Dial xywh {232 28 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[42]);}
}
Fl_Button {} {
user_data {"Fl_Value_Output"}
callback type_make_cb
@ -386,30 +386,30 @@ Function {make_widgetbin()} {open
tooltip Input xywh {260 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[14]);}
}
Fl_Button {} {
user_data {"Fl_Text_Editor"}
callback type_make_cb
tooltip {Text Edit} xywh {260 28 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[29]);}
}
Fl_Button {} {
user_data {"Fl_File_Input"}
callback type_make_cb
tooltip {File Input} xywh {260 52 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[30]);}
}
Fl_Button {} {
user_data {"Fl_Output"}
callback type_make_cb
tooltip Output xywh {284 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[27]);}
}
Fl_Button {} {
user_data {"Fl_Text_Editor"}
callback type_make_cb
tooltip {Text Edit} xywh {260 28 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[29]);}
}
Fl_Button {} {
user_data {"Fl_Text_Display"}
callback type_make_cb
tooltip {Text Display} xywh {284 28 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[28]);}
}
Fl_Button {} {
user_data {"Fl_File_Input"}
callback type_make_cb
tooltip {File Input} xywh {260 52 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[30]);}
}
}
Fl_Group {} {open
xywh {311 3 50 74} box THIN_DOWN_BOX
@ -420,30 +420,30 @@ Function {make_widgetbin()} {open
tooltip {Menu Bar} xywh {312 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[17]);}
}
Fl_Button {} {
user_data {"Fl_Menu_Button"}
callback type_make_cb
tooltip {Menu Button} xywh {312 28 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[26]);}
}
Fl_Button {} {
user_data {"Fl_Choice"}
callback type_make_cb
tooltip Choice xywh {312 52 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[15]);}
}
Fl_Button {} {
user_data {"menuitem"}
callback type_make_cb
tooltip {Menu Item} xywh {336 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[16]);}
}
Fl_Button {} {
user_data {"Fl_Menu_Button"}
callback type_make_cb
tooltip {Menu Button} xywh {312 28 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[26]);}
}
Fl_Button {} {
user_data {"submenu"}
callback type_make_cb
tooltip {Sub Menu} xywh {336 28 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[18]);}
}
Fl_Button {} {
user_data {"Fl_Choice"}
callback type_make_cb
tooltip Choice xywh {312 52 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[15]);}
}
}
Fl_Group {} {open
xywh {363 3 26 74} box THIN_DOWN_BOX
@ -476,6 +476,12 @@ Function {make_widgetbin()} {open
tooltip Box xywh {392 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[5]);}
}
Fl_Button {} {
user_data {"Fl_Clock"}
callback type_make_cb
tooltip Clock xywh {416 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[34]);}
}
Fl_Button {} {
user_data {"Fl_Help_View"}
callback type_make_cb
@ -484,16 +490,10 @@ Function {make_widgetbin()} {open
}
Fl_Button {} {
user_data {"Fl_Progress"}
callback type_make_cb
callback type_make_cb selected
tooltip Progress xywh {392 52 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[36]);}
}
Fl_Button {} {
user_data {"Fl_Clock"}
callback type_make_cb
tooltip Clock xywh {416 4 24 24} box THIN_UP_BOX
code0 {o->image(pixmap[34]);}
}
}
}
}

View File

@ -1,4 +1,4 @@
// generated by Fast Light User Interface Designer (fluid) version 1.0103
// generated by Fast Light User Interface Designer (fluid) version 1.0104
#ifndef function_panel_h
#define function_panel_h

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_get_key.cxx,v 1.5.2.3.2.4 2003/01/30 21:43:04 easysw Exp $"
// "$Id: Fl_get_key.cxx,v 1.5.2.3.2.5 2003/04/03 04:28:15 matthiaswm Exp $"
//
// Keyboard state routines for the Fast Light Tool Kit (FLTK).
//
@ -50,6 +50,7 @@ int Fl::event_key(int k) {
else
# endif
i = XKeysymToKeycode(fl_display, k);
if (i==0) return 0;
return fl_key_vector[i/8] & (1 << (i%8));
}
@ -62,5 +63,5 @@ int Fl::get_key(int k) {
#endif
//
// End of "$Id: Fl_get_key.cxx,v 1.5.2.3.2.4 2003/01/30 21:43:04 easysw Exp $".
// End of "$Id: Fl_get_key.cxx,v 1.5.2.3.2.5 2003/04/03 04:28:15 matthiaswm Exp $".
//

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_x.cxx,v 1.24.2.24.2.27 2003/03/09 02:00:06 spitzak Exp $"
// "$Id: Fl_x.cxx,v 1.24.2.24.2.28 2003/04/03 04:28:15 matthiaswm Exp $"
//
// X specific code for the Fast Light Tool Kit (FLTK).
//
@ -1087,20 +1087,21 @@ void Fl_X::make_xid(Fl_Window* win, XVisualInfo *visual, Colormap colormap)
XChangeProperty(fl_display, xp->xid, fl_XdndAware,
XA_ATOM, sizeof(int)*8, 0, (unsigned char*)&version, 1);
XWMHints hints;
hints.input = True;
hints.flags = InputHint;
XWMHints *hints = XAllocWMHints();
hints->input = True;
hints->flags = InputHint;
if (fl_show_iconic) {
hints.flags |= StateHint;
hints.initial_state = IconicState;
hints->flags |= StateHint;
hints->initial_state = IconicState;
fl_show_iconic = 0;
showit = 0;
}
if (win->icon()) {
hints.icon_pixmap = (Pixmap)win->icon();
hints.flags |= IconPixmapHint;
hints->icon_pixmap = (Pixmap)win->icon();
hints->flags |= IconPixmapHint;
}
XSetWMHints(fl_display, xp->xid, &hints);
XSetWMHints(fl_display, xp->xid, hints);
XFree(hints);
}
XMapWindow(fl_display, xp->xid);
@ -1129,51 +1130,51 @@ void Fl_X::sendxjunk() {
return; // because this recursively called here
}
XSizeHints hints;
XSizeHints *hints = XAllocSizeHints();
// memset(&hints, 0, sizeof(hints)); jreiser suggestion to fix purify?
hints.min_width = w->minw;
hints.min_height = w->minh;
hints.max_width = w->maxw;
hints.max_height = w->maxh;
hints.width_inc = w->dw;
hints.height_inc = w->dh;
hints.win_gravity = StaticGravity;
hints->min_width = w->minw;
hints->min_height = w->minh;
hints->max_width = w->maxw;
hints->max_height = w->maxh;
hints->width_inc = w->dw;
hints->height_inc = w->dh;
hints->win_gravity = StaticGravity;
// see the file /usr/include/X11/Xm/MwmUtil.h:
// fill all fields to avoid bugs in kwm and perhaps other window managers:
// 0, MWM_FUNC_ALL, MWM_DECOR_ALL
long prop[5] = {0, 1, 1, 0, 0};
if (hints.min_width != hints.max_width ||
hints.min_height != hints.max_height) { // resizable
hints.flags = PMinSize|PWinGravity;
if (hints.max_width >= hints.min_width ||
hints.max_height >= hints.min_height) {
hints.flags = PMinSize|PMaxSize|PWinGravity;
if (hints->min_width != hints->max_width ||
hints->min_height != hints->max_height) { // resizable
hints->flags = PMinSize|PWinGravity;
if (hints->max_width >= hints->min_width ||
hints->max_height >= hints->min_height) {
hints->flags = PMinSize|PMaxSize|PWinGravity;
// unfortunately we can't set just one maximum size. Guess a
// value for the other one. Some window managers will make the
// window fit on screen when maximized, others will put it off screen:
if (hints.max_width < hints.min_width) hints.max_width = Fl::w();
if (hints.max_height < hints.min_height) hints.max_height = Fl::h();
if (hints->max_width < hints->min_width) hints->max_width = Fl::w();
if (hints->max_height < hints->min_height) hints->max_height = Fl::h();
}
if (hints.width_inc && hints.height_inc) hints.flags |= PResizeInc;
if (hints->width_inc && hints->height_inc) hints->flags |= PResizeInc;
if (w->aspect) {
// stupid X! It could insist that the corner go on the
// straight line between min and max...
hints.min_aspect.x = hints.max_aspect.x = hints.min_width;
hints.min_aspect.y = hints.max_aspect.y = hints.min_height;
hints.flags |= PAspect;
hints->min_aspect.x = hints->max_aspect.x = hints->min_width;
hints->min_aspect.y = hints->max_aspect.y = hints->min_height;
hints->flags |= PAspect;
}
} else { // not resizable:
hints.flags = PMinSize|PMaxSize|PWinGravity;
hints->flags = PMinSize|PMaxSize|PWinGravity;
prop[0] = 1; // MWM_HINTS_FUNCTIONS
prop[1] = 1|2|16; // MWM_FUNC_ALL | MWM_FUNC_RESIZE | MWM_FUNC_MAXIMIZE
}
if (w->flags() & Fl_Window::FL_FORCE_POSITION) {
hints.flags |= USPosition;
hints.x = w->x();
hints.y = w->y();
hints->flags |= USPosition;
hints->x = w->x();
hints->y = w->y();
}
if (!w->border()) {
@ -1181,10 +1182,11 @@ void Fl_X::sendxjunk() {
prop[2] = 0; // no decorations
}
XSetWMNormalHints(fl_display, xid, &hints);
XSetWMNormalHints(fl_display, xid, hints);
XChangeProperty(fl_display, xid,
fl_MOTIF_WM_HINTS, fl_MOTIF_WM_HINTS,
32, 0, (unsigned char *)prop, 5);
XFree(hints);
}
void Fl_Window::size_range_() {
@ -1264,5 +1266,5 @@ void Fl_Window::make_current() {
#endif
//
// End of "$Id: Fl_x.cxx,v 1.24.2.24.2.27 2003/03/09 02:00:06 spitzak Exp $".
// End of "$Id: Fl_x.cxx,v 1.24.2.24.2.28 2003/04/03 04:28:15 matthiaswm Exp $".
//

View File

@ -1,5 +1,5 @@
//
// "$Id: fl_cursor.cxx,v 1.6.2.6.2.8 2003/01/30 21:43:30 easysw Exp $"
// "$Id: fl_cursor.cxx,v 1.6.2.6.2.9 2003/04/03 04:28:15 matthiaswm Exp $"
//
// Mouse cursor support for the Fast Light Tool Kit (FLTK).
//
@ -279,7 +279,7 @@ void Fl_Window::cursor(Fl_Cursor c, Fl_Color fg, Fl_Color bg) {
if (c >= FL_CURSOR_NS) {
TableEntry *q = (c > FL_CURSOR_NESW) ? table+4 : table+(c-FL_CURSOR_NS);
if (!(q->cursor)) {
XColor dummy;
XColor dummy = { 0 };
Pixmap p = XCreateBitmapFromData(fl_display,
RootWindow(fl_display, fl_screen), (const char*)(q->bits),
CURSORSIZE, CURSORSIZE);
@ -312,5 +312,5 @@ void Fl_Window::cursor(Fl_Cursor c, Fl_Color fg, Fl_Color bg) {
#endif
//
// End of "$Id: fl_cursor.cxx,v 1.6.2.6.2.8 2003/01/30 21:43:30 easysw Exp $".
// End of "$Id: fl_cursor.cxx,v 1.6.2.6.2.9 2003/04/03 04:28:15 matthiaswm Exp $".
//

View File

@ -1,5 +1,5 @@
/*
* "$Id: flstring.h,v 1.1.2.11 2003/01/30 21:44:26 easysw Exp $"
* "$Id: flstring.h,v 1.1.2.12 2003/04/03 04:28:15 matthiaswm Exp $"
*
* Common string header file for the Fast Light Tool Kit (FLTK).
*
@ -63,7 +63,7 @@ extern "C" {
* when included - to be resolved...
*/
# if defined(__APPLE__) && defined(__MWERKS__)
# if defined(__APPLE__) && defined(__MWERKS__) && defined(_MSL_USING_MW_C_HEADERS)
int strcasecmp(const char*,const char*);
int strncasecmp(const char*,const char*,int);
char *strdup(const char*);
@ -101,5 +101,5 @@ FL_EXPORT extern size_t fl_strlcpy(char *, const char *, size_t);
/*
* End of "$Id: flstring.h,v 1.1.2.11 2003/01/30 21:44:26 easysw Exp $".
* End of "$Id: flstring.h,v 1.1.2.12 2003/04/03 04:28:15 matthiaswm Exp $".
*/