diff options
Diffstat (limited to 'fluid/Fl_Function_Type.cxx')
| -rw-r--r-- | fluid/Fl_Function_Type.cxx | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/fluid/Fl_Function_Type.cxx b/fluid/Fl_Function_Type.cxx index f464378aa..eb90b4f15 100644 --- a/fluid/Fl_Function_Type.cxx +++ b/fluid/Fl_Function_Type.cxx @@ -969,11 +969,14 @@ void Fl_Class_Type::open() { Fl_Class_Type Fl_Class_type; static Fl_Class_Type *current_class; +extern Fl_Widget_Class_Type *current_widget_class; extern int varused_test; void write_public(int state) { - if (!current_class || varused_test) return; - if (current_class->write_public_state == state) return; - current_class->write_public_state = state; + if ((!current_class && !current_widget_class) || varused_test) return; + if (current_class && current_class->write_public_state == state) return; + if (current_widget_class && current_widget_class->write_public_state == state) return; + if (current_class) current_class->write_public_state = state; + if (current_widget_class) current_widget_class->write_public_state = state; write_h(state ? "public:\n" : "private:\n"); } |
