Good News:   They work!

Bad News:    They only work for the deepest tabfolder that has shortcuts.

What this means is that if we define shortcuts for the inner tab folder we
can't switch to a different outer tab using shortcuts.

Try the attached patch for an example.

Allan. (ARRae)

Index: src/frontends/xforms/FormPreferences.C
===================================================================
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/frontends/xforms/FormPreferences.C,v
retrieving revision 1.64
diff -u -p -r1.64 FormPreferences.C
--- src/frontends/xforms/FormPreferences.C      2001/04/24 17:33:00     1.64
+++ src/frontends/xforms/FormPreferences.C      2001/04/25 06:31:01
@@ -200,37 +200,46 @@ void FormPreferences::build()
        spellchecker_.build();
 
        // Now add them to the tabfolder
-       fl_addto_tabfolder(dialog_->tabfolder_prefs,
-                          _("Look & Feel"),
-                          look_n_feel_tab_->form);
-       fl_addto_tabfolder(dialog_->tabfolder_prefs,
-                          _("Lang Opts"),
-                          lang_opts_tab_->form);
-       fl_addto_tabfolder(dialog_->tabfolder_prefs,
-                          _("Converters"),
-                          converters_tab_->form);
-       fl_addto_tabfolder(dialog_->tabfolder_prefs,
-                          _("Inputs"),
-                          inputs_tab_->form);
-       fl_addto_tabfolder(dialog_->tabfolder_prefs,
-                          _("Outputs"),
-                          outputs_tab_->form);
-
+       FL_OBJECT * obj = fl_addto_tabfolder(dialog_->tabfolder_prefs,
+                                            _("Look & Feel"),
+                                            look_n_feel_tab_->form);
+       fl_set_button_shortcut(obj, "#F", 1);
+       obj = fl_addto_tabfolder(dialog_->tabfolder_prefs,
+                                            _("Lang Opts"),
+                                            lang_opts_tab_->form);
+       fl_set_button_shortcut(obj, "#L", 1);
+       obj = fl_addto_tabfolder(dialog_->tabfolder_prefs,
+                                            _("Converters"),
+                                            converters_tab_->form);
+       fl_set_button_shortcut(obj, "#V", 1);
+       obj = fl_addto_tabfolder(dialog_->tabfolder_prefs,
+                                            _("Inputs"),
+                                            inputs_tab_->form);
+       fl_set_button_shortcut(obj, "#I", 1);
+       obj = fl_addto_tabfolder(dialog_->tabfolder_prefs,
+                                            _("Outputs"),
+                                            outputs_tab_->form);
+       fl_set_button_shortcut(obj, "#O", 1);
+       
        // now build the nested tabfolders
        // Starting with look and feel
-       fl_addto_tabfolder(look_n_feel_tab_->tabfolder_outer,
-                          _("Screen Fonts"),
-                          screen_fonts_.dialog()->form);
-       fl_addto_tabfolder(look_n_feel_tab_->tabfolder_outer,
-                          _("Interface"),
-                          interface_.dialog()->form);
-       fl_addto_tabfolder(look_n_feel_tab_->tabfolder_outer,
-                          _("Colors"),
-                          colors_.dialog()->form);
-       fl_addto_tabfolder(look_n_feel_tab_->tabfolder_outer,
-                          _("Misc"),
-                          lnf_misc_.dialog()->form);
-
+       obj = fl_addto_tabfolder(look_n_feel_tab_->tabfolder_outer,
+                                            _("Screen Fonts"),
+                                            screen_fonts_.dialog()->form);
+       fl_set_button_shortcut(obj, "#S", 1);
+       obj = fl_addto_tabfolder(look_n_feel_tab_->tabfolder_outer,
+                                            _("Interface"),
+                                            interface_.dialog()->form);
+       fl_set_button_shortcut(obj, "#N", 1);
+       obj = fl_addto_tabfolder(look_n_feel_tab_->tabfolder_outer,
+                                            _("Colors"),
+                                            colors_.dialog()->form);
+       fl_set_button_shortcut(obj, "#C", 1);
+       obj = fl_addto_tabfolder(look_n_feel_tab_->tabfolder_outer,
+                                            _("Misc"),
+                                            lnf_misc_.dialog()->form);
+       fl_set_button_shortcut(obj, "#M", 1);
+       
        // then build converters
        fl_addto_tabfolder(converters_tab_->tabfolder_outer,
                           _("Formats"),

Reply via email to