From 3e9b10363d43adfff3d2bbff83df540454e1a4a9 Mon Sep 17 00:00:00 2001 From: Matthias Melcher Date: Sat, 24 Sep 2005 20:41:03 +0000 Subject: STR #1027: FLUID size_range controls would not set the 'modified' flag git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4579 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- fluid/Fl_Widget_Type.cxx | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'fluid') diff --git a/fluid/Fl_Widget_Type.cxx b/fluid/Fl_Widget_Type.cxx index b4740b56b..19bf16926 100644 --- a/fluid/Fl_Widget_Type.cxx +++ b/fluid/Fl_Widget_Type.cxx @@ -1314,12 +1314,15 @@ void min_w_cb(Fl_Value_Input* i, void* v) { i->parent()->show(); i->value(((Fl_Window_Type*)current_widget)->sr_min_w); } else { + int mod = 0; int n = (int)i->value(); for (Fl_Type *o = Fl_Type::first; o; o = o->next) { if (o->selected && o->is_window()) { ((Fl_Window_Type*)current_widget)->sr_min_w = n; + mod = 1; } } + if (mod) set_modflag(1); } } @@ -1327,12 +1330,15 @@ void min_h_cb(Fl_Value_Input* i, void* v) { if (v == LOAD) { i->value(((Fl_Window_Type*)current_widget)->sr_min_h); } else { + int mod = 0; int n = (int)i->value(); for (Fl_Type *o = Fl_Type::first; o; o = o->next) { if (o->selected && o->is_window()) { ((Fl_Window_Type*)current_widget)->sr_min_h = n; + mod = 1; } } + if (mod) set_modflag(1); } } @@ -1340,12 +1346,15 @@ void max_w_cb(Fl_Value_Input* i, void* v) { if (v == LOAD) { i->value(((Fl_Window_Type*)current_widget)->sr_max_w); } else { + int mod = 0; int n = (int)i->value(); for (Fl_Type *o = Fl_Type::first; o; o = o->next) { if (o->selected && o->is_window()) { ((Fl_Window_Type*)current_widget)->sr_max_w = n; + mod = 1; } } + if (mod) set_modflag(1); } } @@ -1353,40 +1362,49 @@ void max_h_cb(Fl_Value_Input* i, void* v) { if (v == LOAD) { i->value(((Fl_Window_Type*)current_widget)->sr_max_h); } else { + int mod = 0; int n = (int)i->value(); for (Fl_Type *o = Fl_Type::first; o; o = o->next) { if (o->selected && o->is_window()) { ((Fl_Window_Type*)current_widget)->sr_max_h = n; + mod = 1; } } + if (mod) set_modflag(1); } } void set_min_size_cb(Fl_Button*, void* v) { if (v == LOAD) { } else { + int mod = 0; for (Fl_Type *o = Fl_Type::first; o; o = o->next) { if (o->selected && o->is_window()) { Fl_Window_Type *win = (Fl_Window_Type*)current_widget; win->sr_min_w = win->o->w(); win->sr_min_h = win->o->h(); + mod = 1; } } propagate_load(the_panel, LOAD); + if (mod) set_modflag(1); } } void set_max_size_cb(Fl_Button*, void* v) { if (v == LOAD) { } else { + int mod = 0; for (Fl_Type *o = Fl_Type::first; o; o = o->next) { if (o->selected && o->is_window()) { Fl_Window_Type *win = (Fl_Window_Type*)current_widget; win->sr_max_w = win->o->w(); win->sr_max_h = win->o->h(); + mod = 1; } } propagate_load(the_panel, LOAD); + if (mod) set_modflag(1); } } -- cgit v1.2.3