diff options
| author | Michael R Sweet <michael.r.sweet@gmail.com> | 1998-11-05 16:04:53 +0000 |
|---|---|---|
| committer | Michael R Sweet <michael.r.sweet@gmail.com> | 1998-11-05 16:04:53 +0000 |
| commit | 80b1529ef4d69d9e34a48a419a018d7f4d64054b (patch) | |
| tree | 7c743dc2f7f17654f1535314f6b0e6c5eadfc21b /fluid | |
| parent | 60399e3945dcfe9a2bb9f00f794d9e8634dd6bd9 (diff) | |
Multiple patches from Bill:
- Double-buffered window fixes.
- Tabs fixes.
- X/WIN32 fixes.
- Fl_Input fixes.
- Support for vsnprintf and friends.
- Support for printf-style arguments in utility functions.
git-svn-id: file:///fltk/svn/fltk/trunk@52 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'fluid')
| -rw-r--r-- | fluid/Fl_Widget_Type.cxx | 12 | ||||
| -rw-r--r-- | fluid/Fl_Window_Type.cxx | 44 | ||||
| -rw-r--r-- | fluid/fluid.cxx | 20 |
3 files changed, 38 insertions, 38 deletions
diff --git a/fluid/Fl_Widget_Type.cxx b/fluid/Fl_Widget_Type.cxx index cc7f07c79..cf266cc30 100644 --- a/fluid/Fl_Widget_Type.cxx +++ b/fluid/Fl_Widget_Type.cxx @@ -1,5 +1,5 @@ // -// "$Id: Fl_Widget_Type.cxx,v 1.4 1998/10/21 16:28:55 mike Exp $" +// "$Id: Fl_Widget_Type.cxx,v 1.5 1998/11/05 16:04:43 mike Exp $" // // Widget type code for the Fast Light Tool Kit (FLTK). // @@ -758,7 +758,7 @@ void callback_cb(Fl_Input* i, void *v) { } else { const char *c = i->value(); const char *d = c_check(c); - if (d) {fl_show_message("Error in callback:",d,0); haderror = 1; return;} + if (d) {fl_message("Error in callback: %s",d); haderror = 1; return;} for (Fl_Type *o = Fl_Type::first; o; o = o->next) if (o->selected) { o->callback(c); } @@ -771,7 +771,7 @@ void user_data_cb(Fl_Input *i, void *v) { } else { const char *c = i->value(); const char *d = c_check(c); - if (d) {fl_show_message("Error in user_data:",d,0); haderror = 1; return;} + if (d) {fl_message("Error in user_data: %s",d); haderror = 1; return;} for (Fl_Type *o = Fl_Type::first; o; o = o->next) if (o->selected) { o->user_data(c); } @@ -793,7 +793,7 @@ void user_data_type_cb(Fl_Input *i, void *v) { if (c && *c && c[strlen(c)-1] != '*' && strcmp(c,"long")) d = "must be pointer or long"; } - if (d) {fl_show_message("Error in type:",d,0); haderror = 1; return;} + if (d) {fl_message("Error in type: %s",d); haderror = 1; return;} for (Fl_Type *o = Fl_Type::first; o; o = o->next) if (o->selected) { o->user_data_type(c); } @@ -809,7 +809,7 @@ void v_input_cb(Fl_Input* i, void* v) { } else { const char *c = i->value(); const char *d = c_check(c&&c[0]=='#' ? c+1 : c); - if (d) {fl_show_message("Error in",i->label(),d); haderror = 1; return;} + if (d) {fl_message("Error in %s: %s",i->label(),d); haderror = 1; return;} for (Fl_Type *o = Fl_Type::first; o; o = o->next) if (o->selected && o->is_widget()) { Fl_Widget_Type *t = (Fl_Widget_Type*)o; @@ -1699,5 +1699,5 @@ int Fl_Widget_Type::read_fdesign(const char* name, const char* value) { } // -// End of "$Id: Fl_Widget_Type.cxx,v 1.4 1998/10/21 16:28:55 mike Exp $". +// End of "$Id: Fl_Widget_Type.cxx,v 1.5 1998/11/05 16:04:43 mike Exp $". // diff --git a/fluid/Fl_Window_Type.cxx b/fluid/Fl_Window_Type.cxx index 06e43036a..0798f5c74 100644 --- a/fluid/Fl_Window_Type.cxx +++ b/fluid/Fl_Window_Type.cxx @@ -1,5 +1,5 @@ // -// "$Id: Fl_Window_Type.cxx,v 1.6 1998/10/21 16:28:56 mike Exp $" +// "$Id: Fl_Window_Type.cxx,v 1.7 1998/11/05 16:04:44 mike Exp $" // // Window type code for the Fast Light Tool Kit (FLTK). // @@ -293,29 +293,29 @@ Fl_Window_Type Fl_Window_type; // Resize from window manager, try to resize it back to a legal size. // This is not proper X behavior, but works on 4DWM and fvwm void Overlay_Window::resize(int X,int Y,int W,int H) { - if (!visible() || W==w() && H==h()) { - Fl_Overlay_Window::resize(X,Y,W,H); - return; - } - int nw = gridx&&W!=w() ? ((W+gridx/2)/gridx)*gridx : W; - int nh = gridy&&H!=h() ? ((H+gridy/2)/gridy)*gridy : H; +// if (!visible() || W==w() && H==h()) { +// Fl_Overlay_Window::resize(X,Y,W,H); +// return; +// } +// int nw = gridx&&W!=w() ? ((W+gridx/2)/gridx)*gridx : W; +// int nh = gridy&&H!=h() ? ((H+gridy/2)/gridy)*gridy : H; Fl_Widget* t = resizable(); resizable(0); Fl_Overlay_Window::resize(X,Y,W,H); resizable(t); - // make sure new window size surrounds the widgets: - int b = 0; - int r = 0; - for (Fl_Type *o=window->next; o && o->level>window->level; o=o->next) - if (o->is_widget() && !o->is_menu_item()) { - Fl_Widget* w = ((Fl_Widget_Type*)o)->o; - if (w->x()+w->w() > r) r = w->x()+w->w(); - if (w->y()+w->h() > b) b = w->y()+w->h(); - } - if (nh < b) nh = b; - if (nw < r) nw = r; - // If changed, tell the window manager. Skip really big windows - // that might be bigger than screen: - if (nw != W && nw < Fl::w()-100 || nh != H && nh < Fl::h()-100) size(nw,nh); +// // make sure new window size surrounds the widgets: +// int b = 0; +// int r = 0; +// for (Fl_Type *o=window->next; o && o->level>window->level; o=o->next) +// if (o->is_widget() && !o->is_menu_item()) { +// Fl_Widget* w = ((Fl_Widget_Type*)o)->o; +// if (w->x()+w->w() > r) r = w->x()+w->w(); +// if (w->y()+w->h() > b) b = w->y()+w->h(); +// } +// if (nh < b) nh = b; +// if (nw < r) nw = r; +// // If changed, tell the window manager. Skip really big windows +// // that might be bigger than screen: +// if (nw != W && nw < Fl::w()-100 || nh != H && nh < Fl::h()-100) size(nw,nh); } // calculate actual move by moving mouse position (mx,my) to @@ -693,5 +693,5 @@ int Fl_Window_Type::read_fdesign(const char* name, const char* value) { } // -// End of "$Id: Fl_Window_Type.cxx,v 1.6 1998/10/21 16:28:56 mike Exp $". +// End of "$Id: Fl_Window_Type.cxx,v 1.7 1998/11/05 16:04:44 mike Exp $". // diff --git a/fluid/fluid.cxx b/fluid/fluid.cxx index 2f9f11d1f..948d9a061 100644 --- a/fluid/fluid.cxx +++ b/fluid/fluid.cxx @@ -1,5 +1,5 @@ // -// "$Id: fluid.cxx,v 1.5 1998/10/21 17:28:27 mike Exp $" +// "$Id: fluid.cxx,v 1.6 1998/11/05 16:04:44 mike Exp $" // // FLUID main entry for the Fast Light Tool Kit (FLTK). // @@ -121,7 +121,7 @@ void save_cb(Fl_Widget *, void *v) { set_filename(c); } if (!write_file(c)) { - fl_show_message("Error writing", c, strerror(errno)); + fl_message("Error writing %s: %s", c, strerror(errno)); return; } modflag = 0; @@ -132,7 +132,7 @@ void open_cb(Fl_Widget *, void *v) { const char *c; if (!(c = fl_file_chooser("Open:", "*.f[ld]", filename))) return; if (!read_file(c, v!=0)) { - fl_show_message("Can't read", c, strerror(errno)); + fl_message("Can't read %s: %s", c, strerror(errno)); return; } if (!v) {set_filename(c); modflag = 0;} @@ -178,9 +178,9 @@ void write_cb(Fl_Widget *, void *) { if (!x) {fprintf(stderr,"%s : %s\n",cname,strerror(errno)); exit(1);} } else { if (!x) { - fl_show_message("Can't write", cname, strerror(errno)); + fl_message("Can't write %s: %s", cname, strerror(errno)); } else { - fl_show_message("Wrote", cname, 0); + fl_message("Wrote %s", cname, 0); } } } @@ -219,7 +219,7 @@ void copy_cb(Fl_Widget*, void*) { if (!Fl_Type::current) return; ipasteoffset = 10; if (!write_file(cutfname(),1)) { - fl_show_message("Can't write", cutfname(), strerror(errno)); + fl_message("Can't write %s: %s", cutfname(), strerror(errno)); return; } } @@ -231,7 +231,7 @@ void cut_cb(Fl_Widget *, void *) { Fl_Type *p = Fl_Type::current->parent; while (p && p->selected) p = p->parent; if (!write_file(cutfname(),1)) { - fl_show_message("Can't write", cutfname(), strerror(errno)); + fl_message("Can't write %s: %s", cutfname(), strerror(errno)); return; } delete_all(1); @@ -246,7 +246,7 @@ void paste_cb(Fl_Widget*, void*) { if (gridx>1) pasteoffset = ((pasteoffset-1)/gridx+1)*gridx; if (gridy>1) pasteoffset = ((pasteoffset-1)/gridy+1)*gridy; if (!read_file(cutfname(), 1)) { - fl_show_message("Can't read", cutfname(), strerror(errno)); + fl_message("Can't read %s: %s", cutfname(), strerror(errno)); } pasteoffset = 0; ipasteoffset += 10; @@ -396,7 +396,7 @@ int main(int argc,char **argv) { fprintf(stderr,"%s : %s\n", c, strerror(errno)); exit(1); } - fl_show_message("Can't read", c, strerror(errno)); + fl_message("Can't read %s: %s", c, strerror(errno)); } if (compile_only) {write_cb(0,0); exit(0);} modflag = 0; @@ -407,5 +407,5 @@ int main(int argc,char **argv) { } // -// End of "$Id: fluid.cxx,v 1.5 1998/10/21 17:28:27 mike Exp $". +// End of "$Id: fluid.cxx,v 1.6 1998/11/05 16:04:44 mike Exp $". // |
