]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/xforms/form_preferences.C
Bugfixes: checkboxes to radiobuttons (from J�rgen S) and remove a little
[lyx.git] / src / frontends / xforms / form_preferences.C
index a6c243c0f7db9aa7445d51e62a666892c4a147de..69bfa2dc55b948c8189fc38f34a28ed54d0303e3 100644 (file)
@@ -1,6 +1,6 @@
 // File modified by fdfix.sh for use by lyx (with xforms >= 0.88) and gettext
 #include <config.h>
-#include "lyx_gui_misc.h"
+#include "xforms_helpers.h"
 #include "gettext.h"
 
 /* Form definition file generated with fdesign. */
@@ -31,7 +31,7 @@ FD_form_preferences * FormPreferences::build_preferences()
     fl_set_object_lstyle(obj, FL_BOLD_STYLE);
   {
     char const * const dummy = N_("Restore|#R");
-    fdui->button_restore = obj = fl_add_button(FL_NORMAL_BUTTON, 5, 390, 90, 30, idex(_(dummy)));
+    fdui->button_restore = obj = fl_add_button(FL_NORMAL_BUTTON, 5, 390, 100, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -64,22 +64,22 @@ FD_form_preferences * FormPreferences::build_preferences()
 }
 /*---------------------------------------*/
 
-FD_form_outer_tab::~FD_form_outer_tab()
+FD_form_inner_tab::~FD_form_inner_tab()
 {
   if ( form->visible ) fl_hide_form( form );
   fl_free_form( form );
 }
 
 
-FD_form_outer_tab * FormPreferences::build_outer_tab()
+FD_form_inner_tab * FormPreferences::build_inner_tab()
 {
   FL_OBJECT *obj;
-  FD_form_outer_tab *fdui = new FD_form_outer_tab;
+  FD_form_inner_tab *fdui = new FD_form_inner_tab;
 
   fdui->form = fl_bgn_form(FL_NO_BOX, 455, 375);
   fdui->form->u_vdata = this;
   obj = fl_add_box(FL_FLAT_BOX, 0, 0, 455, 375, "");
-  fdui->tabfolder_outer = obj = fl_add_tabfolder(FL_TOP_TABFOLDER, 0, 0, 455, 375, "");
+  fdui->tabfolder_inner = obj = fl_add_tabfolder(FL_TOP_TABFOLDER, 0, 0, 455, 375, "");
     fl_set_object_boxtype(obj, FL_FLAT_BOX);
   fl_end_form();
 
@@ -104,19 +104,19 @@ FD_form_screen_fonts * FormPreferences::build_screen_fonts()
   fdui->form = fl_bgn_form(FL_NO_BOX, 455, 375);
   fdui->form->u_vdata = this;
   obj = fl_add_box(FL_FLAT_BOX, 0, 0, 455, 375, "");
-  fdui->input_roman = obj = fl_add_input(FL_NORMAL_INPUT, 210, 5, 200, 30, _("Roman"));
+  fdui->input_roman = obj = fl_add_input(FL_NORMAL_INPUT, 145, 25, 140, 30, _("Roman"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_sans = obj = fl_add_input(FL_NORMAL_INPUT, 210, 35, 200, 30, _("Sans Serif"));
+  fdui->input_sans = obj = fl_add_input(FL_NORMAL_INPUT, 145, 60, 140, 30, _("Sans Serif"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_typewriter = obj = fl_add_input(FL_NORMAL_INPUT, 210, 65, 200, 30, _("Typewriter"));
+  fdui->input_typewriter = obj = fl_add_input(FL_NORMAL_INPUT, 145, 95, 140, 30, _("Typewriter"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_screen_encoding = obj = fl_add_input(FL_NORMAL_INPUT, 210, 95, 200, 30, _("Encoding"));
+  fdui->input_screen_encoding = obj = fl_add_input(FL_NORMAL_INPUT, 145, 130, 140, 30, _("Encoding"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->check_scalable = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 60, 143, 33, 31, _("Use scalable fonts"));
+  fdui->check_scalable = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 20, 190, 34, 41, _("Rescale bitmap fonts"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_lalign(obj, FL_ALIGN_RIGHT);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
@@ -124,7 +124,7 @@ FD_form_screen_fonts * FormPreferences::build_screen_fonts()
   {
     // xgettext:no-c-format
     char const * const dummy = N_("Zoom %|#Z");
-    fdui->counter_zoom = obj = fl_add_counter(FL_NORMAL_COUNTER, 310, 130, 100, 30, idex(_(dummy)));
+    fdui->counter_zoom = obj = fl_add_counter(FL_NORMAL_COUNTER, 185, 245, 95, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -136,7 +136,7 @@ FD_form_screen_fonts * FormPreferences::build_screen_fonts()
     fl_set_counter_step(obj, 1, 1);
   {
     char const * const dummy = N_("Screen DPI|#D");
-    fdui->counter_dpi = obj = fl_add_counter(FL_NORMAL_COUNTER, 310, 160, 100, 30, idex(_(dummy)));
+    fdui->counter_dpi = obj = fl_add_counter(FL_NORMAL_COUNTER, 185, 280, 95, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -146,36 +146,39 @@ FD_form_screen_fonts * FormPreferences::build_screen_fonts()
     fl_set_counter_bounds(obj, 0, 999);
     fl_set_counter_value(obj, 150);
     fl_set_counter_step(obj, 1, 1);
-  fdui->input_tiny = obj = fl_add_input(FL_FLOAT_INPUT, 60, 198, 70, 30, _("tiny"));
+  fdui->input_tiny = obj = fl_add_input(FL_FLOAT_INPUT, 370, 20, 70, 30, _("tiny"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_script = obj = fl_add_input(FL_FLOAT_INPUT, 200, 199, 70, 30, _("script"));
+  fdui->input_script = obj = fl_add_input(FL_FLOAT_INPUT, 370, 50, 70, 30, _("smallest"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_footnote = obj = fl_add_input(FL_FLOAT_INPUT, 340, 198, 70, 30, _("footnote"));
+  fdui->input_footnote = obj = fl_add_input(FL_FLOAT_INPUT, 370, 80, 70, 30, _("smaller"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_small = obj = fl_add_input(FL_FLOAT_INPUT, 60, 228, 70, 30, _("small"));
+  fdui->input_small = obj = fl_add_input(FL_FLOAT_INPUT, 370, 110, 70, 30, _("small"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_normal = obj = fl_add_input(FL_FLOAT_INPUT, 200, 229, 70, 30, _("normal"));
+  fdui->input_normal = obj = fl_add_input(FL_FLOAT_INPUT, 370, 140, 70, 30, _("normal"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_large = obj = fl_add_input(FL_FLOAT_INPUT, 340, 228, 70, 30, _("large"));
+  fdui->input_large = obj = fl_add_input(FL_FLOAT_INPUT, 370, 170, 70, 30, _("large"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_larger = obj = fl_add_input(FL_FLOAT_INPUT, 60, 258, 70, 30, _("larger"));
+  fdui->input_larger = obj = fl_add_input(FL_FLOAT_INPUT, 370, 200, 70, 30, _("larger"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_largest = obj = fl_add_input(FL_FLOAT_INPUT, 200, 259, 70, 30, _("largest"));
+  fdui->input_largest = obj = fl_add_input(FL_FLOAT_INPUT, 370, 230, 70, 30, _("largest"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_huge = obj = fl_add_input(FL_FLOAT_INPUT, 340, 258, 70, 30, _("huge"));
+  fdui->input_huge = obj = fl_add_input(FL_FLOAT_INPUT, 370, 260, 70, 30, _("huge"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_huger = obj = fl_add_input(FL_FLOAT_INPUT, 60, 288, 70, 30, _("huger"));
+  fdui->input_huger = obj = fl_add_input(FL_FLOAT_INPUT, 370, 290, 70, 30, _("huger"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 10, 15, 285, 155, _("Fonts used"));
+  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 305, 15, 140, 310, _("Size"));
+  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 10, 180, 285, 145, _("Scale & Resolution"));
   fl_end_form();
 
   fdui->form->fdui = fdui;
@@ -199,38 +202,49 @@ FD_form_interface * FormPreferences::build_interface()
   fdui->form = fl_bgn_form(FL_NO_BOX, 450, 350);
   fdui->form->u_vdata = this;
   obj = fl_add_box(FL_FLAT_BOX, 0, 0, 450, 350, "");
-  fdui->input_popup_font = obj = fl_add_input(FL_NORMAL_INPUT, 230, 30, 200, 30, _("Popup Font"));
+  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 15, 20, 425, 110, _("Popup Fonts & Encoding"));
+  fdui->input_popup_normal_font = obj = fl_add_input(FL_NORMAL_INPUT, 230, 30, 200, 30, _("Normal Font"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_menu_font = obj = fl_add_input(FL_NORMAL_INPUT, 230, 60, 200, 30, _("Menu Font"));
+  fdui->input_popup_bold_font = obj = fl_add_input(FL_NORMAL_INPUT, 230, 60, 200, 30, _("Bold Font"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_popup_encoding = obj = fl_add_input(FL_NORMAL_INPUT, 230, 90, 200, 30, _("Popup Encoding"));
+  fdui->input_popup_font_encoding = obj = fl_add_input(FL_NORMAL_INPUT, 230, 90, 200, 30, _("Popup Encoding"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 15, 150, 425, 85, _("Layout & Bindings"));
   {
     char const * const dummy = N_("User Interface file|#U");
-    fdui->input_ui_file = obj = fl_add_input(FL_NORMAL_INPUT, 160, 148, 190, 30, idex(_(dummy)));
+    fdui->input_ui_file = obj = fl_add_input(FL_NORMAL_INPUT, 160, 160, 170, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->button_ui_file_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 350, 148, 80, 30, _("Browse..."));
+  {
+    char const * const dummy = N_("Browse...|#r");
+    fdui->button_ui_file_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 335, 160, 100, 30, idex(_(dummy)));
+    fl_set_button_shortcut(obj, scex(_(dummy)), 1);
+  }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Bind file|#B");
-    fdui->input_bind_file = obj = fl_add_input(FL_NORMAL_INPUT, 160, 178, 190, 30, idex(_(dummy)));
+    fdui->input_bind_file = obj = fl_add_input(FL_NORMAL_INPUT, 160, 195, 170, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->button_bind_file_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 350, 178, 80, 30, _("Browse..."));
+  {
+    char const * const dummy = N_("Browse...|#w");
+    fdui->button_bind_file_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 335, 195, 100, 30, idex(_(dummy)));
+    fl_set_button_shortcut(obj, scex(_(dummy)), 1);
+  }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 15, 255, 425, 45, _("Dead Keys"));
   {
-    char const * const dummy = N_("Override X-Windows dead-keys|#O");
-    fdui->check_override_x_dead_keys = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 24, 230, 30, 30, idex(_(dummy)));
+    char const * const dummy = N_("Override X Window dead-keys|#O");
+    fdui->check_override_x_dead_keys = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 95, 265, 30, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -319,9 +333,19 @@ FD_form_colors * FormPreferences::build_colors()
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
     fl_set_slider_size(obj, 0.15);
-  fdui->button_colorspace = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 310, 219, 30, 30, "");
-    fl_set_object_lsize(obj, FL_NORMAL_SIZE);
+
+  fdui->group_radio_printto = fl_bgn_group();
+  fdui->radio_hsv = obj = fl_add_round3dbutton(FL_RADIO_BUTTON, 250, 220, 30, 30, _("HSV"));
+    fl_set_object_color(obj, FL_COL1, FL_YELLOW);
+    fl_set_object_lalign(obj, FL_ALIGN_RIGHT);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+  fdui->radio_rgb = obj = fl_add_round3dbutton(FL_RADIO_BUTTON, 335, 220, 30, 30, _("RGB"));
+    fl_set_object_color(obj, FL_COL1, FL_YELLOW);
+    fl_set_object_lalign(obj, FL_ALIGN_RIGHT);
+    fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+    fl_set_button(obj, 1);
+  fl_end_group();
+
   fdui->text_color_values = obj = fl_add_text(FL_NORMAL_TEXT, 250, 250, 150, 30, "");
     fl_set_object_boxtype(obj, FL_DOWN_BOX);
     fl_set_object_lalign(obj, FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
@@ -410,22 +434,58 @@ FD_form_lnf_misc * FormPreferences::build_lnf_misc()
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
     fl_set_button(obj, 1);
-  fdui->counter_wm_jump = obj = fl_add_counter(FL_NORMAL_COUNTER, 320, 225, 115, 30, _("Wheel mouse jump"));
+  fdui->counter_wm_jump = obj = fl_add_counter(FL_NORMAL_COUNTER, 20, 235, 115, 30, _("Wheel mouse jump"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
-    fl_set_object_lalign(obj, FL_ALIGN_LEFT);
+    fl_set_object_lalign(obj, FL_ALIGN_RIGHT);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
     fl_set_counter_precision(obj, 0);
     fl_set_counter_bounds(obj, 0, 250);
     fl_set_counter_value(obj, 100);
     fl_set_counter_step(obj, 1, 1);
-  fdui->counter_autosave = obj = fl_add_counter(FL_NORMAL_COUNTER, 320, 255, 115, 30, _("Autosave interval"));
+  fdui->counter_autosave = obj = fl_add_counter(FL_NORMAL_COUNTER, 20, 270, 115, 30, _("Autosave interval"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
-    fl_set_object_lalign(obj, FL_ALIGN_LEFT);
+    fl_set_object_lalign(obj, FL_ALIGN_RIGHT);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
     fl_set_counter_precision(obj, 0);
     fl_set_counter_bounds(obj, 0, 1200);
     fl_set_counter_value(obj, 300);
     fl_set_counter_step(obj, 1, 1);
+
+  fdui->radio_button_group_display = fl_bgn_group();
+  {
+    char const * const dummy = N_("in Monochrome|#M");
+    fdui->radio_display_monochrome = obj = fl_add_round3dbutton(FL_RADIO_BUTTON, 285, 35, 30, 30, idex(_(dummy)));
+    fl_set_button_shortcut(obj, scex(_(dummy)), 1);
+  }
+    fl_set_object_color(obj, FL_COL1, FL_YELLOW);
+    fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+    fl_set_button(obj, 1);
+  {
+    char const * const dummy = N_("in Grayscale|#G");
+    fdui->radio_display_grayscale = obj = fl_add_round3dbutton(FL_RADIO_BUTTON, 285, 65, 30, 30, idex(_(dummy)));
+    fl_set_button_shortcut(obj, scex(_(dummy)), 1);
+  }
+    fl_set_object_color(obj, FL_COL1, FL_YELLOW);
+    fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+  {
+    char const * const dummy = N_("in Color|#C");
+    fdui->radio_display_color = obj = fl_add_round3dbutton(FL_RADIO_BUTTON, 285, 95, 30, 30, idex(_(dummy)));
+    fl_set_button_shortcut(obj, scex(_(dummy)), 1);
+  }
+    fl_set_object_color(obj, FL_COL1, FL_YELLOW);
+    fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+  {
+    char const * const dummy = N_("Don't display|#D");
+    fdui->radio_no_display = obj = fl_add_round3dbutton(FL_RADIO_BUTTON, 285, 125, 30, 30, idex(_(dummy)));
+    fl_set_button_shortcut(obj, scex(_(dummy)), 1);
+  }
+    fl_set_object_color(obj, FL_COL1, FL_YELLOW);
+    fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+  fl_end_group();
+
+  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 275, 15, 160, 210, _("Display Graphics"));
+  obj = fl_add_frame(FL_ENGRAVED_FRAME, 15, 15, 255, 210, "");
+  obj = fl_add_frame(FL_ENGRAVED_FRAME, 15, 230, 420, 75, "");
   fl_end_form();
 
   fdui->form->fdui = fdui;
@@ -451,12 +511,11 @@ FD_form_spelloptions * FormPreferences::build_spelloptions()
   obj = fl_add_box(FL_FLAT_BOX, 0, 0, 450, 360, "");
   {
     char const * const dummy = N_("Spell command|#S");
-    fdui->choice_spell_command = obj = fl_add_choice(FL_NORMAL_CHOICE, 141, 47, 171, 34, idex(_(dummy)));
+    fdui->choice_spell_command = obj = fl_add_choice(FL_NORMAL_CHOICE, 240, 30, 171, 34, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_boxtype(obj, FL_FRAME_BOX);
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
-    fl_set_object_lalign(obj, FL_ALIGN_TOP);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Use alternative language|#a");
@@ -490,14 +549,14 @@ FD_form_spelloptions * FormPreferences::build_spelloptions()
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Browse...|#B");
-    fdui->button_personal_dict = obj = fl_add_button(FL_NORMAL_BUTTON, 239, 190, 89, 30, idex(_(dummy)));
+    fdui->button_personal_dict = obj = fl_add_button(FL_NORMAL_BUTTON, 240, 195, 100, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Accept compound words|#w");
-    fdui->check_compound_words = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 130, 230, 30, 30, idex(_(dummy)));
+    fdui->check_compound_words = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 155, 250, 30, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -505,12 +564,15 @@ FD_form_spelloptions * FormPreferences::build_spelloptions()
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Use input encoding|#i");
-    fdui->check_input_enc = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 130, 260, 30, 30, idex(_(dummy)));
+    fdui->check_input_enc = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 155, 275, 30, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_lalign(obj, FL_ALIGN_RIGHT);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 15, 245, 425, 60, _("Advanced Options"));
+  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 15, 20, 425, 55, _("Interface"));
+  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 15, 90, 425, 140, _("Language Options"));
   fl_end_form();
 
   fdui->form->fdui = fdui;
@@ -558,25 +620,33 @@ FD_form_language * FormPreferences::build_language()
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("1st|#1");
-    fdui->input_kbmap1 = obj = fl_add_input(FL_NORMAL_INPUT, 144, 97, 195, 30, idex(_(dummy)));
+    fdui->input_kbmap1 = obj = fl_add_input(FL_NORMAL_INPUT, 145, 100, 190, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("2nd|#2");
-    fdui->input_kbmap2 = obj = fl_add_input(FL_NORMAL_INPUT, 144, 129, 195, 30, idex(_(dummy)));
+    fdui->input_kbmap2 = obj = fl_add_input(FL_NORMAL_INPUT, 145, 135, 190, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->button_kbmap1_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 341, 99, 90, 30, _("Browse"));
+  {
+    char const * const dummy = N_("Browse...|#o");
+    fdui->button_kbmap1_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 340, 100, 100, 30, idex(_(dummy)));
+    fl_set_button_shortcut(obj, scex(_(dummy)), 1);
+  }
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->button_kbmap2_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 341, 128, 90, 30, _("Browse"));
+  {
+    char const * const dummy = N_("Browse...|#w");
+    fdui->button_kbmap2_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 340, 135, 100, 30, idex(_(dummy)));
+    fl_set_button_shortcut(obj, scex(_(dummy)), 1);
+  }
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("RtL support|#R");
-    fdui->check_rtl_support = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 140, 161, 30, 30, idex(_(dummy)));
+    fdui->check_rtl_support = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 140, 175, 30, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -584,7 +654,7 @@ FD_form_language * FormPreferences::build_language()
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Auto begin|#b");
-    fdui->check_auto_begin = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 265, 161, 30, 30, idex(_(dummy)));
+    fdui->check_auto_begin = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 265, 175, 30, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -592,7 +662,7 @@ FD_form_language * FormPreferences::build_language()
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Use babel|#U");
-    fdui->check_use_babel = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 390, 161, 30, 30, idex(_(dummy)));
+    fdui->check_use_babel = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 390, 175, 30, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -600,7 +670,7 @@ FD_form_language * FormPreferences::build_language()
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Mark foreign|#M");
-    fdui->check_mark_foreign = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 140, 187, 30, 30, idex(_(dummy)));
+    fdui->check_mark_foreign = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 140, 205, 30, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -608,7 +678,7 @@ FD_form_language * FormPreferences::build_language()
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Auto finish|#f");
-    fdui->check_auto_end = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 265, 187, 30, 30, idex(_(dummy)));
+    fdui->check_auto_end = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 265, 205, 30, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -616,7 +686,7 @@ FD_form_language * FormPreferences::build_language()
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Global|#G");
-    fdui->check_global_options = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 390, 187, 30, 30, idex(_(dummy)));
+    fdui->check_global_options = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 390, 205, 30, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -624,18 +694,22 @@ FD_form_language * FormPreferences::build_language()
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Command start|#s");
-    fdui->input_command_begin = obj = fl_add_input(FL_NORMAL_INPUT, 131, 224, 300, 30, idex(_(dummy)));
+    fdui->input_command_begin = obj = fl_add_input(FL_NORMAL_INPUT, 130, 245, 300, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Command end|#e");
-    fdui->input_command_end = obj = fl_add_input(FL_NORMAL_INPUT, 131, 257, 300, 30, idex(_(dummy)));
+    fdui->input_command_end = obj = fl_add_input(FL_NORMAL_INPUT, 130, 280, 300, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+  obj = fl_add_frame(FL_ENGRAVED_FRAME, 5, 175, 440, 60, "");
+  obj = fl_add_frame(FL_ENGRAVED_FRAME, 5, 240, 440, 80, "");
+  obj = fl_add_frame(FL_ENGRAVED_FRAME, 5, 95, 440, 75, "");
+  obj = fl_add_frame(FL_ENGRAVED_FRAME, 5, 10, 440, 80, "");
   fl_end_form();
 
   fdui->form->fdui = fdui;
@@ -819,52 +893,52 @@ FD_form_paths * FormPreferences::build_paths()
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->button_default_path_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 340, 10, 90, 30, _("Browse..."));
+  fdui->button_default_path_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 345, 10, 100, 30, _("Browse..."));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Template path|#T");
-    fdui->input_template_path = obj = fl_add_input(FL_NORMAL_INPUT, 170, 40, 170, 30, idex(_(dummy)));
+    fdui->input_template_path = obj = fl_add_input(FL_NORMAL_INPUT, 170, 45, 170, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->button_template_path_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 340, 40, 90, 30, _("Browse..."));
+  fdui->button_template_path_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 345, 45, 100, 30, _("Browse..."));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Temp dir|#d");
-    fdui->check_use_temp_dir = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 134, 70, 30, 30, idex(_(dummy)));
+    fdui->check_use_temp_dir = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 140, 80, 30, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_lalign(obj, FL_ALIGN_LEFT);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
     fl_set_button(obj, 1);
-  fdui->input_temp_dir = obj = fl_add_input(FL_NORMAL_INPUT, 170, 70, 170, 30, "");
+  fdui->input_temp_dir = obj = fl_add_input(FL_NORMAL_INPUT, 170, 80, 170, 30, "");
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->button_temp_dir_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 340, 70, 90, 30, _("Browse..."));
+  fdui->button_temp_dir_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 345, 80, 100, 30, _("Browse..."));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Check last files|#C");
-    fdui->check_last_files = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 134, 100, 30, 30, idex(_(dummy)));
+    fdui->check_last_files = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 140, 115, 30, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_lalign(obj, FL_ALIGN_LEFT);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
     fl_set_button(obj, 1);
-  fdui->input_lastfiles = obj = fl_add_input(FL_NORMAL_INPUT, 170, 100, 170, 30, "");
+  fdui->input_lastfiles = obj = fl_add_input(FL_NORMAL_INPUT, 170, 115, 170, 30, "");
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->button_lastfiles_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 340, 100, 90, 30, _("Browse..."));
+  fdui->button_lastfiles_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 345, 115, 100, 30, _("Browse..."));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Last file count|#L");
-    fdui->counter_lastfiles = obj = fl_add_counter(FL_SIMPLE_COUNTER, 170, 130, 90, 30, idex(_(dummy)));
+    fdui->counter_lastfiles = obj = fl_add_counter(FL_SIMPLE_COUNTER, 170, 150, 90, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -876,27 +950,27 @@ FD_form_paths * FormPreferences::build_paths()
     fl_set_counter_step(obj, 1, 1);
   {
     char const * const dummy = N_("Backup path|#B");
-    fdui->check_make_backups = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 134, 170, 30, 30, idex(_(dummy)));
+    fdui->check_make_backups = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 140, 205, 30, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_lalign(obj, FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
     fl_set_button(obj, 1);
-  fdui->input_backup_path = obj = fl_add_input(FL_NORMAL_INPUT, 170, 170, 170, 30, "");
+  fdui->input_backup_path = obj = fl_add_input(FL_NORMAL_INPUT, 170, 205, 170, 30, "");
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->button_backup_path_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 340, 170, 90, 30, _("Browse..."));
+  fdui->button_backup_path_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 345, 205, 100, 30, _("Browse..."));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("LyXServer pipe|#S");
-    fdui->input_serverpipe = obj = fl_add_input(FL_NORMAL_INPUT, 169, 217, 170, 30, idex(_(dummy)));
+    fdui->input_serverpipe = obj = fl_add_input(FL_NORMAL_INPUT, 170, 245, 170, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->button_serverpipe_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 339, 217, 90, 30, _("Browse..."));
+  fdui->button_serverpipe_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 345, 245, 100, 30, _("Browse..."));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   fl_end_form();
@@ -958,7 +1032,7 @@ FD_form_printer * FormPreferences::build_printer()
   fdui->check_adapt_output = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 240, 10, 30, 30, _("adapt output"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 0, 60, 452, 260, _("Printer Command and Flags"));
+  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 10, 60, 435, 260, _("Printer Command and Flags"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
   fdui->input_command = obj = fl_add_input(FL_NORMAL_INPUT, 130, 75, 80, 30, _("command"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -1008,6 +1082,7 @@ FD_form_printer * FormPreferences::build_printer()
   fdui->input_paper_size = obj = fl_add_input(FL_NORMAL_INPUT, 360, 285, 80, 30, _("paper size"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+  obj = fl_add_frame(FL_ENGRAVED_FRAME, 10, 5, 435, 45, "");
   fl_end_form();
 
   fdui->form->fdui = fdui;
@@ -1034,7 +1109,7 @@ FD_form_outputs_misc * FormPreferences::build_outputs_misc()
     fl_set_object_gravity(obj, FL_NorthWest, FL_SouthEast);
   {
     char const * const dummy = N_("Ascii line length|#A");
-    fdui->counter_line_len = obj = fl_add_counter(FL_NORMAL_COUNTER, 320, 25, 100, 30, idex(_(dummy)));
+    fdui->counter_line_len = obj = fl_add_counter(FL_NORMAL_COUNTER, 330, 25, 100, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
@@ -1046,39 +1121,46 @@ FD_form_outputs_misc * FormPreferences::build_outputs_misc()
     fl_set_counter_step(obj, 1, 1);
   {
     char const * const dummy = N_("TeX encoding|#T");
-    fdui->input_tex_encoding = obj = fl_add_input(FL_NORMAL_INPUT, 220, 65, 200, 30, idex(_(dummy)));
+    fdui->input_tex_encoding = obj = fl_add_input(FL_NORMAL_INPUT, 230, 65, 200, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("Default paper size|#p");
-    fdui->choice_default_papersize = obj = fl_add_choice(FL_NORMAL_CHOICE, 220, 110, 199, 29, idex(_(dummy)));
+    fdui->choice_default_papersize = obj = fl_add_choice(FL_NORMAL_CHOICE, 230, 105, 199, 29, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_boxtype(obj, FL_FRAME_BOX);
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 15, 150, 405, 135, _("Outside code interaction"));
+  obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 10, 190, 435, 135, _("Outside code interaction"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_lstyle(obj, FL_BOLD_STYLE);
   {
     char const * const dummy = N_("ascii roff|#r");
-    fdui->input_ascii_roff = obj = fl_add_input(FL_NORMAL_INPUT, 125, 165, 285, 30, idex(_(dummy)));
+    fdui->input_ascii_roff = obj = fl_add_input(FL_NORMAL_INPUT, 145, 205, 285, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   {
     char const * const dummy = N_("checktex|#c");
-    fdui->input_checktex = obj = fl_add_input(FL_NORMAL_INPUT, 125, 205, 285, 30, idex(_(dummy)));
+    fdui->input_checktex = obj = fl_add_input(FL_NORMAL_INPUT, 145, 245, 285, 30, idex(_(dummy)));
     fl_set_button_shortcut(obj, scex(_(dummy)), 1);
   }
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
-  fdui->input_paperoption = obj = fl_add_input(FL_NORMAL_INPUT, 125, 245, 285, 30, _("DVI paper option"));
+  fdui->input_paperoption = obj = fl_add_input(FL_NORMAL_INPUT, 145, 285, 285, 30, _("DVI paper option"));
     fl_set_object_lsize(obj, FL_NORMAL_SIZE);
     fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
+  obj = fl_add_frame(FL_ENGRAVED_FRAME, 10, 10, 435, 165, "");
+  {
+    char const * const dummy = N_("Autoreset Class Options on change|#u");
+    fdui->check_autoreset_classopt = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 20, 140, 30, 30, idex(_(dummy)));
+    fl_set_button_shortcut(obj, scex(_(dummy)), 1);
+  }
+    fl_set_object_callback(obj, C_FormBaseDeprecatedInputCB, 0);
   fl_end_form();
 
   fdui->form->fdui = fdui;