summaryrefslogtreecommitdiff
path: root/fluid/Fl_Window_Type.cxx
diff options
context:
space:
mode:
authorMatthias Melcher <github@matthiasm.com>2022-11-26 01:35:50 +0100
committerGitHub <noreply@github.com>2022-11-26 01:35:50 +0100
commit6e5c472cf9641426c5425ea2f404e8908d76d63e (patch)
tree0f7ec46f88f01257702f1f9a7c8323a7fdc768c3 /fluid/Fl_Window_Type.cxx
parentc1a7c4af042a593b4b3a1df3e750b0cc80362486 (diff)
Handle Fluid project settings better (#556)
Fix allocation bug in Fl_String
Diffstat (limited to 'fluid/Fl_Window_Type.cxx')
-rw-r--r--fluid/Fl_Window_Type.cxx87
1 files changed, 41 insertions, 46 deletions
diff --git a/fluid/Fl_Window_Type.cxx b/fluid/Fl_Window_Type.cxx
index 9138378c3..263306989 100644
--- a/fluid/Fl_Window_Type.cxx
+++ b/fluid/Fl_Window_Type.cxx
@@ -43,11 +43,6 @@
#include <stdlib.h>
#include <stdio.h>
-int include_H_from_C = 1;
-int use_FL_COMMAND = 0;
-int utf8_in_src = 0;
-int avoid_early_includes = 0;
-
extern Fl_Preferences fluid_prefs;
inline int fl_min(int a, int b) { return (a < b ? a : b); }
@@ -122,7 +117,7 @@ void default_widget_size_cb(Fl_Round_Button *b, long size) {
void i18n_type_cb(Fl_Choice *c, void *) {
undo_checkpoint();
- switch (i18n_type = c->value()) {
+ switch (P.i18n_type = c->value()) {
case 0 : /* None */
i18n_include_input->hide();
i18n_conditional_input->hide();
@@ -133,13 +128,13 @@ void i18n_type_cb(Fl_Choice *c, void *) {
break;
case 1 : /* GNU gettext */
i18n_include_input->value("<libintl.h>");
- i18n_include = i18n_include_input->value();
+ P.i18n_include = i18n_include_input->value();
i18n_conditional_input->value("");
- i18n_conditional = i18n_conditional_input->value();
+ P.i18n_conditional = i18n_conditional_input->value();
i18n_function_input->value("gettext");
- i18n_function = i18n_function_input->value();
+ P.i18n_function = i18n_function_input->value();
i18n_static_function_input->value("gettext_noop");
- i18n_static_function = i18n_static_function_input->value();
+ P.i18n_static_function = i18n_static_function_input->value();
i18n_include_input->show();
i18n_conditional_input->show();
i18n_file_input->hide();
@@ -149,13 +144,13 @@ void i18n_type_cb(Fl_Choice *c, void *) {
break;
case 2 : /* POSIX cat */
i18n_include_input->value("<nl_types.h>");
- i18n_include = i18n_include_input->value();
+ P.i18n_include = i18n_include_input->value();
i18n_conditional_input->value("");
- i18n_conditional = i18n_conditional_input->value();
+ P.i18n_conditional = i18n_conditional_input->value();
i18n_file_input->value("");
- i18n_file = i18n_file_input->value();
+ P.i18n_file = i18n_file_input->value();
i18n_set_input->value("1");
- i18n_set = i18n_set_input->value();
+ P.i18n_set = i18n_set_input->value();
i18n_include_input->show();
i18n_conditional_input->show();
i18n_file_input->show();
@@ -172,15 +167,15 @@ void i18n_text_cb(Fl_Input *i, void *) {
undo_checkpoint();
if (i == i18n_function_input)
- i18n_function = i->value();
+ P.i18n_function = i->value();
else if (i == i18n_static_function_input)
- i18n_static_function = i->value();
+ P.i18n_static_function = i->value();
else if (i == i18n_file_input)
- i18n_file = i->value();
+ P.i18n_file = i->value();
else if (i == i18n_include_input)
- i18n_include = i->value();
+ P.i18n_include = i->value();
else if (i == i18n_conditional_input)
- i18n_conditional = i->value();
+ P.i18n_conditional = i->value();
set_modflag(1);
}
@@ -189,27 +184,27 @@ void i18n_int_cb(Fl_Int_Input *i, void *) {
undo_checkpoint();
if (i == i18n_set_input)
- i18n_set = i->value();
+ P.i18n_set = i->value();
set_modflag(1);
}
void show_project_cb(Fl_Widget *, void *) {
if(project_window==0) make_project_window();
- include_H_from_C_button->value(include_H_from_C);
- use_FL_COMMAND_button->value(use_FL_COMMAND);
- utf8_in_src_button->value(utf8_in_src);
- avoid_early_includes_button->value(avoid_early_includes);
- header_file_input->value(header_file_name);
- code_file_input->value(code_file_name);
- i18n_type_chooser->value(i18n_type);
- i18n_function_input->value(i18n_function);
- i18n_static_function_input->value(i18n_static_function);
- i18n_file_input->value(i18n_file);
- i18n_set_input->value(i18n_set);
- i18n_include_input->value(i18n_include);
- i18n_conditional_input->value(i18n_conditional);
- switch (i18n_type) {
+ include_H_from_C_button->value(P.include_H_from_C);
+ use_FL_COMMAND_button->value(P.use_FL_COMMAND);
+ utf8_in_src_button->value(P.utf8_in_src);
+ avoid_early_includes_button->value(P.avoid_early_includes);
+ header_file_input->value(P.header_file_name);
+ code_file_input->value(P.code_file_name);
+ i18n_type_chooser->value(P.i18n_type);
+ i18n_function_input->value(P.i18n_function);
+ i18n_static_function_input->value(P.i18n_static_function);
+ i18n_file_input->value(P.i18n_file);
+ i18n_set_input->value(P.i18n_set);
+ i18n_include_input->value(P.i18n_include);
+ i18n_conditional_input->value(P.i18n_conditional);
+ switch (P.i18n_type) {
case 0 : /* None */
i18n_include_input->hide();
i18n_conditional_input->hide();
@@ -267,41 +262,41 @@ void show_global_settings_cb(Fl_Widget *, void *) {
}
void header_input_cb(Fl_Input* i, void*) {
- if (header_file_name && strcmp(header_file_name, i->value()))
+ if (strcmp(P.header_file_name, i->value()))
set_modflag(1);
- header_file_name = i->value();
+ P.header_file_name = i->value();
}
void code_input_cb(Fl_Input* i, void*) {
- if (code_file_name && strcmp(code_file_name, i->value()))
+ if (strcmp(P.code_file_name, i->value()))
set_modflag(1);
- code_file_name = i->value();
+ P.code_file_name = i->value();
}
void include_H_from_C_button_cb(Fl_Check_Button* b, void*) {
- if (include_H_from_C != b->value()) {
+ if (P.include_H_from_C != b->value()) {
set_modflag(1);
- include_H_from_C = b->value();
+ P.include_H_from_C = b->value();
}
}
void use_FL_COMMAND_button_cb(Fl_Check_Button* b, void*) {
- if (use_FL_COMMAND != b->value()) {
+ if (P.use_FL_COMMAND != b->value()) {
set_modflag(1);
- use_FL_COMMAND = b->value();
+ P.use_FL_COMMAND = b->value();
}
}
void utf8_in_src_cb(Fl_Check_Button *b, void*) {
- if (utf8_in_src != b->value()) {
+ if (P.utf8_in_src != b->value()) {
set_modflag(1);
- utf8_in_src = b->value();
+ P.utf8_in_src = b->value();
}
}
void avoid_early_includes_cb(Fl_Check_Button *b, void*) {
- if (avoid_early_includes != b->value()) {
+ if (P.avoid_early_includes != b->value()) {
set_modflag(1);
- avoid_early_includes = b->value();
+ P.avoid_early_includes = b->value();
}
}