Logo ROOT   6.16/01
Reference Guide
X11Colors.h
Go to the documentation of this file.
1// @(#)root/graf2d:$Id$
2// Author: Timur Pocheptsov 28/11/2011
3
4/*************************************************************************
5 * Copyright (C) 1995-2012, Rene Brun and Fons Rademakers. *
6 * All rights reserved. *
7 * *
8 * For the licensing terms see $ROOTSYS/LICENSE. *
9 * For the list of contributors see $ROOTSYS/README/CREDITS. *
10 *************************************************************************/
11
12#ifndef ROOT_X11Colors
13#define ROOT_X11Colors
14
15/////////////////////////////////////////////////////////////////
16// //
17// ROOT's GUI depends and relies on X11 XParseColors. //
18// Color can be specified by name (found in X11 rgb.txt) //
19// or as RGB triplet: #rgb #rrggbb #rrrgggbbb #rrrrggggbbbb. //
20// //
21/////////////////////////////////////////////////////////////////
22
23#include <map>
24
25#include <ApplicationServices/ApplicationServices.h>
26
27#include "GuiTypes.h"
28#include "TString.h"
29
30namespace ROOT {
31namespace MacOSX {
32namespace X11 {
33
35public:
37
38 bool ParseColor(const TString &colorString, ColorStruct_t &color)const;
39
40private:
41 bool ParseRGBTriplet(const TString &rgb, ColorStruct_t &color)const;
42 bool LookupColorByName(const TString &colorName, ColorStruct_t &color)const;
43
44 struct RGB_t {
46 : fRed(0), fGreen(0), fBlue(0)
47 {
48 }
49 RGB_t(unsigned r, unsigned g, unsigned b)
50 : fRed(r), fGreen(g), fBlue(b)
51 {
52 }
53 unsigned fRed;
54 unsigned fGreen;
55 unsigned fBlue;
56 };
57
58 std::map<TString, RGB_t> fX11RGB;//X11's rgb.txt
59 typedef std::map<TString, RGB_t> rgb_map;
60 typedef rgb_map::const_iterator const_rgb_iterator;
61};
62
63void PixelToRGB(Pixel_t pixelColor, CGFloat *rgb);
64void PixelToRGB(Pixel_t pixelColor, unsigned char *rgb);
65
66}//X11
67}//MacOSX
68}//ROOT
69
70#endif
ULong_t Pixel_t
Definition: GuiTypes.h:39
ROOT::R::TRInterface & r
Definition: Object.C:4
#define b(i)
Definition: RSha256.hxx:100
#define g(i)
Definition: RSha256.hxx:105
bool ParseRGBTriplet(const TString &rgb, ColorStruct_t &color) const
Definition: X11Colors.mm:88
std::map< TString, RGB_t > fX11RGB
Definition: X11Colors.h:58
rgb_map::const_iterator const_rgb_iterator
Definition: X11Colors.h:60
bool LookupColorByName(const TString &colorName, ColorStruct_t &color) const
Definition: X11Colors.mm:123
std::map< TString, RGB_t > rgb_map
Definition: X11Colors.h:59
bool ParseColor(const TString &colorString, ColorStruct_t &color) const
Definition: X11Colors.mm:75
Basic string class.
Definition: TString.h:131
void PixelToRGB(Pixel_t pixelColor, CGFloat *rgb)
Definition: X11Colors.mm:920
Namespace for new ROOT classes and functions.
Definition: StringConv.hxx:21
RGB_t(unsigned r, unsigned g, unsigned b)
Definition: X11Colors.h:49