comparison src/xlsx/xlsxcolor_p.h @ 1:93d3106bb9a4

Add qt xlsx library
author Andre Heinecke <andre.heinecke@intevation.de>
date Tue, 22 Mar 2016 10:38:08 +0100
parents
children
comparison
equal deleted inserted replaced
0:49cd5cc0b072 1:93d3106bb9a4
1 /****************************************************************************
2 ** Copyright (c) 2013-2014 Debao Zhang <hello@debao.me>
3 ** All right reserved.
4 **
5 ** Permission is hereby granted, free of charge, to any person obtaining
6 ** a copy of this software and associated documentation files (the
7 ** "Software"), to deal in the Software without restriction, including
8 ** without limitation the rights to use, copy, modify, merge, publish,
9 ** distribute, sublicense, and/or sell copies of the Software, and to
10 ** permit persons to whom the Software is furnished to do so, subject to
11 ** the following conditions:
12 **
13 ** The above copyright notice and this permission notice shall be
14 ** included in all copies or substantial portions of the Software.
15 **
16 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19 ** NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20 ** LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21 ** OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22 ** WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23 **
24 ****************************************************************************/
25
26 #ifndef QXLSX_XLSXCOLOR_P_H
27 #define QXLSX_XLSXCOLOR_P_H
28
29 //
30 // W A R N I N G
31 // -------------
32 //
33 // This file is not part of the Qt Xlsx API. It exists for the convenience
34 // of the Qt Xlsx. This header file may change from
35 // version to version without notice, or even be removed.
36 //
37 // We mean it.
38 //
39
40 #include "xlsxglobal.h"
41 #include <QVariant>
42 #include <QColor>
43
44 class QXmlStreamWriter;
45 class QXmlStreamReader;
46
47 namespace QXlsx {
48
49 class Styles;
50
51 class Q_XLSX_EXPORT XlsxColor
52 {
53 public:
54 explicit XlsxColor(const QColor &color = QColor());
55 explicit XlsxColor(const QString &theme, const QString &tint=QString());
56 explicit XlsxColor (int index);
57
58 bool isThemeColor() const;
59 bool isIndexedColor() const;
60 bool isRgbColor() const;
61 bool isInvalid() const;
62
63 QColor rgbColor() const;
64 int indexedColor() const;
65 QStringList themeColor() const;
66
67 operator QVariant() const;
68
69 static QColor fromARGBString(const QString &c);
70 static QString toARGBString(const QColor &c);
71
72 bool saveToXml(QXmlStreamWriter &writer, const QString &node=QString()) const;
73 bool loadFromXml(QXmlStreamReader &reader);
74
75 private:
76 QVariant val;
77 };
78
79 #if !defined(QT_NO_DATASTREAM)
80 Q_XLSX_EXPORT QDataStream &operator<<(QDataStream &, const XlsxColor &);
81 Q_XLSX_EXPORT QDataStream &operator>>(QDataStream &, XlsxColor &);
82 #endif
83
84 #ifndef QT_NO_DEBUG_STREAM
85 Q_XLSX_EXPORT QDebug operator<<(QDebug dbg, const XlsxColor &c);
86 #endif
87
88 } // namespace QXlsx
89
90 Q_DECLARE_METATYPE(QXlsx::XlsxColor)
91
92 #endif // QXLSX_XLSXCOLOR_P_H
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)