]> git.lyx.org Git - lyx.git/blobdiff - src/LyXRC.h
* Option to make macro editing less "noisy" by hiding the grey box with the
[lyx.git] / src / LyXRC.h
index 13a348162543fca6f25081155a837d649c8f6861..bc2a25ec93245f44b3af03c178910d3b31236594 100644 (file)
@@ -19,9 +19,9 @@
 #define LYXRC_H
 
 #include "paper.h"
-#include "graphics/GraphicsTypes.h"
 
-#include <iosfwd>
+#include "support/strfwd.h"
+
 #include <string>
 
 
@@ -32,9 +32,7 @@ namespace support { class FileName; }
 class Lexer;
 
 /// This contains the runtime configuration of LyX
-class LyXRC //: public noncopyable
-// after 1.1.6 I will use a LyXRCStruct here and then this can be made
-// noncopyable again.  For now I want to minimise changes.  ARRae 20001010
+class LyXRC
 {
 public:
        enum LyXRCTags {
@@ -58,12 +56,14 @@ public:
                RC_CUSTOM_EXPORT_COMMAND,
                RC_CUSTOM_EXPORT_FORMAT,
                RC_DATE_INSERT_FORMAT,
+               RC_DEFFILE,
                RC_DEFAULT_LANGUAGE,
                RC_DEFAULT_PAPERSIZE,
                RC_DIALOGS_ICONIFY_WITH_MAIN,
                RC_DISPLAY_GRAPHICS,
                RC_DOCUMENTPATH,
                RC_ESC_CHARS,
+               RC_EXAMPLEPATH,
                RC_FONT_ENCODING,
                RC_FORMAT,
                RC_INDEX_COMMAND,
@@ -80,6 +80,7 @@ public:
                RC_LANGUAGE_GLOBAL_OPTIONS,
                RC_LANGUAGE_PACKAGE,
                RC_LANGUAGE_USE_BABEL,
+               RC_SORT_LAYOUTS,
                RC_USELASTFILEPOS,
                RC_LOADSESSION,
                RC_MAKE_BACKUP,
@@ -118,13 +119,12 @@ public:
                RC_SCREEN_FONT_SIZES,
                RC_SCREEN_FONT_TYPEWRITER,
                RC_SCREEN_FONT_TYPEWRITER_FOUNDRY,
-               RC_SCREEN_GEOMETRY_HEIGHT,
-               RC_SCREEN_GEOMETRY_WIDTH,
-               RC_SCREEN_GEOMETRY_XYSAVED,
+               RC_GEOMETRY_SESSION,
                RC_SCREEN_ZOOM,
                RC_SERVERPIPE,
                RC_SET_COLOR,
                RC_SHOW_BANNER,
+               RC_SHOW_MACRO_LABEL,
                RC_SPELL_COMMAND,
                RC_TEMPDIRPATH,
                RC_TEMPLATEPATH,
@@ -139,6 +139,8 @@ public:
                RC_USE_ESC_CHARS,
                RC_USE_INP_ENC,
                RC_USE_PERS_DICT,
+               RC_USE_TOOLTIP,
+               RC_USE_PIXMAP_CACHE,
                RC_USE_SPELL_LIB,
                RC_VIEWDVI_PAPEROPTION,
                RC_VIEWER,
@@ -160,9 +162,10 @@ public:
        ///
        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) const;
+                  bool ignore_system_lyxrc, 
+                  std::string const & tag = std::string()) const;
        ///
        void print() const;
        // FIXME unused (was used for xforms. Do we still need this?)
@@ -170,6 +173,8 @@ public:
        ///
        std::string bind_file;
        ///
+       std::string def_file;
+       ///
        std::string ui_file;
        ///
        std::string printer;
@@ -224,6 +229,8 @@ public:
        ///
        std::string document_path;
        ///
+       std::string example_path;
+       ///
        std::string template_path;
        ///
        std::string tempdir_path;
@@ -243,12 +250,9 @@ public:
        bool make_backup;
        /// A directory for storing backup files
        std::string backupdir_path;
-       /// Width of MainWindow. if 0, value from last session will be used
-       int geometry_width;
-       /// Height of MainWindow, if 0, value from last session will be used
-       int geometry_height;
-       /// Whether or not save/restore windows position as session info
-       bool geometry_xysaved;
+       /// Whether or not save/restore session information
+       /// like windows position and geometry.
+       bool allow_geometry_session;
        /// Zoom factor for screen fonts
        unsigned int zoom;
        /// Screen font sizes in points for each font size
@@ -289,6 +293,10 @@ public:
        bool isp_use_alt_lang;
        /// Use personal dictionary?
        bool isp_use_pers_dict;
+       /// Use tooltips?
+       bool use_tooltip;
+       /// Use pixmap cache?
+       bool use_pixmap_cache;
        /// Use escape chars?
        bool isp_use_esc_chars;
        /// Alternate language for ispell
@@ -334,11 +342,14 @@ public:
        ///
        bool cursor_follows_scrollbar;
        ///
+       bool show_macro_label;
+       ///
        bool dialogs_iconify_with_main;
        ///
        int label_init_length;
        ///
-       graphics::DisplayType display_graphics;
+       ///graphics::DisplayType
+       int display_graphics;
        ///
        bool show_banner;
        ///
@@ -369,6 +380,8 @@ public:
        bool use_converter_cache;
        /// The maximum age of cache files in seconds
        unsigned int converter_cache_maxage;
+       /// Sort layouts alphabetically
+       bool sort_layouts;
 };
 
 
@@ -380,7 +393,7 @@ class LyXRC_PreviewStatus {
        LyXRC::PreviewStatus val_;
 public:
        LyXRC_PreviewStatus(LyXRC::PreviewStatus val) : val_(val) {}
-       operator LyXRC::PreviewStatus() const{ return val_; }
+       operator LyXRC::PreviewStatus() const { return val_; }
 };