X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLyXRC.h;h=e8e4ee16db7af9310e793b14d6dc7339010736b1;hb=32f6c066ccad00e1580f1f2a5c1d989153e4a83b;hp=b80b08b778e60a563e7a368b52d9592592cadb7f;hpb=cb71b8a8de69187c06d5b7f87ecfb4dc8b8715d6;p=lyx.git diff --git a/src/LyXRC.h b/src/LyXRC.h index b80b08b778..e8e4ee16db 100644 --- a/src/LyXRC.h +++ b/src/LyXRC.h @@ -22,6 +22,7 @@ #include "support/strfwd.h" +#include #include #include #include @@ -64,7 +65,9 @@ public: RC_CONVERTER_CACHE_MAXAGE, RC_COPIER, RC_CURSOR_FOLLOWS_SCROLLBAR, + RC_CURSOR_WIDTH, RC_DATE_INSERT_FORMAT, + RC_DEFAULT_DECIMAL_POINT, RC_DEFAULT_LANGUAGE, RC_DEFAULT_VIEW_FORMAT, RC_DEFAULT_PAPERSIZE, @@ -75,8 +78,12 @@ public: RC_EDITOR_ALTERNATIVES, RC_ESC_CHARS, RC_EXAMPLEPATH, + RC_EXPORT_OVERWRITE, RC_FONT_ENCODING, - RC_FORMAT, + RC_FORCE_PAINT_SINGLE_CHAR, + RC_FILEFORMAT, + RC_FORWARD_SEARCH_DVI, + RC_FORWARD_SEARCH_PDF, RC_FULL_SCREEN_LIMIT, RC_FULL_SCREEN_SCROLLBAR, RC_FULL_SCREEN_TABBAR, @@ -87,6 +94,7 @@ public: RC_GROUP_LAYOUTS, RC_GUI_LANGUAGE, RC_HUNSPELLDIR_PATH, + RC_ICON_SET, RC_INDEX_ALTERNATIVES, RC_INDEX_COMMAND, RC_INPUT, @@ -95,17 +103,18 @@ public: RC_KBMAP, RC_KBMAP_PRIMARY, RC_KBMAP_SECONDARY, - RC_LABEL_INIT_LENGTH, RC_LANGUAGE_AUTO_BEGIN, RC_LANGUAGE_AUTO_END, RC_LANGUAGE_COMMAND_BEGIN, RC_LANGUAGE_COMMAND_END, RC_LANGUAGE_COMMAND_LOCAL, RC_LANGUAGE_GLOBAL_OPTIONS, - RC_LANGUAGE_PACKAGE, - RC_LANGUAGE_USE_BABEL, + RC_LANGUAGE_CUSTOM_PACKAGE, + RC_LANGUAGE_PACKAGE_SELECTION, RC_LOADSESSION, + RC_LYXRCFORMAT, RC_MACRO_EDIT_STYLE, + RC_MAC_DONTSWAP_CTRL_META, RC_MAC_LIKE_WORD_MOVEMENT, RC_MAKE_BACKUP, RC_MARK_FOREIGN_LANGUAGE, @@ -115,9 +124,7 @@ public: RC_OPEN_BUFFERS_IN_TABS, RC_PARAGRAPH_MARKERS, RC_PATH_PREFIX, - RC_PERS_DICT, RC_PLAINTEXT_LINELEN, - RC_PLAINTEXT_ROFF_COMMAND, RC_PREVIEW, RC_PREVIEW_HASHED_LABELS, RC_PREVIEW_SCALE_FACTOR, @@ -140,6 +147,7 @@ public: RC_PRINT_ADAPTOUTPUT, RC_PRINT_COMMAND, RC_RTL_SUPPORT, + RC_SAVE_COMPRESSED, RC_SCREEN_DPI, RC_SCREEN_FONT_ROMAN, RC_SCREEN_FONT_ROMAN_FOUNDRY, @@ -151,12 +159,15 @@ public: RC_SCREEN_FONT_TYPEWRITER_FOUNDRY, RC_SCREEN_ZOOM, RC_SCROLL_BELOW_DOCUMENT, + RC_SCROLL_WHEEL_ZOOM, RC_SERVERPIPE, RC_SET_COLOR, RC_SHOW_BANNER, + RC_SINGLE_CLOSE_TAB_BUTTON, + RC_SINGLE_INSTANCE, RC_SORT_LAYOUTS, - RC_SPELL_COMMAND, RC_SPELLCHECK_CONTINUOUSLY, + RC_SPELLCHECK_NOTES, RC_SPELLCHECKER, RC_SPLITINDEX_COMMAND, RC_TEMPDIRPATH, @@ -168,15 +179,10 @@ public: RC_USELASTFILEPOS, RC_USER_EMAIL, RC_USER_NAME, - RC_USETEMPDIR, - RC_USE_ALT_LANG, RC_USE_CONVERTER_CACHE, - RC_USE_ESC_CHARS, - RC_USE_INP_ENC, - RC_USE_PERS_DICT, + RC_USE_SYSTEM_COLORS, RC_USE_TOOLTIP, RC_USE_PIXMAP_CACHE, - RC_USE_SPELL_LIB, RC_VIEWDVI_PAPEROPTION, RC_VIEWER, RC_VIEWER_ALTERNATIVES, @@ -188,20 +194,32 @@ public: LyXRC(); /// void setDefaults(); + /// \param check_format: whether to try to convert the file format, + /// if it is not current. this should only be true, really, for the + /// user's own preferences file. + bool read(support::FileName const & filename, bool check_format); /// - int read(support::FileName const & filename); - /// - int read(std::istream &); + bool read(std::istream &); private: + enum ReturnValues { + ReadOK, + ReadError, + FormatMismatch + }; /// - int read(Lexer &); + ReturnValues read(Lexer &, bool check_format); public: + /// + typedef std::set CommandSet; + /// maps a format to a set of commands that can be used to + /// edit or view it. + typedef std::map Alternatives; /// void write(support::FileName const & filename, bool ignore_system_lyxrc) const; /// write rc. If a specific tag is given, only output that one. void write(std::ostream & os, - bool ignore_system_lyxrc, + bool ignore_system_lyxrc, std::string const & tag = std::string()) const; /// void print() const; @@ -256,13 +274,13 @@ public: /// command to run chktex incl. options std::string chktex_command; /// all available commands to run bibtex incl. options - std::set bibtex_alternatives; + CommandSet bibtex_alternatives; /// command to run bibtex incl. options std::string bibtex_command; /// command to run japanese bibtex incl. options std::string jbibtex_command; /// all available index commands incl. options - std::set index_alternatives; + CommandSet index_alternatives; /// command to run makeindex incl. options or other index programs std::string index_command; /// command to run japanese index program incl. options @@ -295,6 +313,8 @@ public: bool use_lastfilepos; /// load files from last session automatically bool load_session; + /// do we save new documents as compressed by default + bool save_compressed; /// shall a backup file be created bool make_backup; /// A directory for storing backup files @@ -336,6 +356,8 @@ public: bool paragraph_markers; /// Use tooltips? bool use_tooltip; + /// Use the colors from current system theme? + bool use_system_colors; /// Use pixmap cache? bool use_pixmap_cache; /// Spellchecker engine: aspell, hunspell, etc @@ -346,6 +368,8 @@ public: std::string spellchecker_esc_chars; /// spellcheck continuously? bool spellcheck_continuously; + /// spellcheck notes and comments? + bool spellcheck_notes; /// bool use_kbmap; /// @@ -357,7 +381,7 @@ public: /// std::string date_insert_format; /// - std::string language_package; + std::string language_custom_package; /// bool language_auto_begin; /// @@ -371,7 +395,14 @@ public: /// bool language_global_options; /// - bool language_use_babel; + enum LangPackageSelection { + LP_AUTO = 0, + LP_BABEL, + LP_CUSTOM, + LP_NONE + }; + /// + LangPackageSelection language_package_selection; /// bool rtl_support; /// bidi cursor movement: true = visual, false = logical @@ -387,9 +418,11 @@ public: /// std::string default_view_format; /// all available viewers - std::vector > viewer_alternatives; + Alternatives viewer_alternatives; /// all available editors - std::vector > editor_alternatives; + Alternatives editor_alternatives; + /// + bool mac_dontswap_ctrl_meta; /// bool mac_like_word_movement; /// @@ -407,8 +440,6 @@ public: /// bool dialogs_iconify_with_main; /// - int label_init_length; - /// bool display_graphics; /// bool show_banner; @@ -428,6 +459,8 @@ public: std::string user_name; /// user email std::string user_email; + /// icon set name + std::string icon_set; /// True if the TeX engine cannot handle posix paths bool windows_style_tex_paths; /// True if the TeX engine can handle file names containing spaces @@ -478,6 +511,31 @@ public: bool completion_popup_after_complete; /// bool open_buffers_in_tabs; + /// + bool single_close_tab_button; + /// + bool single_instance; + /// + std::string forward_search_dvi; + /// + std::string forward_search_pdf; + /// + int export_overwrite; + /// Default decimal point when aligning table columns on decimal + std::string default_decimal_point; + /// + enum ScrollWheelZoom { + SCROLL_WHEEL_ZOOM_OFF, + SCROLL_WHEEL_ZOOM_CTRL, + SCROLL_WHEEL_ZOOM_SHIFT, + SCROLL_WHEEL_ZOOM_ALT + }; + /// + ScrollWheelZoom scroll_wheel_zoom; + /// + bool force_paint_single_char; + /// + int cursor_width; }; @@ -492,6 +550,7 @@ public: operator LyXRC::PreviewStatus() const { return val_; } }; +void actOnUpdatedPrefs(LyXRC const & lyxrc_orig, LyXRC const & lyxrc_new); /// extern LyXRC lyxrc;