1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
import com.oop.UIButton;
import com.oop.SelectionSystem;
import mx.utils.Delegate;
import mx.transitions.easing.*;
import mx.transitions.Tween;
class com.keywords.KeywordButton extends UIButton
{
private var title_mc:MovieClip;
private var desc_mc:MovieClip;
private var icon_mc:MovieClip;
private var bg_mc:MovieClip;
private var gridObj:Object;
private var shine_mc:MovieClip;
private var element_mc:MovieClip;
private var initialAlpha:Number = 60;
private var initialShine:Number = 30;
private var tint:Number;
public var elementSymbol:String;
private var installedX:Number = 0;
private var installedY:Number = 0;
public function KeywordButton() {}
public function init(_selectionSystem:SelectionSystem, _id:Number, _itemData:Object, _gridObj:Object ):Void {
gridObj = _gridObj;
super.init (_selectionSystem, _id, _itemData);
makeButton(itemData);
}
public function hashColor (_inStr:String):Number {
switch (_inStr) {
case "ivory": return (0xE0E0D8);
case "orange": return (0xFFD799);
case "yellow": return (0xFFF7A8);
case "green": return (0xDAF4B2);
case "blue": return (0xCCCCFF);
case "purple": return (0xDDB1FF);
case "pink": return (0xFFAECD);
case "plain": return (0xE6f0f0);
default: return (0xFFFFFF);
}
}
private function makeButton(_val:Object):Void {
icon_mc._alpha = initialAlpha;
shine_mc._alpha = initialShine;
title_mc.title_txt.text = _val.name.toLowerCase();
var c:String = _val.name.charAt(0); // b
var cc:String = _val.name.charAt(1); // u
var u:String = c.toUpperCase(); // B (if b)
var uu:String = cc.toLowerCase(); // u (if U)
var tmp:String = u.concat (uu); // Bu
element_mc.element_txt.text = tmp;
elementSymbol = tmp;
var tmpColor:Number = hashColor ( _val.color.toString() );
element_mc.element_txt.textColor = tmpColor; // &= 0x7F7F7F;
setPosition();
}
private function setPosition():Void {
_x = Math.round ( (gridObj.grid_x * _width) + (gridObj.horizSpace * gridObj.grid_x));
_y = Math.round ( ((gridObj.grid_y-1) * _height) + (gridObj.vertSpace * (gridObj.grid_y-1)));
installedX = _x;
installedY = _y;
}
private function handleRollOver():Void {
var tTween = new Tween(icon_mc, "_alpha", Regular.easeOut, icon_mc._alpha, 100, 1, true);
var shineTween = new Tween(shine_mc, "_alpha", Regular.easeOut, shine_mc._alpha, 0, .2, true);
}
private function handleRollOut():Void
{
if(visited) { var fadeVal:Number = initialAlpha; }
else { var fadeVal:Number = initialAlpha; }
var tTween = new Tween (icon_mc, "_alpha", Regular.easeOut, icon_mc._alpha, initialAlpha, 1, true);
var shineTween = new Tween (shine_mc, "_alpha", Regular.easeOut, shine_mc._alpha, initialShine, .2, true);
}
public function setSelected():Void
{
}
}
|