Line data Source code
1 : /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 : /* libmspub
3 : * Version: MPL 1.1 / GPLv2+ / LGPLv2+
4 : *
5 : * The contents of this file are subject to the Mozilla Public License Version
6 : * 1.1 (the "License"); you may not use this file except in compliance with
7 : * the License or as specified alternatively below. You may obtain a copy of
8 : * the License at http://www.mozilla.org/MPL/
9 : *
10 : * Software distributed under the License is distributed on an "AS IS" basis,
11 : * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
12 : * for the specific language governing rights and limitations under the
13 : * License.
14 : *
15 : * Major Contributor(s):
16 : * Copyright (C) 2012 Brennan Vincent <brennanv@email.arizona.edu>
17 : *
18 : * All Rights Reserved.
19 : *
20 : * For minor contributions see the git repository.
21 : *
22 : * Alternatively, the contents of this file may be used under the terms of
23 : * either the GNU General Public License Version 2 or later (the "GPLv2+"), or
24 : * the GNU Lesser General Public License Version 2 or later (the "LGPLv2+"),
25 : * in which case the provisions of the GPLv2+ or the LGPLv2+ are applicable
26 : * instead of those above.
27 : */
28 :
29 : #ifndef __COLORREFERENCE_H__
30 : #define __COLORREFERENCE_H__
31 :
32 : #include "MSPUBTypes.h"
33 :
34 : namespace libmspub
35 : {
36 : class ColorReference
37 : {
38 : unsigned m_baseColor;
39 : unsigned m_modifiedColor;
40 : // static const unsigned char COLOR_PALETTE;
41 : static const unsigned char CHANGE_INTENSITY;
42 : static const unsigned char BLACK_BASE;
43 : static const unsigned char WHITE_BASE;
44 : Color getRealColor(unsigned c, const std::vector<Color> &palette) const;
45 : public:
46 0 : explicit ColorReference(unsigned color) : m_baseColor(color), m_modifiedColor(color) { }
47 0 : ColorReference(unsigned baseColor, unsigned modifiedColor) : m_baseColor(baseColor), m_modifiedColor(modifiedColor) { }
48 : Color getFinalColor(const std::vector<Color> &palette) const;
49 : public:
50 : friend bool operator==(const libmspub::ColorReference &, const libmspub::ColorReference &);
51 : };
52 : }
53 :
54 : #endif /* __COLORREFERENCE_H__ */
55 : /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
|