Skip to content

Commit e1c5b65

Browse files
committed
tests: Add mouse_double_click_events test
1 parent 3c5262a commit e1c5b65

5 files changed

Lines changed: 337 additions & 0 deletions

File tree

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
package {
2+
import flash.display.DisplayObject;
3+
import flash.display.MovieClip;
4+
import flash.display.Sprite;
5+
import flash.events.MouseEvent;
6+
import flash.geom.ColorTransform;
7+
8+
[SWF(width="100", height="20")]
9+
public class Test extends Sprite {
10+
private var colorIndex: int = 0;
11+
private var colors: Array = [
12+
0xFF0000,
13+
0x00FF00,
14+
0x0000FF,
15+
0x00FFFF,
16+
0xFF00FF,
17+
0xFFFF00
18+
];
19+
private var events: Array = [
20+
MouseEvent.CLICK,
21+
MouseEvent.DOUBLE_CLICK,
22+
MouseEvent.MOUSE_UP,
23+
MouseEvent.MOUSE_DOWN
24+
];
25+
26+
public function Test() {
27+
var a = newMovieClip(0, 0, 20, 20, "A");
28+
var b = newMovieClip(20, 0, 40, 20, "B");
29+
b.addChild(newMovieClip(20, 0, 20, 20, "C"));
30+
var d = newMovieClip(60, 0, 20, 20, "D", false);
31+
addChild(a);
32+
addChild(b);
33+
addChild(d);
34+
for each (var eventName in [MouseEvent.MOUSE_UP, MouseEvent.RIGHT_MOUSE_UP, MouseEvent.MIDDLE_MOUSE_UP]) {
35+
registerListener(eventName, stage, "stage");
36+
}
37+
}
38+
39+
private function newMovieClip(x:Number, y:Number, w:Number, h:Number, name:String, registerDoubleClickEvent:Boolean = true):MovieClip {
40+
var sprite:Sprite = new Sprite();
41+
sprite.graphics.beginFill(colors[colorIndex++]);
42+
sprite.graphics.drawRect(0, 0, w, h);
43+
sprite.tabEnabled = true;
44+
sprite.doubleClickEnabled = true;
45+
var movieClip:MovieClip = new MovieClip();
46+
movieClip.addChild(sprite);
47+
movieClip.x = x;
48+
movieClip.y = y;
49+
movieClip.doubleClickEnabled = true;
50+
for each (var eventName in events) {
51+
if (!registerDoubleClickEvent && eventName == MouseEvent.DOUBLE_CLICK) {
52+
continue;
53+
}
54+
55+
registerListener(eventName, sprite, name + ".sprite");
56+
registerListener(eventName, movieClip, name);
57+
}
58+
return movieClip;
59+
}
60+
61+
private function registerListener(eventName:String, object:DisplayObject, name:String) {
62+
object.addEventListener(eventName, function(evt:MouseEvent):void {
63+
var formatted:String = evt.formatToString(
64+
"MouseEvent","type","bubbles","cancelable",
65+
"eventPhase","relatedObject","ctrlKey","altKey","shiftKey","buttonDown","delta");
66+
trace("Event " + eventName + " at " + name + ": " + formatted);
67+
68+
if (eventName == MouseEvent.DOUBLE_CLICK) {
69+
object.transform.colorTransform = new ColorTransform(0.4, 0.4, 0.4);
70+
}
71+
if (eventName == MouseEvent.CLICK) {
72+
object.transform.colorTransform = new ColorTransform(0.8, 0.8, 0.8);
73+
}
74+
});
75+
}
76+
}
77+
}
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
[
2+
{ "type": "MouseMove", "pos": [10,10] },
3+
{ "type": "MouseDown", "pos": [10,10], "btn": "Left" },
4+
{ "type": "MouseUp", "pos": [10,10], "btn": "Left" },
5+
{ "type": "MouseDown", "pos": [10,10], "btn": "Left" },
6+
{ "type": "MouseUp", "pos": [10,10], "btn": "Left" },
7+
{ "type": "MouseDown", "pos": [10,10], "btn": "Left", "index": 1 },
8+
{ "type": "MouseUp", "pos": [10,10], "btn": "Left" },
9+
{ "type": "MouseDown", "pos": [10,10], "btn": "Left" },
10+
{ "type": "MouseUp", "pos": [10,10], "btn": "Left" },
11+
{ "type": "MouseDown", "pos": [10,10], "btn": "Left", "index": 1 },
12+
{ "type": "MouseUp", "pos": [10,10], "btn": "Left" },
13+
{ "type": "MouseDown", "pos": [10,10], "btn": "Left", "index": 2 },
14+
{ "type": "MouseUp", "pos": [10,10], "btn": "Left" },
15+
16+
{ "type": "MouseMove", "pos": [30,10] },
17+
{ "type": "MouseDown", "pos": [30,10], "btn": "Left" },
18+
{ "type": "MouseUp", "pos": [30,10], "btn": "Left" },
19+
{ "type": "MouseDown", "pos": [30,10], "btn": "Left" },
20+
{ "type": "MouseUp", "pos": [30,10], "btn": "Left" },
21+
{ "type": "MouseDown", "pos": [30,10], "btn": "Left", "index": 1 },
22+
{ "type": "MouseUp", "pos": [30,10], "btn": "Left" },
23+
{ "type": "MouseDown", "pos": [30,10], "btn": "Left" },
24+
{ "type": "MouseUp", "pos": [30,10], "btn": "Left" },
25+
{ "type": "MouseDown", "pos": [30,10], "btn": "Left", "index": 1 },
26+
{ "type": "MouseUp", "pos": [30,10], "btn": "Left" },
27+
{ "type": "MouseDown", "pos": [30,10], "btn": "Left", "index": 2 },
28+
{ "type": "MouseUp", "pos": [30,10], "btn": "Left" },
29+
30+
{ "type": "MouseMove", "pos": [50,10] },
31+
{ "type": "MouseDown", "pos": [50,10], "btn": "Left" },
32+
{ "type": "MouseUp", "pos": [50,10], "btn": "Left" },
33+
{ "type": "MouseDown", "pos": [50,10], "btn": "Left" },
34+
{ "type": "MouseUp", "pos": [50,10], "btn": "Left" },
35+
{ "type": "MouseDown", "pos": [50,10], "btn": "Left", "index": 1 },
36+
{ "type": "MouseUp", "pos": [50,10], "btn": "Left" },
37+
{ "type": "MouseDown", "pos": [50,10], "btn": "Left" },
38+
{ "type": "MouseUp", "pos": [50,10], "btn": "Left" },
39+
{ "type": "MouseDown", "pos": [50,10], "btn": "Left", "index": 1 },
40+
{ "type": "MouseUp", "pos": [50,10], "btn": "Left" },
41+
{ "type": "MouseDown", "pos": [50,10], "btn": "Left", "index": 2 },
42+
{ "type": "MouseUp", "pos": [50,10], "btn": "Left" },
43+
44+
{ "type": "MouseMove", "pos": [70,10] },
45+
{ "type": "MouseDown", "pos": [70,10], "btn": "Left" },
46+
{ "type": "MouseUp", "pos": [70,10], "btn": "Left" },
47+
{ "type": "MouseDown", "pos": [70,10], "btn": "Left" },
48+
{ "type": "MouseUp", "pos": [70,10], "btn": "Left" },
49+
{ "type": "MouseDown", "pos": [70,10], "btn": "Left", "index": 1 },
50+
{ "type": "MouseUp", "pos": [70,10], "btn": "Left" },
51+
{ "type": "MouseDown", "pos": [70,10], "btn": "Left" },
52+
{ "type": "MouseUp", "pos": [70,10], "btn": "Left" },
53+
{ "type": "MouseDown", "pos": [70,10], "btn": "Left", "index": 1 },
54+
{ "type": "MouseUp", "pos": [70,10], "btn": "Left" },
55+
{ "type": "MouseDown", "pos": [70,10], "btn": "Left", "index": 2 },
56+
{ "type": "MouseUp", "pos": [70,10], "btn": "Left" },
57+
58+
{ "type": "MouseMove", "pos": [90,10] },
59+
{ "type": "MouseDown", "pos": [90,10], "btn": "Left" },
60+
{ "type": "MouseUp", "pos": [90,10], "btn": "Left" },
61+
{ "type": "MouseDown", "pos": [90,10], "btn": "Left" },
62+
{ "type": "MouseUp", "pos": [90,10], "btn": "Left" },
63+
{ "type": "MouseDown", "pos": [90,10], "btn": "Left", "index": 1 },
64+
{ "type": "MouseUp", "pos": [90,10], "btn": "Left" },
65+
{ "type": "MouseDown", "pos": [90,10], "btn": "Left" },
66+
{ "type": "MouseUp", "pos": [90,10], "btn": "Left" },
67+
{ "type": "MouseDown", "pos": [90,10], "btn": "Left", "index": 1 },
68+
{ "type": "MouseUp", "pos": [90,10], "btn": "Left" },
69+
{ "type": "MouseDown", "pos": [90,10], "btn": "Left", "index": 2 },
70+
{ "type": "MouseUp", "pos": [90,10], "btn": "Left" }
71+
]

0 commit comments

Comments
 (0)