summaryrefslogtreecommitdiff
path: root/js/dojo-1.6/dojox/charting/themes/gradientGenerator.xd.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/dojo-1.6/dojox/charting/themes/gradientGenerator.xd.js')
-rw-r--r--js/dojo-1.6/dojox/charting/themes/gradientGenerator.xd.js99
1 files changed, 99 insertions, 0 deletions
diff --git a/js/dojo-1.6/dojox/charting/themes/gradientGenerator.xd.js b/js/dojo-1.6/dojox/charting/themes/gradientGenerator.xd.js
new file mode 100644
index 0000000..1a438d8
--- /dev/null
+++ b/js/dojo-1.6/dojox/charting/themes/gradientGenerator.xd.js
@@ -0,0 +1,99 @@
+/*
+ Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved.
+ Available via Academic Free License >= 2.1 OR the modified BSD license.
+ see: http://dojotoolkit.org/license for details
+*/
+
+
+dojo._xdResourceLoaded(function(dojo, dijit, dojox){
+return {depends: [["provide", "dojox.charting.themes.gradientGenerator"],
+["require", "dojox.charting.Theme"]],
+defineResource: function(dojo, dijit, dojox){if(!dojo._hasResource["dojox.charting.themes.gradientGenerator"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
+dojo._hasResource["dojox.charting.themes.gradientGenerator"] = true;
+dojo.provide("dojox.charting.themes.gradientGenerator");
+dojo.require("dojox.charting.Theme");
+
+(function(){
+ var gg = dojox.charting.themes.gradientGenerator;
+
+ gg.generateFills = function(colors, fillPattern, lumFrom, lumTo){
+ // summary:
+ // generates 2-color gradients using pure colors, a fill pattern, and two luminance values
+ // colors: Array:
+ // Array of colors to generate gradients for each.
+ // fillPattern: Object:
+ // Gradient fill descriptor which colors list will be generated.
+ // lumFrom: Number:
+ // Initial luminance value (0-100).
+ // lumTo: Number:
+ // Final luminance value (0-100).
+ var Theme = dojox.charting.Theme;
+ return dojo.map(colors, function(c){ // Array
+ return Theme.generateHslGradient(c, fillPattern, lumFrom, lumTo);
+ });
+ };
+
+ gg.updateFills = function(themes, fillPattern, lumFrom, lumTo){
+ // summary:
+ // transforms solid color fills into 2-color gradients using a fill pattern, and two luminance values
+ // themes: Array:
+ // Array of mini-themes (usually series themes or marker themes), which fill will be transformed.
+ // fillPattern: Object:
+ // Gradient fill descriptor which colors list will be generated.
+ // lumFrom: Number:
+ // Initial luminance value (0-100).
+ // lumTo: Number:
+ // Final luminance value (0-100).
+ var Theme = dojox.charting.Theme;
+ dojo.forEach(themes, function(t){
+ if(t.fill && !t.fill.type){
+ t.fill = Theme.generateHslGradient(t.fill, fillPattern, lumFrom, lumTo);
+ }
+ });
+ };
+
+ gg.generateMiniTheme = function(colors, fillPattern, lumFrom, lumTo, lumStroke){
+ // summary:
+ // generates mini-themes with 2-color gradients using colors, a fill pattern, and three luminance values
+ // colors: Array:
+ // Array of colors to generate gradients for each.
+ // fillPattern: Object:
+ // Gradient fill descriptor which colors list will be generated.
+ // lumFrom: Number:
+ // Initial luminance value (0-100).
+ // lumTo: Number:
+ // Final luminance value (0-100).
+ // lumStroke: Number:
+ // Stroke luminance value (0-100).
+ var Theme = dojox.charting.Theme;
+ return dojo.map(colors, function(c){ // Array
+ c = new dojox.color.Color(c);
+ return {
+ fill: Theme.generateHslGradient(c, fillPattern, lumFrom, lumTo),
+ stroke: {color: Theme.generateHslColor(c, lumStroke)}
+ }
+ });
+ };
+
+ gg.generateGradientByIntensity = function(color, intensityMap){
+ // summary:
+ // generates gradient colors using an intensity map
+ // color: dojo.Color:
+ // Color to use to generate gradients.
+ // intensityMap: Array:
+ // Array of tuples {o, i}, where o is a gradient offset (0-1),
+ // and i is an intensity (0-255).
+ color = new dojo.Color(color);
+ return dojo.map(intensityMap, function(stop){ // Array
+ var s = stop.i / 255;
+ return {
+ offset: stop.o,
+ color: new dojo.Color([color.r * s, color.g * s, color.b * s, color.a])
+ };
+ });
+ }
+})();
+
+}
+
+}};});