]> git.lyx.org Git - lyx.git/blob - src/frontends/qt4/lcolorcache.C
This new citation dialog follows a new design similar to lyx-1.3:
[lyx.git] / src / frontends / qt4 / lcolorcache.C
1 /**
2  * \file lcolorcache.C
3  * This file is part of LyX, the document processor.
4  * Licence details can be found in the file COPYING.
5  *
6  * \author John Levon
7  *
8  * Full author contact details are available in file CREDITS.
9  */
10
11 #include <config.h>
12
13 #include "Color.h"
14 #include "lcolorcache.h"
15
16 #include "LColor.h"
17
18 LColorCache lcolorcache;
19
20 const QColor grey40(0x66, 0x66, 0x66);
21 const QColor grey60(0x99, 0x99, 0x99);
22 const QColor grey80(0xcc, 0xcc, 0xcc);
23 const QColor grey90(0xe5, 0xe5, 0xe5);
24
25
26 LColorCache::LColorCache()
27 {
28 }
29
30 QColor const & LColorCache::get(LColor_color col) const
31 {
32         lcolor_map::const_iterator cit = colormap.find(col);
33         if (cit != colormap.end())
34                 return cit->second;
35
36         if (lcolor.getX11Name(col) == "grey40")
37                 colormap[col] = grey40;
38         else if (lcolor.getX11Name(col) == "grey60")
39                 colormap[col] = grey60;
40         else if (lcolor.getX11Name(col) == "grey80")
41                 colormap[col] = grey80;
42         else if (lcolor.getX11Name(col) == "grey90")
43                 colormap[col] = grey90;
44         else
45                 colormap[col] = QColor(lcolor.getX11Name(col).c_str());
46
47         return colormap[col];
48 }
49
50
51 void LColorCache::clear()
52 {
53         colormap.clear();
54 }
55
56
57 QColor const rgb2qcolor(lyx::RGBColor const & rgb)
58 {
59         return QColor(rgb.r, rgb.g, rgb.b);
60 }