]> git.lyx.org Git - features.git/blobdiff - src/LyXRC.cpp
Add 'needauth' option to converters that need explicit user authorization.
[features.git] / src / LyXRC.cpp
index fe3b0423480a1cbe1681b941111b1734531293fa..355e0651192bf8d3822ddb2a21130884b9093a75 100644 (file)
@@ -189,6 +189,8 @@ LexerKeyword lyxrcTags[] = {
        { "\\thesaurusdir_path", LyXRC::RC_THESAURUSDIRPATH },
        { "\\ui_file", LyXRC::RC_UIFILE },
        { "\\use_converter_cache", LyXRC::RC_USE_CONVERTER_CACHE },
+       { "\\use_converter_needauth", LyXRC::RC_USE_CONVERTER_NEEDAUTH },
+       { "\\use_converter_needauth_forbidden", LyXRC::RC_USE_CONVERTER_NEEDAUTH_FORBIDDEN },
        { "\\use_lastfilepos", LyXRC::RC_USELASTFILEPOS },
        { "\\use_pixmap_cache", LyXRC::RC_USE_PIXMAP_CACHE },
        { "\\use_qimage", LyXRC::RC_USE_QIMAGE },
@@ -316,6 +318,8 @@ void LyXRC::setDefaults()
        preview_hashed_labels  = false;
        preview_scale_factor = 1.0;
        use_converter_cache = true;
+       use_converter_needauth_forbidden = true;
+       use_converter_needauth = true;
        use_system_colors = false;
        use_tooltip = true;
        use_pixmap_cache = false;
@@ -1112,6 +1116,12 @@ LyXRC::ReturnValues LyXRC::read(Lexer & lexrc, bool check_format)
                case RC_USE_CONVERTER_CACHE:
                        lexrc >> use_converter_cache;
                        break;
+               case RC_USE_CONVERTER_NEEDAUTH_FORBIDDEN:
+                       lexrc >> use_converter_needauth_forbidden;
+                       break;
+               case RC_USE_CONVERTER_NEEDAUTH:
+                       lexrc >> use_converter_needauth;
+                       break;
                case RC_CONVERTER_CACHE_MAXAGE:
                        lexrc >> converter_cache_maxage;
                        break;
@@ -1593,6 +1603,24 @@ void LyXRC::write(ostream & os, bool ignore_system_lyxrc, string const & name) c
                if (tag != RC_LAST)
                        break;
 
+       case RC_USE_CONVERTER_NEEDAUTH_FORBIDDEN:
+               if (ignore_system_lyxrc ||
+                   use_converter_needauth_forbidden != system_lyxrc.use_converter_needauth_forbidden) {
+                       os << "\\use_converter_needauth_forbidden "
+                          << convert<string>(use_converter_needauth_forbidden) << '\n';
+               }
+               if (tag != RC_LAST)
+                       break;
+
+       case RC_USE_CONVERTER_NEEDAUTH:
+               if (ignore_system_lyxrc ||
+                   use_converter_needauth != system_lyxrc.use_converter_needauth) {
+                       os << "\\use_converter_needauth "
+                          << convert<string>(use_converter_needauth) << '\n';
+               }
+               if (tag != RC_LAST)
+                       break;
+
        case RC_CONVERTER_CACHE_MAXAGE:
                if (ignore_system_lyxrc ||
                    converter_cache_maxage != system_lyxrc.converter_cache_maxage) {
@@ -2833,6 +2861,8 @@ void actOnUpdatedPrefs(LyXRC const & lyxrc_orig, LyXRC const & lyxrc_new)
        case LyXRC::RC_USER_EMAIL:
        case LyXRC::RC_USER_NAME:
        case LyXRC::RC_USE_CONVERTER_CACHE:
+       case LyXRC::RC_USE_CONVERTER_NEEDAUTH_FORBIDDEN:
+       case LyXRC::RC_USE_CONVERTER_NEEDAUTH:
        case LyXRC::RC_USE_SYSTEM_COLORS:
        case LyXRC::RC_USE_TOOLTIP:
        case LyXRC::RC_USE_PIXMAP_CACHE:
@@ -2925,6 +2955,14 @@ string const LyXRC::getDescription(LyXRCTags tag)
        case RC_CONVERTER:
                break;
 
+       case RC_CONVERTER_NEEDAUTH_FORBIDDEN:
+               str = _("Forbid use of external converters with 'needauth' option to prevent undesired effects.");
+               break;
+
+       case RC_CONVERTER_NEEDAUTH:
+               str = _("Ask user before calling external converters with 'needauth' option to prevent undesired effects.");
+               break;
+
        case RC_COPIER:
                break;