summaryrefslogtreecommitdiff
path: root/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/renderer/color/Color.js
diff options
context:
space:
mode:
Diffstat (limited to 'webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/renderer/color/Color.js')
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/renderer/color/Color.js669
1 files changed, 0 insertions, 669 deletions
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/renderer/color/Color.js b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/renderer/color/Color.js
deleted file mode 100644
index 37af8611fb..0000000000
--- a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/renderer/color/Color.js
+++ /dev/null
@@ -1,669 +0,0 @@
-/* ************************************************************************
-
- qooxdoo - the new era of web development
-
- http://qooxdoo.org
-
- Copyright:
- 2004-2007 1&1 Internet AG, Germany, http://www.1and1.org
-
- License:
- LGPL: http://www.gnu.org/licenses/lgpl.html
- EPL: http://www.eclipse.org/org/documents/epl-v10.php
- See the LICENSE file in the project's top-level directory for details.
-
- Authors:
- * Sebastian Werner (wpbasti)
- * Andreas Ecker (ecker)
-
-************************************************************************ */
-
-/* ************************************************************************
-
-#module(ui_core)
-#require(qx.lang.Function)
-#load(qx.renderer.color.ColorObject)
-
-************************************************************************ */
-
-qx.OO.defineClass("qx.renderer.color.Color", qx.core.Object,
-function(vValue)
-{
- if (vValue != null) {
- this.setValue(vValue);
- }
-
- qx.core.Object.call(this);
-});
-
-
-
-
-
-/* ************************************************************************
- Class data, properties and methods
-************************************************************************ */
-
-/*
----------------------------------------------------------------------------
- CORE METHODS
----------------------------------------------------------------------------
-*/
-
-qx.Class.rgb2style = function(r, g, b) {
- return "rgb(" + r + "," + g + "," + b + ")";
-}
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- CORE DATA
----------------------------------------------------------------------------
-*/
-
-qx.renderer.color.Color.m_hex = [ "0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f" ];
-qx.renderer.color.Color.m_rgb = { 0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,b:11,c:12,d:13,e:14,f:15 }
-
-qx.renderer.color.Color.r_hex3 = /^#([0-9a-f]{1})([0-9a-f]{1})([0-9a-f]{1})$/;
-qx.renderer.color.Color.r_hex6 = /^#([0-9a-f]{1})([0-9a-f]{1})([0-9a-f]{1})([0-9a-f]{1})([0-9a-f]{1})([0-9a-f]{1})$/;
-qx.renderer.color.Color.r_cssrgb = /^rgb\(\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*,\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*,\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*\)$/;
-
-qx.renderer.color.Color.r_rgb = /^[0-9]{1,3},[0-9]{1,3},[0-9]{1,3}$/;
-qx.renderer.color.Color.r_number = /^[0-9]{1,3}\.{0,1}[0-9]*$/;
-qx.renderer.color.Color.r_percent = /^[0-9]{1,3}\.{0,1}[0-9]*%$/;
-
-/**
- * CSS 3 colors (http://www.w3.org/TR/css3-color/#svg-color)
- *
- * This includes all classic HTML Color names (http://www.w3.org/TR/css3-color/#html4) and the <code>transparent</code> keyword.
- */
-qx.Class.htmlNames =
-{
- transparent : [-1,-1,-1],
- aliceblue : [ 240,248,255 ],
- antiquewhite : [ 250,235,215 ],
- aqua : [ 0,255,255 ],
- aquamarine : [ 127,255,212 ],
- azure : [ 240,255,255 ],
- beige : [ 245,245,220 ],
- bisque : [ 255,228,196 ],
- black : [ 0,0,0 ],
- blanchedalmond : [ 255,235,205 ],
- blue : [ 0,0,255 ],
- blueviolet : [ 138,43,226 ],
- brown : [ 165,42,42 ],
- burlywood : [ 222,184,135 ],
- cadetblue : [ 95,158,160 ],
- chartreuse : [ 127,255,0 ],
- chocolate : [ 210,105,30 ],
- coral : [ 255,127,80 ],
- cornflowerblue : [ 100,149,237 ],
- cornsilk : [ 255,248,220 ],
- crimson : [ 220,20,60 ],
- cyan : [ 0,255,255 ],
- darkblue : [ 0,0,139 ],
- darkcyan : [ 0,139,139 ],
- darkgoldenrod : [ 184,134,11 ],
- darkgray : [ 169,169,169 ],
- darkgreen : [ 0,100,0 ],
- darkgrey : [ 169,169,169 ],
- darkkhaki : [ 189,183,107 ],
- darkmagenta : [ 139,0,139 ],
- darkolivegreen : [ 85,107,47 ],
- darkorange : [ 255,140,0 ],
- darkorchid : [ 153,50,204 ],
- darkred : [ 139,0,0 ],
- darksalmon : [ 233,150,122 ],
- darkseagreen : [ 143,188,143 ],
- darkslateblue : [ 72,61,139 ],
- darkslategray : [ 47,79,79 ],
- darkslategrey : [ 47,79,79 ],
- darkturquoise : [ 0,206,209 ],
- darkviolet : [ 148,0,211 ],
- deeppink : [ 255,20,147 ],
- deepskyblue : [ 0,191,255 ],
- dimgray : [ 105,105,105 ],
- dimgrey : [ 105,105,105 ],
- dodgerblue : [ 30,144,255 ],
- firebrick : [ 178,34,34 ],
- floralwhite : [ 255,250,240 ],
- forestgreen : [ 34,139,34 ],
- fuchsia : [ 255,0,255 ],
- gainsboro : [ 220,220,220 ],
- ghostwhite : [ 248,248,255 ],
- gold : [ 255,215,0 ],
- goldenrod : [ 218,165,32 ],
- gray : [ 128,128,128 ],
- green : [ 0,128,0 ],
- greenyellow : [ 173,255,47 ],
- grey : [ 128,128,128 ],
- honeydew : [ 240,255,240 ],
- hotpink : [ 255,105,180 ],
- indianred : [ 205,92,92 ],
- indigo : [ 75,0,130 ],
- ivory : [ 255,255,240 ],
- khaki : [ 240,230,140 ],
- lavender : [ 230,230,250 ],
- lavenderblush : [ 255,240,245 ],
- lawngreen : [ 124,252,0 ],
- lemonchiffon : [ 255,250,205 ],
- lightblue : [ 173,216,230 ],
- lightcoral : [ 240,128,128 ],
- lightcyan : [ 224,255,255 ],
- lightgoldenrodyellow : [ 250,250,210 ],
- lightgray : [ 211,211,211 ],
- lightgreen : [ 144,238,144 ],
- lightgrey : [ 211,211,211 ],
- lightpink : [ 255,182,193 ],
- lightsalmon : [ 255,160,122 ],
- lightseagreen : [ 32,178,170 ],
- lightskyblue : [ 135,206,250 ],
- lightslategray : [ 119,136,153 ],
- lightslategrey : [ 119,136,153 ],
- lightsteelblue : [ 176,196,222 ],
- lightyellow : [ 255,255,224 ],
- lime : [ 0,255,0 ],
- limegreen : [ 50,205,50 ],
- linen : [ 250,240,230 ],
- magenta : [ 255,0,255 ],
- maroon : [ 128,0,0 ],
- mediumaquamarine : [ 102,205,170 ],
- mediumblue : [ 0,0,205 ],
- mediumorchid : [ 186,85,211 ],
- mediumpurple : [ 147,112,219 ],
- mediumseagreen : [ 60,179,113 ],
- mediumslateblue : [ 123,104,238 ],
- mediumspringgreen : [ 0,250,154 ],
- mediumturquoise : [ 72,209,204 ],
- mediumvioletred : [ 199,21,133 ],
- midnightblue : [ 25,25,112 ],
- mintcream : [ 245,255,250 ],
- mistyrose : [ 255,228,225 ],
- moccasin : [ 255,228,181 ],
- navajowhite : [ 255,222,173 ],
- navy : [ 0,0,128 ],
- oldlace : [ 253,245,230 ],
- olive : [ 128,128,0 ],
- olivedrab : [ 107,142,35 ],
- orange : [ 255,165,0 ],
- orangered : [ 255,69,0 ],
- orchid : [ 218,112,214 ],
- palegoldenrod : [ 238,232,170 ],
- palegreen : [ 152,251,152 ],
- paleturquoise : [ 175,238,238 ],
- palevioletred : [ 219,112,147 ],
- papayawhip : [ 255,239,213 ],
- peachpuff : [ 255,218,185 ],
- peru : [ 205,133,63 ],
- pink : [ 255,192,203 ],
- plum : [ 221,160,221 ],
- powderblue : [ 176,224,230 ],
- purple : [ 128,0,128 ],
- red : [ 255,0,0 ],
- rosybrown : [ 188,143,143 ],
- royalblue : [ 65,105,225 ],
- saddlebrown : [ 139,69,19 ],
- salmon : [ 250,128,114 ],
- sandybrown : [ 244,164,96 ],
- seagreen : [ 46,139,87 ],
- seashell : [ 255,245,238 ],
- sienna : [ 160,82,45 ],
- silver : [ 192,192,192 ],
- skyblue : [ 135,206,235 ],
- slateblue : [ 106,90,205 ],
- slategray : [ 112,128,144 ],
- slategrey : [ 112,128,144 ],
- snow : [ 255,250,250 ],
- springgreen : [ 0,255,127 ],
- steelblue : [ 70,130,180 ],
- tan : [ 210,180,140 ],
- teal : [ 0,128,128 ],
- thistle : [ 216,191,216 ],
- tomato : [ 255,99,71 ],
- turquoise : [ 64,224,208 ],
- violet : [ 238,130,238 ],
- wheat : [ 245,222,179 ],
- white : [ 255,255,255 ],
- whitesmoke : [ 245,245,245 ],
- yellow : [ 255,255,0 ],
- yellowgreen : [ 154,205,50 ]
-};
-
-/**
- * ActiveBorder: Active window border.
- * ActiveCaption: Active window caption.
- *
- * AppWorkspace: Background color of multiple document interface.
- * Background: Desktop background.
- *
- * ButtonFace: Face color for three-dimensional display elements.
- * ButtonHighlight: Highlight color for three-dimensional display elements (for edges facing away from the light source).
- * ButtonShadow: Shadow color for three-dimensional display elements.
- * ButtonText: Text on push buttons.
- *
- * CaptionText: Text in caption, size box, and scrollbar arrow box.
- * GrayText: Grayed (disabled) text.
- *
- * Highlight: Item(s) selected in a control.
- * HighlightText: Text of item(s) selected in a control.
- *
- * InactiveBorder: Inactive window border.
- * InactiveCaption: Inactive window caption.
- * InactiveCaptionText: Color of text in an inactive caption.
- *
- * InfoBackground: Background color for tooltip controls.
- * InfoText: Text color for tooltip controls.
- *
- * Menu: Menu background.
- * MenuText: Text in menus.
- *
- * Scrollbar: Scroll bar gray area.
- *
- * ThreeDDarkShadow: Dark shadow for three-dimensional display elements.
- * ThreeDFace: Face color for three-dimensional display elements.
- * ThreeDHighlight: Highlight color for three-dimensional display elements.
- * ThreeDLightShadow: Light color for three-dimensional display elements (for edges facing the light source).
- * ThreeDShadow: Dark shadow for three-dimensional display elements.
- *
- * Window: Window background.
- * WindowFrame: Window frame.
- * WindowText: Text in windows.
- */
-qx.Class.themedNames =
-{
- activeborder : 1,
- activecaption : 1,
- appworkspace : 1,
- background : 1,
- buttonface : 1,
- buttonhighlight : 1,
- buttonshadow : 1,
- buttontext : 1,
- captiontext : 1,
- graytext : 1,
- highlight : 1,
- highlighttext : 1,
- inactiveborder : 1,
- inactivecaption : 1,
- inactivecaptiontext : 1,
- infobackground : 1,
- infotext : 1,
- menu : 1,
- menutext : 1,
- scrollbar : 1,
- threeddarkshadow : 1,
- threedface : 1,
- threedhighlight : 1,
- threedlightshadow : 1,
- threedshadow : 1,
- window : 1,
- windowframe : 1,
- windowtext : 1
-}
-
-
-
-
-
-
-
-/* ************************************************************************
- Instance data, properties and methods
-************************************************************************ */
-
-/*
----------------------------------------------------------------------------
- UTILITY
----------------------------------------------------------------------------
-*/
-
-qx.Class.fromString = function(vDefString) {
- return new qx.renderer.color.Color(vDefString);
-}
-
-qx.Class.fromRandom = function() {
- return new qx.renderer.color.Color([Math.round(255*Math.random()), Math.round(255*Math.random()), Math.round(255*Math.random())]);
-}
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- DATA
----------------------------------------------------------------------------
-*/
-
-qx.Proto._value = null;
-qx.Proto._style = null;
-
-qx.Proto._isRgbColor = false;
-qx.Proto._isHtmlColor = false;
-qx.Proto._isThemedColor = false;
-
-qx.Proto._red = null;
-qx.Proto._green = null;
-qx.Proto._blue = null;
-
-qx.Proto._hex = null;
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- COMPATIBILITY METHODS
----------------------------------------------------------------------------
-*/
-
-qx.Proto.add = qx.lang.Function.returnTrue;
-qx.Proto.remove = qx.lang.Function.returnTrue;
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- PUBLIC METHODS
----------------------------------------------------------------------------
-*/
-
-qx.Proto.isRgbColor = function() {
- return this._isRgbColor;
-}
-
-qx.Proto.isHtmlColor = function() {
- return this._isHtmlColor;
-}
-
-qx.Proto.isThemedColor = function() {
- return this._isThemedColor;
-}
-
-
-
-
-qx.Proto.setValue = function(vValue)
-{
- this._normalize(vValue);
-
- if (this._isThemedColor) {
- throw new Error("Please use qx.renderer.color.ColorObject for themed colors!");
- }
-}
-
-qx.Proto.getValue = function() {
- return this._value || "";
-}
-
-
-
-
-qx.Proto.getStyle = function()
-{
- if (this._style == null) {
- this._evalStyle();
- }
-
- return this._style;
-}
-
-qx.Proto._evalStyle = function()
-{
- if (this._isRgbColor)
- {
- this._style = qx.renderer.color.Color.rgb2style(this._red, this._green, this._blue);
- }
- else if (this._isThemedColor)
- {
- this._applyThemedValue();
- }
- else if (this._isHtmlColor)
- {
- this._style = this._value;
- }
- else if (this._value != null)
- {
- this.error("Could not handle non-rgb colors :" + this.getValue() + "!");
- }
-}
-
-
-
-
-qx.Proto.getHex = function()
-{
- if (this._hex == null) {
- this._evalHex();
- }
-
- return this._hex;
-}
-
-qx.Proto._evalHex = function()
-{
- if (this._isRgbColor)
- {
- var a = ["#"];
-
- var r = this.getRed();
- a.push(qx.renderer.color.Color.m_hex[Math.floor(r/16)]);
- a.push(qx.renderer.color.Color.m_hex[Math.floor(r%16)]);
-
- var g = this.getGreen();
- a.push(qx.renderer.color.Color.m_hex[Math.floor(g/16)]);
- a.push(qx.renderer.color.Color.m_hex[Math.floor(g%16)]);
-
- var b = this.getBlue();
- a.push(qx.renderer.color.Color.m_hex[Math.floor(b/16)]);
- a.push(qx.renderer.color.Color.m_hex[Math.floor(b%16)]);
-
- this._hex = a.join("");
- }
- else
- {
- // TODO
- }
-}
-
-
-
-
-qx.Proto.getRed = function()
-{
- if (this._red == null) {
- this._evalRgb();
- }
-
- return this._red;
-}
-
-qx.Proto.getGreen = function()
-{
- if (this._green == null) {
- this._evalRgb();
- }
-
- return this._green;
-}
-
-qx.Proto.getBlue = function()
-{
- if (this._blue == null) {
- this._evalRgb();
- }
-
- return this._blue;
-}
-
-
-
-
-qx.Proto._evalRgb = function()
-{
- if (this._isThemedColor)
- {
- this._applyThemedValue();
- }
- else if (this._isHtmlColor)
- {
- var a = qx.renderer.color.Color.htmlNames[this._value];
-
- this._red = a[0];
- this._green = a[1];
- this._blue = a[2];
- }
- else
- {
- throw new Error("_evalRgb needs implementation!");
- }
-}
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- PRIVATE METHODS
----------------------------------------------------------------------------
-*/
-
-qx.Proto._normalize = function(vInValue)
-{
- this._isThemedColor = this._isRgbColor = this._isHtmlColor = false;
- this._hex = null;
-
- var invalid = new Error("Invalid color: " + vInValue);
-
- switch(typeof vInValue)
- {
- case "string":
- vInValue = vInValue.toLowerCase();
-
- if (qx.renderer.color.Color.htmlNames[vInValue])
- {
- this._isHtmlColor = true;
- }
- else if (qx.renderer.color.Color.themedNames[vInValue])
- {
- this._isThemedColor = true;
- }
- else if (qx.renderer.color.Color.r_cssrgb.test(vInValue))
- {
- this._red = parseInt(RegExp.$1);
- this._green = parseInt(RegExp.$2);
- this._blue = parseInt(RegExp.$3);
-
- this._isRgbColor = true;
- }
- else if (qx.renderer.color.Color.r_hex3.test(vInValue))
- {
- this._hex = vInValue;
-
- this._red = (qx.renderer.color.Color.m_rgb[RegExp.$1] * 16) + qx.renderer.color.Color.m_rgb[RegExp.$1];
- this._green = (qx.renderer.color.Color.m_rgb[RegExp.$2] * 16) + qx.renderer.color.Color.m_rgb[RegExp.$2];
- this._blue = (qx.renderer.color.Color.m_rgb[RegExp.$3] * 16) + qx.renderer.color.Color.m_rgb[RegExp.$3];
-
- this._isRgbColor = true;
- }
- else if (qx.renderer.color.Color.r_hex6.test(vInValue))
- {
- this._hex = vInValue;
-
- this._red = (qx.renderer.color.Color.m_rgb[RegExp.$1] * 16) + qx.renderer.color.Color.m_rgb[RegExp.$2];
- this._green = (qx.renderer.color.Color.m_rgb[RegExp.$3] * 16) + qx.renderer.color.Color.m_rgb[RegExp.$4];
- this._blue = (qx.renderer.color.Color.m_rgb[RegExp.$5] * 16) + qx.renderer.color.Color.m_rgb[RegExp.$6];
-
- this._isRgbColor = true;
- }
- else
- {
- throw invalid;
- }
-
- break;
-
- case "number":
- if (vInValue >= 0 && vInValue <= 255)
- {
- this._red = this._green = this._blue = vInValue;
- this._isRgbColor = true;
- }
- else
- {
- throw invalid;
- }
-
- break;
-
- case "object":
- if (qx.util.Validation.isValidArray(vInValue) && vInValue.length == 3)
- {
- this._red = vInValue[0];
- this._green = vInValue[1];
- this._blue = vInValue[2];
-
- this._isRgbColor = true;
- break;
- }
-
- default:
- throw invalid;
- }
-
- if (!this._isRgbColor)
- {
- this._red = this._green = this._blue = null;
- this._style = this._isHtmlColor ? vInValue : null;
- }
- else
- {
- this._style = null;
-
- if (!(this._red >= 0 && this._red <= 255 && this._green >= 0 && this._green <= 255 && this._blue >= 0 && this._blue <= 255)) {
- throw invalid;
- }
- }
-
- return this._value = vInValue;
-}
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- DISPOSER
----------------------------------------------------------------------------
-*/
-
-qx.Proto.dispose = function()
-{
- if (this.getDisposed()) {
- return true;
- }
-
- delete this._value;
- delete this._style;
-
- delete this._red;
- delete this._green;
- delete this._blue;
-
- delete this._isRgbColor;
- delete this._isHtmlColor;
- delete this._isThemedColor;
-
- return qx.core.Object.prototype.dispose.call(this);
-}