]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/xforms/Color.h
Yet more dialog tweaking from Rob.
[lyx.git] / src / frontends / xforms / Color.h
index 768b6ef3c060288e9a61d65c5f3c5bc9342e0396..98965b454a4f0ca29a13a7601b0706d6edb3e0db 100644 (file)
@@ -1,35 +1,38 @@
 // -*- C++ -*-
-/* This file is part of
- * ======================================================
- * 
- *           LyX, The Document Processor
- *      
- *         Copyright 1995 Matthias Ettrich
- *          Copyright 1995-2000 The LyX Team.
+/**
+ * \file Color.h
+ * Copyright 1995 Matthias Ettrich
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
  *
- *======================================================*/
+ * \author Angus Leeming 
+ *
+ * Full author contact details are available in file CREDITS
+ */
+
+/* structs RGBColor and HSVColor to enable simple conversion between
+ * color spaces.
+ */
 
 #ifndef COLOR_H
 #define COLOR_H
 
-#include <utility> // for pair
-
-#ifdef __GNUG_
+#ifdef __GNUG__
 #pragma interface
 #endif
 
 #include "LString.h"
 
-class HSVColor;
-class RGBColor;
+struct RGBColor;
 
 struct HSVColor {
        double h;
        double s;
        double v;
        HSVColor() : h(0.0), s(0.0), v(0.0) {}
-       HSVColor(double hue, double sat, double val) : h(hue), s(sat), v(val) {}
-       HSVColor( RGBColor const & );
+       HSVColor(double hue, double sat, double val)
+               : h(hue), s(sat), v(val) {}
+       HSVColor(RGBColor const &);
 };
 
 struct RGBColor {
@@ -37,21 +40,18 @@ struct RGBColor {
        int g;
        int b;
        RGBColor() : r(0), g(0), b(0) {}
-       RGBColor(int red, int green, int blue) : r(red), g(green), b(blue) {}
-       RGBColor( HSVColor const & );
+       RGBColor(int red, int green, int blue)
+               : r(red), g(green), b(blue) {}
+       RGBColor(HSVColor const &);
 };
 
-typedef std::pair<string, RGBColor> X11Color;
-
-/// struct holding xform-specific colors
-struct XformColor {
+struct NamedColor : public RGBColor {
        string name;
-       int colorID;
-       RGBColor col;
-       XformColor() : colorID(0) {}
-       string const getname() { return name; }
-       static bool read( string const & );
-       static bool write( string const & );
+       NamedColor() : RGBColor() {}
+       NamedColor(string const & n, RGBColor const & c)
+               : RGBColor(c), name(n) {}
+       RGBColor const & color() const { return *this; }
+       string const & getname() const { return name; }
 };
 
 inline