KHTML
SVGColor.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #include "config.h"
00024 #include "wtf/Platform.h"
00025 #if ENABLE(SVG)
00026 #include "SVGColor.h"
00027
00028
00029 #include "SVGException.h"
00030
00031 namespace WebCore {
00032
00033 SVGColor::SVGColor()
00034 : CSSValue()
00035 , m_colorType(SVG_COLORTYPE_UNKNOWN)
00036 {
00037 }
00038
00039 SVGColor::SVGColor(const String& rgbColor)
00040 : CSSValue()
00041 , m_colorType(SVG_COLORTYPE_RGBCOLOR)
00042 {
00043 setRGBColor(rgbColor);
00044 }
00045
00046 SVGColor::SVGColor(unsigned short colorType)
00047 : CSSValue()
00048 , m_colorType(colorType)
00049 {
00050 }
00051
00052 SVGColor::SVGColor(const Color& c)
00053 : CSSValue()
00054 , m_color(c)
00055 , m_colorType(SVG_COLORTYPE_RGBCOLOR)
00056 {
00057 }
00058
00059
00060 SVGColor::~SVGColor()
00061 {
00062 }
00063
00064 unsigned short SVGColor::colorType() const
00065 {
00066 return m_colorType;
00067 }
00068
00069 unsigned SVGColor::rgbColor() const
00070 {
00071 return m_color.rgb();
00072 }
00073
00074 void SVGColor::setRGBColor(const String& rgbColor, ExceptionCode& ec)
00075 {
00076 Color color = SVGColor::colorFromRGBColorString(rgbColor);
00077 if (color.isValid())
00078 m_color = color;
00079 else
00080 ec = SVGException::SVG_INVALID_VALUE_ERR;
00081 }
00082
00083 Color SVGColor::colorFromRGBColorString(const String& colorString)
00084 {
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094 return QColor(colorString.string());
00095 }
00096
00097 void SVGColor::setRGBColorICCColor(const String& , const String& , ExceptionCode& ec)
00098 {
00099
00100 }
00101
00102 void SVGColor::setColor(unsigned short colorType, const String& , const String& , ExceptionCode& ec)
00103 {
00104
00105 m_colorType = colorType;
00106 }
00107
00108 String SVGColor::cssText() const
00109 {
00110 if (m_colorType == SVG_COLORTYPE_RGBCOLOR)
00111 return m_color.name();
00112
00113 return String();
00114 }
00115
00116 const Color& SVGColor::color() const
00117 {
00118 return m_color;
00119 }
00120
00121 }
00122
00123
00124 #endif // ENABLE(SVG)
00125