]> git.lyx.org Git - lyx.git/blobdiff - src/LColor.h
split LyXText::rowlist_ into individual Paragraph::rows_ chunks
[lyx.git] / src / LColor.h
index ab1d52fcae74d246ed850a6f1ceba447cc55379f..8b7f669e1ee0fe9058585ba48f3fe830c65a9da9 100644 (file)
@@ -1,9 +1,9 @@
 // -*- C++ -*-
 /* This file is part of
  * ======================================================
- * 
+ *
  *           LyX, The Document Processor
- *      
+ *
  *         Copyright 1998-2001 The LyX Team
  *
  *======================================================*/
 #ifndef LCOLOR_H
 #define LCOLOR_H
 
-#ifdef __GNUG__
-#pragma interface
-#endif
-
-#include <map>
-
 #include "LString.h"
 
 /**
-  This is a stateless class. 
+  This is a stateless class.
 
   It has one basic purposes:
   To serve as a color-namespace container (the Color enum).
-  
+
 
   */
 /**
@@ -38,8 +32,8 @@
  * - A real, predefined color, such as black, white, red or green.
  * - A logical color, such as no color, inherit, math
  */
-class LColor // : public boost::noncopyable {
+
+class LColor 
 // made copyable for same reasons as LyXRC was made copyable. See there for
 // explanation.
 {
@@ -77,11 +71,21 @@ public:
                selection,
                /// Text color in LaTeX mode
                latex,
+               /// The color used for previews
+               preview,
 
                /// Text color for notes
                note,
                /// Background color of notes
                notebg,
+               /// Text color for comments
+               comment,
+               /// Background color of comments
+               commentbg,
+               /// Text color for greyedout inset
+               greyedout,
+               /// Background color of greyedout inset
+               greyedoutbg,
 
 
                /// Color for the depth bars in the margin
@@ -109,14 +113,12 @@ public:
                mathmacrobg,
                /// Math inset frame color
                mathframe,
-               /// Math cursor color
-               mathcursor,
                /// Math line color
                mathline,
 
                /// caption frame color
                captionframe,
+
                /// collapsable insets text
                collapsable,
                /// collapsable insets frame
@@ -133,8 +135,14 @@ public:
                eolmarker,
                /// Added space colour
                added_space,
-               /// Appendix line color
-               appendixline,
+               /// Appendix marker color
+               appendix,
+               /// changebar color
+               changebar,
+               /// strike-out color
+               strikeout,
+               /// added text color
+               newtext,
                /// Top and bottom line color
                topline,
                /// Table line color
@@ -158,7 +166,7 @@ public:
                /// Color used for bottom background
                buttonbg,
 
-               // Logical attributes
+               // Logical attributes
 
                /// Color is inherited
                inherit,
@@ -168,49 +176,38 @@ public:
 
        ///
        LColor();
+       ///
+       LColor(LColor const &);
+       ///
+       ~LColor();
+       ///
+       void operator=(LColor const &);
        /// set the given LyX color to the color defined by the X11 name given
        void setColor(LColor::color col, string const & x11name);
        /// set the given LyX color to the color defined by the X11 name given
        bool setColor(string const & lyxname, string const & x11name);
+
        /// Get GUI name of color
        string const getGUIName(LColor::color c) const;
+
        /// Get X11 name of color
        string const getX11Name(LColor::color c) const;
+
        /// Get LaTeX name of color
        string const getLaTeXName(LColor::color c) const;
+
        /// Get LyX name of color
        string const getLyXName(LColor::color c) const;
+
        /// get the color from the GUI name
        LColor::color getFromGUIName(string const & guiname) const;
        /// get the color from the LyX name
        LColor::color getFromLyXName(string const & lyxname) const;
 private:
        ///
-       struct information {
-               /// the name as it appears in the GUI
-               string guiname;
-               /// the name used in LaTeX
-               string latexname;
-               /// the name for X11
-               string x11name;
-               /// the name for LyX
-               string lyxname;
-       };
-
-       /// initialise a color entry
-       void fill(LColor::color col, string const & gui,
-                 string const & latex, string const & x11,
-                 string const & lyx);
-
+       struct Pimpl;
        ///
-       typedef std::map<LColor::color, information> InfoTab;
-       /// the table of color information
-       InfoTab infotab;
+       Pimpl * pimpl_;
 };
 
 /// the current color definitions