]> git.lyx.org Git - lyx.git/blobdiff - src/LyXRC.cpp
Tooltips for collapsables and branches
[lyx.git] / src / LyXRC.cpp
index 0cf9f6dd1867934e6fce273c13ccd95b1a9f2cfb..6705b08aed09eeed27cb8690433e0615065c0602 100644 (file)
@@ -95,8 +95,10 @@ keyword_item lyxrcTags[] = {
        { "\\language_package", LyXRC::RC_LANGUAGE_PACKAGE },
        { "\\language_use_babel", LyXRC::RC_LANGUAGE_USE_BABEL },
        { "\\load_session", LyXRC::RC_LOADSESSION },
+       { "\\macro_edit_style", LyXRC::RC_MACRO_EDIT_STYLE },
        { "\\make_backup", LyXRC::RC_MAKE_BACKUP },
        { "\\mark_foreign_language", LyXRC::RC_MARK_FOREIGN_LANGUAGE },
+       { "\\mouse_wheel_speed", LyXRC::RC_MOUSE_WHEEL_SPEED },
        { "\\num_lastfiles", LyXRC::RC_NUMLASTFILES },
        { "\\path_prefix", LyXRC::RC_PATH_PREFIX },
        { "\\personal_dictionary", LyXRC::RC_PERS_DICT },
@@ -156,11 +158,13 @@ keyword_item lyxrcTags[] = {
        { "\\use_spell_lib", LyXRC::RC_USE_SPELL_LIB },
        // compatibility with versions older than 1.4.0 only
        { "\\use_tempdir", LyXRC::RC_USETEMPDIR },
+       { "\\use_tooltip", LyXRC::RC_USE_TOOLTIP },
        { "\\user_email", LyXRC::RC_USER_EMAIL },
        { "\\user_name", LyXRC::RC_USER_NAME },
        { "\\view_dvi_paper_option", LyXRC::RC_VIEWDVI_PAPEROPTION },
        // compatibility with versions older than 1.4.0 only
-       { "\\viewer", LyXRC::RC_VIEWER}
+       { "\\viewer", LyXRC::RC_VIEWER},
+       { "\\visual_cursor" ,LyXRC::RC_VISUAL_CURSOR}
 };
 
 const int lyxrcCount = sizeof(lyxrcTags) / sizeof(keyword_item);
@@ -226,6 +230,7 @@ void LyXRC::setDefaults() {
        auto_region_delete = true;
        auto_reset_options = false;
        plaintext_linelen = 65;
+       mouse_wheel_speed = 1.0;
        num_lastfiles = maxlastfiles;
        check_lastfiles = true;
        use_lastfilepos = true;
@@ -243,6 +248,7 @@ void LyXRC::setDefaults() {
        isp_use_esc_chars = false;
        use_kbmap = false;
        rtl_support = true;
+       visual_cursor = false;
        auto_number = true;
        mark_foreign_language = true;
        language_auto_begin = true;
@@ -259,12 +265,14 @@ void LyXRC::setDefaults() {
        tex_allows_spaces = false;
        date_insert_format = "%x";
        cursor_follows_scrollbar = false;
+       macro_edit_style = MACRO_EDIT_INLINE_BOX;
        dialogs_iconify_with_main = false;
        label_init_length = 3;
        preview = PREVIEW_OFF;
        preview_hashed_labels  = false;
        preview_scale_factor = "0.9";
        use_converter_cache = true;
+       use_tooltip = true;
        use_pixmap_cache = false;
        converter_cache_maxage = 6 * 30 * 24 * 3600; // 6 months
 
@@ -730,6 +738,12 @@ int LyXRC::read(Lexer & lexrc)
                        }
                        break;
 
+               case RC_MOUSE_WHEEL_SPEED:
+                       if (lexrc.next()) {
+                               mouse_wheel_speed = lexrc.getFloat();
+                       }
+                       break;
+
                case RC_NUMLASTFILES:
                        if (lexrc.next()) {
                                num_lastfiles = lexrc.getInteger();
@@ -835,6 +849,16 @@ int LyXRC::read(Lexer & lexrc)
                        }
                        break;
 
+               case RC_MACRO_EDIT_STYLE:
+                       if (lexrc.next()) {
+                               switch (lexrc.getInteger()) {
+                               case 0: macro_edit_style = MACRO_EDIT_INLINE_BOX; break;
+                               case 1: macro_edit_style = MACRO_EDIT_INLINE; break;
+                               case 2: macro_edit_style = MACRO_EDIT_LIST; break;
+                               }
+                       }
+                       break;
+
                case RC_DIALOGS_ICONIFY_WITH_MAIN:
                        if (lexrc.next()) {
                                dialogs_iconify_with_main = lexrc.getBool();
@@ -882,6 +906,11 @@ int LyXRC::read(Lexer & lexrc)
                                isp_use_pers_dict = lexrc.getBool();
                        }
                        break;
+               case RC_USE_TOOLTIP:
+                       if (lexrc.next()) {
+                               use_tooltip = lexrc.getBool();
+                       }
+                       break;
                case RC_USE_PIXMAP_CACHE:
                        if (lexrc.next()) {
                                use_pixmap_cache = lexrc.getBool();
@@ -968,6 +997,11 @@ int LyXRC::read(Lexer & lexrc)
                                rtl_support = lexrc.getBool();
                        }
                        break;
+               case RC_VISUAL_CURSOR:
+                       if (lexrc.next()) {
+                               visual_cursor = lexrc.getBool();
+                       }
+                       break;
                case RC_AUTO_NUMBER:
                        if (lexrc.next()) {
                                auto_number = lexrc.getBool();
@@ -1567,6 +1601,19 @@ void LyXRC::write(ostream & os, bool ignore_system_lyxrc, string const & name) c
                }
                if (tag != RC_LAST)
                        break;
+       case RC_MACRO_EDIT_STYLE:
+               if (ignore_system_lyxrc ||
+                   macro_edit_style
+                   != system_lyxrc.macro_edit_style) {
+                       os << "\\macro_edit_style ";
+                       switch (macro_edit_style) {
+                       case MACRO_EDIT_INLINE_BOX: os << "0\n"; break;
+                       case MACRO_EDIT_INLINE: os << "1\n"; break;
+                       case MACRO_EDIT_LIST: os << "2\n"; break;
+                       }
+               }
+               if (tag != RC_LAST)
+                       break;
        case RC_DIALOGS_ICONIFY_WITH_MAIN:
                if (ignore_system_lyxrc ||
                    dialogs_iconify_with_main
@@ -1910,6 +1957,13 @@ void LyXRC::write(ostream & os, bool ignore_system_lyxrc, string const & name) c
                }
                if (tag != RC_LAST)
                        break;
+       case RC_MOUSE_WHEEL_SPEED:
+               if (ignore_system_lyxrc ||
+                   mouse_wheel_speed != system_lyxrc.mouse_wheel_speed) {
+                       os << "\\mouse_wheel_speed " << mouse_wheel_speed << '\n';
+               }
+               if (tag != RC_LAST)
+                       break;
        case RC_NUMLASTFILES:
                if (ignore_system_lyxrc ||
                    num_lastfiles != system_lyxrc.num_lastfiles) {
@@ -2054,6 +2108,13 @@ void LyXRC::write(ostream & os, bool ignore_system_lyxrc, string const & name) c
                }
                if (tag != RC_LAST)
                        break;
+       case RC_USE_TOOLTIP:
+               if (ignore_system_lyxrc ||
+                   use_tooltip != system_lyxrc.use_tooltip) {
+                       os << "\\use_tooltip "
+                          << convert<string>(use_tooltip)
+                          << '\n';
+               }
        case RC_USE_PIXMAP_CACHE:
                if (ignore_system_lyxrc ||
                    use_pixmap_cache != system_lyxrc.use_pixmap_cache) {
@@ -2090,6 +2151,13 @@ void LyXRC::write(ostream & os, bool ignore_system_lyxrc, string const & name) c
                }
                if (tag != RC_LAST)
                        break;
+       case RC_VISUAL_CURSOR:
+               if (ignore_system_lyxrc ||
+                       visual_cursor != system_lyxrc.visual_cursor) {
+                       os << "\\visual_cursor " << convert<string>(visual_cursor) << '\n';
+               }
+               if (tag != RC_LAST)
+                       break;
        case RC_LANGUAGE_PACKAGE:
                if (ignore_system_lyxrc ||
                    language_package != system_lyxrc.language_package) {
@@ -2371,6 +2439,10 @@ string const LyXRC::getDescription(LyXRCTags tag)
                str = _("LyX normally doesn't update the cursor position if you move the scrollbar. Set to true if you'd prefer to always have the cursor on screen.");
                break;
 
+       case RC_SHOW_MACRO_LABEL:
+               str = _("Show a small box around a Math Macro with the macro name when the cursor is inside.");
+               break;
+
        case RC_CUSTOM_EXPORT_COMMAND:
                break;
 
@@ -2487,6 +2559,11 @@ string const LyXRC::getDescription(LyXRCTags tag)
                str = _("Select to control the highlighting of words with a language foreign to that of the document.");
                break;
 
+       case RC_MOUSE_WHEEL_SPEED:
+               str = bformat(_("The scrolling speed of the mouse wheel. "),
+                     maxlastfiles);
+               break;
+
        case RC_NUMLASTFILES:
                str = bformat(_("Maximal number of lastfiles. Up to %1$d can appear in the file menu."),
                        maxlastfiles);
@@ -2591,6 +2668,10 @@ string const LyXRC::getDescription(LyXRCTags tag)
                str = _("Select to enable support of right-to-left languages (e.g. Hebrew, Arabic).");
                break;
 
+       case RC_VISUAL_CURSOR:
+               str = _("Select to have visual bidi cursor movement, unselect for logical movement.");
+               break;
+
        case RC_SCREEN_DPI:
                str = _("DPI (dots per inch) of your monitor is auto-detected by LyX. If that goes wrong, override the setting here.");
                break;
@@ -2669,6 +2750,10 @@ string const LyXRC::getDescription(LyXRCTags tag)
                str = _("Specify whether to pass the -T input encoding option to ispell. Enable this if you cannot check the spelling of words containing accented letters. This may not work with all dictionaries.");
                break;
 
+       case RC_USE_TOOLTIP:
+               str = _("Enable the automatic appearance of tool tips in the work area.");
+               break;
+
        case RC_USE_PIXMAP_CACHE:
                str = _("Enable the pixmap cache that might improve performance on Mac and Windows.");
                break;