0
import flash.display.Sprite;
0
import flash.text.TextField;
0
import flash.text.StyleSheet;
0
+ import flash.events.Event;
0
+ import flash.events.MouseEvent;
0
public class ProjectList extends Sprite {
0
public const AVATAR_SIZE:uint = 40;
0
private var _headerText:TextField;
0
private var _mask:Sprite;
0
private var _container:Sprite;
0
+ private var _controls:Sprite;
0
private var _buttonSpacing:uint;
0
private var _maximum_y:uint;
0
this.backgroundColor = 0x00FFD0;
0
this._items = new Array();
0
+ this._controls = this.createScroll();
0
this._mask = this.createMask();
0
this._container = new Sprite();
0
addChild(this._container);
0
+ addChild(this._controls);
0
this._container.mask = this._mask;
0
+ private function createMask():Sprite {
0
+ var mask:Sprite = new Sprite;
0
+ mask.graphics.clear();
0
+ mask.graphics.beginFill(0x000000);
0
+ mask.graphics.drawRoundRect(this.lateralPadding, this.getHeaderHeight() + this.bottomPadding, this.getMaskWidth(), this.getMaskHeight(), 15, 15);
0
private function getHeaderHeight():uint {
0
return AVATAR_SIZE + this.bottomPadding;
0
private function getMaskHeight():uint {
0
- return this.listHeight - AVATAR_SIZE -
2 * this.bottomPadding;
0
+ return this.listHeight - AVATAR_SIZE -
3 * this.bottomPadding - this._controls.height;
0
private function getMaskWidth():uint {
0
return this.listWidth - 2 * this.lateralPadding;
0
- private function createMask():Sprite {
0
- var mask:Sprite = new Sprite;
0
+ private function scrollUp(e:Event):void {
0
+ this._container.y -= 5;
0
- mask.graphics.clear();
0
- mask.graphics.beginFill(0x000000);
0
- mask.graphics.drawRoundRect(this.lateralPadding, this.getHeaderHeight(), this.getMaskWidth(), this.getMaskHeight(), 15, 15);
0
+ private function scrollDown(e:Event):void {
0
+ this._container.y += 5;
0
+ private function createScroll():Sprite {
0
+ var scrollControls:Sprite = new Sprite;
0
+ var scrollUp:Sprite = this.createScrollUp();
0
+ var scrollDown:Sprite = this.createScrollDown();
0
+ scrollControls.addChild(scrollUp);
0
+ scrollControls.addChild(scrollDown);
0
+ scrollControls.y = this.listHeight - scrollControls.height;
0
+ return scrollControls;
0
+ private function createScrollUp():Sprite {
0
+ var s:Sprite = this.createButtonyThing();
0
+ s.addEventListener(MouseEvent.MOUSE_DOWN, this.startScrollUp);
0
+ private function createScrollDown():Sprite {
0
+ var s:Sprite = this.createButtonyThing();
0
+ s.addEventListener(MouseEvent.MOUSE_DOWN, this.startScrollDown);
0
+ private function startScrollUp(e:Event):void {
0
+ stage.addEventListener(MouseEvent.MOUSE_UP, this.stopScroll);
0
+ this.addEventListener(Event.ENTER_FRAME, this.scrollUp);
0
+ private function startScrollDown(e:Event):void {
0
+ stage.addEventListener(MouseEvent.MOUSE_UP, this.stopScroll);
0
+ this.addEventListener(Event.ENTER_FRAME, this.scrollDown);
0
+ private function stopScroll(e:Event):void {
0
+ this.removeEventListener(Event.ENTER_FRAME, this.scrollUp);
0
+ this.removeEventListener(Event.ENTER_FRAME, this.scrollDown);
0
+ stage.removeEventListener(MouseEvent.MOUSE_UP, this.stopScroll);
0
+ private function createButtonyThing():Sprite {
0
+ var s:Sprite = new Sprite();
0
+ s.graphics.beginFill(0xFFFFFF);
0
+ s.graphics.drawRoundRect(0, 0, 15, 15, 15, 15);
Comments
No one has commented yet.