Author: eallen
Date: 2011-04-21 16:30:58 +0000 (Thu, 21 Apr 2011)
New Revision: 4732
Modified:
trunk/cumin/flash-slots/flare.slots/src/flare/demos/Distortions.as
trunk/cumin/flash-slots/flare.slots/src/flare/demos/Layouts.as
trunk/cumin/flash-slots/flare.slots/src/flare/demos/SlotLayout.as
trunk/cumin/flash-slots/flare.slots/src/flare/demos/SlotRenderer.as
trunk/cumin/flash-slots/flare.slots/src/flare/demos/SummaryRenderer.as
trunk/cumin/flash-slots/flare.slots/src/flare/demos/TextButton.as
Log:
Changes to the slot vis action script for:
- Spacing
- Multiple drill down
- Scrolling
- Background color
Modified: trunk/cumin/flash-slots/flare.slots/src/flare/demos/Distortions.as
===================================================================
--- trunk/cumin/flash-slots/flare.slots/src/flare/demos/Distortions.as 2011-04-21 15:20:45
UTC (rev 4731)
+++ trunk/cumin/flash-slots/flare.slots/src/flare/demos/Distortions.as 2011-04-21 16:30:58
UTC (rev 4732)
@@ -97,21 +97,49 @@
});
}
- private function make_tree(tree:Tree, n:NodeSprite):void
+ private function make_tree(tree:Tree, n:NodeSprite, rootData:Object):void
{
if (n.data.hasOwnProperty("tree")) {
var children:Data = Data.fromArray(n.data.tree);
+ var shape_info:Object = rootData.shape_info;
children.visit( function (cn:NodeSprite):Boolean {
+ if (cn.data.hasOwnProperty("back")) {
+ if (cn.data.back) {
+ tree.back = true;
+ }
+ }
tree.addChild(n, cn);
- cn.shape = cn.data.shape;
- var color:Array = cn.data.color;
- cn.fillColor = Colors.rgba(color[0]*255, color[1]*255, color[2]*255);
- if (cn.data.hasOwnProperty("state")) {
- cn.renderer = new SlotRenderer(cn.data.state);
+ if (cn.data.hasOwnProperty("category")) {
+ cn.shape = shape_info[cn.data.category]["shape"];
+ try {
+ cn.fillColor = Colors.rgba(shape_info[cn.data.category]["color"][0]*255,
+ shape_info[cn.data.category]["color"][1]*255,
+ shape_info[cn.data.category]["color"][2]*255);
+ } catch (e:Error) {
+ cn.fillColor =
Colors.rgba(shape_info["Unknown"]["color"][0]*255,
+ shape_info["Unknown"]["color"][1]*255,
+ shape_info["Unknown"]["color"][2]*255);
+ }
+ cn.lineColor = cn.fillColor;
+ cn.data.orgLineColor = cn.lineColor;
+ cn.fillAlpha = 1;
+ cn.lineAlpha = 1;
}
- make_tree(tree, cn);
+ if (cn.data.hasOwnProperty("count")) {
+ cn.renderer = summaryRenderer;
+ cn.data.percent = cn.data.count / cn.parentNode.data.slots;
+ cn.lineWidth = 1;
+ } else if (cn.data.hasOwnProperty("state")) {
+ cn.renderer = slotRenderer;
+ } else if (cn.data.level == 1) {
+ cn.renderer = groupRenderer;
+ } else {
+ cn.shape = null;
+ }
+ make_tree(tree, cn, rootData);
return false
});
+ delete n.data.tree;
}
}
Modified: trunk/cumin/flash-slots/flare.slots/src/flare/demos/Layouts.as
===================================================================
--- trunk/cumin/flash-slots/flare.slots/src/flare/demos/Layouts.as 2011-04-21 15:20:45 UTC
(rev 4731)
+++ trunk/cumin/flash-slots/flare.slots/src/flare/demos/Layouts.as 2011-04-21 16:30:58 UTC
(rev 4732)
@@ -28,7 +28,7 @@
import flash.geom.Rectangle;
import flash.net.URLLoader;
- import mx.controls.scrollClasses.ScrollBar;
+ import mx.controls.VScrollBar;
/**
* Demo showcasing a number of tree and graph layout algorithms.
@@ -38,7 +38,7 @@
private var vis:Visualization;
private var os:OperatorSwitch;
private var shape:String = null;
- private var sb:ScrollBar = null;
+ private var sb:VScrollBar = null;
private var lastSequence:Number = -1;
private var opt:Array;
@@ -355,28 +355,13 @@
} else {
backButton.hide();
}
-
+
vis.data = data;
sizeMatters(data);
nodeEncoder.operate();
edgeEncoder.operate();
+ vis.opaqueBackground = 0xFFFFFF;
vis.update();
-
- if (!sb) {
- sb = new ScrollBar();
- sb.width = 40;
- sb.height = this.stage.stageHeight;
- sb.x = this.stage.stageWidth - 40;
- sb.y = 0;
- sb.pageSize = 400;
- sb.minScrollPosition = 0;
- sb.maxScrollPosition = this.stage.stageHeight;
- sb.pageScrollSize = 0;
- sb.visible = true;
- sb.enabled = true;
- this.stage.addChild(sb);
- }
-
}
}
private function tipOver(evt:ToolTipEvent):void {
@@ -401,6 +386,7 @@
{
if (vis) {
vis.bounds = mainBounds(bounds);
+ vis.opaqueBackground = 0xFFFFFF;
vis.update();
}
}
Modified: trunk/cumin/flash-slots/flare.slots/src/flare/demos/SlotLayout.as
===================================================================
--- trunk/cumin/flash-slots/flare.slots/src/flare/demos/SlotLayout.as 2011-04-21 15:20:45
UTC (rev 4731)
+++ trunk/cumin/flash-slots/flare.slots/src/flare/demos/SlotLayout.as 2011-04-21 16:30:58
UTC (rev 4732)
@@ -91,7 +91,7 @@
if (visualization.tree.back) {
backButtonHeight = 11;
}
- var dr:Number = Math.max(a[0]/bounds.width, a[1]/(bounds.height - backButtonHeight));
+ var dr:Number = Math.max(a[0]/(bounds.width), a[1]/(bounds.height -
backButtonHeight));
var scale:Number = fitInBounds ? 0.99/dr : 1;
_anchor.x = Math.max((bounds.width - (a[0] * scale)) / 2, 0);
_anchor.y = Math.max((bounds.height - (a[1] * scale)) / 2, backButtonHeight);
@@ -171,9 +171,6 @@
}
list.push(c);
}
- if (list.length > 2) {
- var z:Number = 1;
- }
// now sort the child list and perform packing
//if (_sort) _sort.sort(list);
for (i=0; i<list.length; ++i) {
@@ -215,7 +212,7 @@
if (maxLeaves == 0) {
cols = Math.floor(Math.sqrt(N));
} else {
- cols = Math.min(4, N);
+ cols = Math.min(2, N);
expandable = true;
}
rows = Math.floor(N/cols);
@@ -274,10 +271,9 @@
if (i < N) {
cn = nodes[i];
cn.x = colX;
- if (expandable && (cols == 4)) {
- fitInBounds = false;
- cn.w = 180;
- cn.x = 200 * curCol;
+ if (expandable) {
+ cn.w = 360;
+ cn.x = 390 * curCol;
}
cn.y = rowY;
updateBounds(cn, _b);
@@ -306,7 +302,7 @@
_b.top = 0;
return [_b.width, _b.height];
}
-
+
/** Update the bounding box around the nodes. */
private static function updateBounds(c:ChainNode, b:Rectangle):void
{
@@ -344,8 +340,6 @@
if (c.data.name == "slot_info") {
c.data.ppercent = ppercent;
c.data.order = order;
- var tw:Number = c.size * 16 * 6;
- c.x = n.x + (c.data.ppercent * tw) + (c.data.order * 1);
ppercent += c.data.percent;
order += 1;
}
@@ -371,9 +365,9 @@
t = p.data.name;
tf.text = t;
var w:Number = tf.textWidth + tformat.indent;
- var size:Number = Math.min(p.width, 180);
+ var size:Number = Math.min(p.width, 380);
if (p.parentNode.childDegree == 1) {
- size = 390;
+ size = 760;
}
var str:String = tf.text;
while ((w > size) && (str.length > 0)) {
Modified: trunk/cumin/flash-slots/flare.slots/src/flare/demos/SlotRenderer.as
===================================================================
--- trunk/cumin/flash-slots/flare.slots/src/flare/demos/SlotRenderer.as 2011-04-21
15:20:45 UTC (rev 4731)
+++ trunk/cumin/flash-slots/flare.slots/src/flare/demos/SlotRenderer.as 2011-04-21
16:30:58 UTC (rev 4732)
@@ -17,26 +17,10 @@
}
public override function render(d:DataSprite):void
{
-/*
- d.graphics.lineStyle(2, 0);
- d.graphics.beginFill(0, 1);
- d.graphics.drawRect(0,0,100,100);
- return;
- if (flash.system.Capabilities.isDebugger) {
- var outputText:TextField = new TextField();
- outputText.x = 0;
- outputText.y = 0;
- outputText.background = true;
- outputText.autoSize = TextFieldAutoSize.LEFT;
- outputText.appendText("Made it to: ");
- outputText.appendText("slot render.\n");
- d.addChild(outputText);
- }
-*/
var g:Graphics = d.graphics;
g.clear();
- var size:Number = d.size * defaultSize;
+ var size:Number = d.size * 2 * defaultSize;
var color:Array = d.data.color;
var baseColor:Number = d.fillColor;
var lineColor:Number = d.lineColor & 0xffffff;
@@ -47,8 +31,8 @@
x = 0;
y = 0;
- w = size * 2;
- h = size * 2;
+ w = size;
+ h = size;
g.drawRect(x, y, w, h);
var shape:String = d.shape;
Modified: trunk/cumin/flash-slots/flare.slots/src/flare/demos/SummaryRenderer.as
===================================================================
--- trunk/cumin/flash-slots/flare.slots/src/flare/demos/SummaryRenderer.as 2011-04-21
15:20:45 UTC (rev 4731)
+++ trunk/cumin/flash-slots/flare.slots/src/flare/demos/SummaryRenderer.as 2011-04-21
16:30:58 UTC (rev 4732)
@@ -23,7 +23,7 @@
var lineColor:Number = d.lineColor & 0xffffff;
var x:Number, y:Number, w:Number, h:Number;
- var tw:Number = size * 16;
+ var tw:Number = (size * 20 * 2);
var n:NodeSprite = d as NodeSprite;
var parent_x:Number = n.parentNode.x;
// a normal slot
@@ -36,24 +36,26 @@
g.beginFill(0xffffff, 1);
+ // draw a rect so the control has the proper width and height
+ // for mouse-over events
g.lineStyle(1, 0xffffff, 1);
g.drawRect(x, y, w, h);
-
g.lineStyle(1, lineColor, 1);
var currX:Number = x;
var currY:Number = y;
+ var blockSize:Number = 4;
for (var i:Number = 0; i<d.data.count; i++) {
- if ((currX + 3) > w) {
+ if ((currX + blockSize) > w) {
currX = 0;
- currY += 4;
+ currY += (blockSize + 1);
if (currY > h) {
break;
}
}
- g.drawRect(currX, currY, 3, 3);
- currX += 4;
+ g.drawRect(currX, currY, blockSize, blockSize);
+ currX += (blockSize + 1);
}
g.endFill();
return;
Modified: trunk/cumin/flash-slots/flare.slots/src/flare/demos/TextButton.as
===================================================================
--- trunk/cumin/flash-slots/flare.slots/src/flare/demos/TextButton.as 2011-04-21 15:20:45
UTC (rev 4731)
+++ trunk/cumin/flash-slots/flare.slots/src/flare/demos/TextButton.as 2011-04-21 16:30:58
UTC (rev 4732)
@@ -49,12 +49,12 @@
visible = false;
}
public function show():void {
- x = 300;
+ x = 0;
visible = true;
}
private function getBitmapFilter():BitmapFilter {
- var color:Number = 0x000000;
+ var color:Number = 0x8c81c4;
var angle:Number = 45;
var alpha:Number = 0.4;
var blurX:Number = 2;