]> git.lyx.org Git - lyx.git/blobdiff - src/lyxrc.h
citation patch from Angus
[lyx.git] / src / lyxrc.h
index 6b30d0a6db795d924c542e2a4a482fd71d95e5f8..77a292e95365f2292561c1845ebd55ccacd2d2d8 100644 (file)
@@ -5,7 +5,7 @@
  *           LyX, The Document Processor
  *      
  *           Copyright 1995 Matthias Ettrich
- *           Copyright 1995-1999 The LyX Team.
+ *           Copyright 1995-2000 The LyX Team.
  *
  * ====================================================== */
 
 #pragma interface
 #endif
 
-#include "toolbar.h"
 #include "bufferparams.h"
+#include "support/utility.hpp"
 
 /// This contains the runtime configuration of LyX
-class LyXRC {
+class LyXRC : public noncopyable {
 public:
        ///
        LyXRC();
        ///
+       void setDefaults();
+       ///
        int read (string const & filename);
        ///
        void write(string const & filename) const;
        ///
         void print() const;
        ///
-       void output(ostream & os) const;
+       void output(std::ostream & os) const;
        /// Is a bind file already (or currently) read?
        bool hasBindFile;
        ///
        int ReadBindFile(string const & name = "cua");
        ///
-       Toolbar toolbar;
+       string bind_file;
+       ///
+       string ui_file;
        ///
        string printer;
        ///
@@ -90,10 +94,13 @@ public:
        string dvi_to_ps_command;
         /// program for performing literate programming
         string literate_command;
+       ///
         string literate_extension;
+       ///
         string literate_error_filter;
         /// program for compiling
         string build_command;
+       ///
         string build_error_filter;
        /// program for running relyx
        string relyx_command;
@@ -105,6 +112,8 @@ public:
        string view_pspic_command;
        /// program for viewing dvi output (default "xdvi")
        string view_dvi_command;
+       /// option for telling the dvi viewer about the paper size
+       string view_dvi_paper_option;
        /// program for viewing pdf output (default "xpdf")
        string view_pdf_command;
         /// default paper size for local xdvi/dvips/ghostview/whatever
@@ -114,8 +123,6 @@ public:
        /// command to run an html converter incl. options
        string html_command;
        ///
-       string sgml_extra_options;
-       ///
        string document_path;
        ///
        string template_path;
@@ -133,14 +140,20 @@ public:
        unsigned int num_lastfiles;
        /// shall a backup file be created
        bool make_backup;
+       /// A directory for storing backup files
+       string backupdir_path;
        /// Zoom factor for screen fonts
        unsigned int zoom;
+       /// parameter for button_4 and button_5 (scrollwheel)
+       unsigned int wheel_jump;
        /// Screen font sizes in points for each font size
        float font_sizes[10];
        /// Allow the use of scalable fonts? Default is yes.
        bool use_scalable_fonts;
        /// DPI of monitor
        float dpi;
+       /// Whether lyx should handle deadkeys by itself
+       bool override_x_deadkeys;
        ///
        string fontenc;
        ///
@@ -156,6 +169,21 @@ public:
        ///
        string font_norm;
        ///
+       enum FontEncoding {
+               ///
+               ISO_10646_1,
+               ///
+               ISO_8859_6_8,
+               ///
+               OTHER_ENCODING
+       };
+       ///
+       FontEncoding font_norm_type;
+       ///
+       void set_font_norm_type();
+       ///
+       string font_norm_menu;
+       ///
        unsigned int autosave;
        ///
        string fax_command;
@@ -200,10 +228,43 @@ public:
        ///
        string date_insert_format;
        ///
+       string language_package;
+       ///
+       bool language_auto_begin;
+       ///
+       bool language_auto_end;
+       ///
+       string language_command_begin;
+       ///
+       string language_command_end;
+       ///
        bool rtl_support;
-private:
        ///
-       void defaultKeyBindings();
+       bool auto_number;
+       ///
+       bool mark_foreign_language;
+       ///
+       bool show_banner;
+       /// Do we have to use a GUI?
+       bool use_gui;
+       ///
+       string linuxdoc_to_lyx_command;
+       ///
+       string linuxdoc_to_html_command;
+       ///
+       string linuxdoc_to_latex_command;
+       ///
+       string docbook_to_dvi_command;
+       ///
+       string docbook_to_html_command;
+       ///
+       string docbook_to_pdf_command;
+       ///
+       bool new_ask_filename;
 };
 
+///
+extern LyXRC lyxrc;
+///
+//extern LyXRC system_lyxrc;
 #endif