91 lines
No EOL
1.7 KiB
ActionScript
Executable file
91 lines
No EOL
1.7 KiB
ActionScript
Executable file
/**
|
|
* Basic view class of the players MCV pattern, extended by all views.
|
|
* Create you own views by extending this one.
|
|
*
|
|
* @author Jeroen Wijering
|
|
* @version 1.2
|
|
**/
|
|
|
|
|
|
import com.jeroenwijering.players.*;
|
|
|
|
|
|
class com.jeroenwijering.players.AbstractView {
|
|
|
|
|
|
/** Controller reference **/
|
|
private var controller:AbstractController;
|
|
/** reference to config Array **/
|
|
private var config:Object;
|
|
/** reference to feed Array **/
|
|
private var feeder:Object;
|
|
|
|
|
|
/** Constructor **/
|
|
function AbstractView(ctr:AbstractController,cfg:Object,fed:Object) {
|
|
controller = ctr;
|
|
config = cfg;
|
|
feeder = fed;
|
|
};
|
|
|
|
|
|
/** Receive updates from the models. **/
|
|
public function getUpdate(typ:String,pr1:Number,pr2:Number):Void {
|
|
trace("view: "+typ+": "+pr1+","+pr2);
|
|
switch(typ) {
|
|
case "state":
|
|
setState(pr1);
|
|
break;
|
|
case "load":
|
|
setLoad(pr1);
|
|
break;
|
|
case "time":
|
|
setTime(pr1,pr2);
|
|
break;
|
|
case "item":
|
|
setItem(pr1);
|
|
break;
|
|
case "size":
|
|
setSize(pr1,pr2);
|
|
break;
|
|
case "volume":
|
|
setVolume(pr1);
|
|
break;
|
|
default:
|
|
trace("View: incompatible update received");
|
|
break;
|
|
}
|
|
};
|
|
|
|
|
|
/** Empty state handler **/
|
|
private function setState(pr1:Number) {};
|
|
|
|
|
|
/** Empty load handler **/
|
|
private function setLoad(pr1:Number) {};
|
|
|
|
|
|
/** Empty time handler **/
|
|
private function setTime(pr1:Number,pr2:Number) {};
|
|
|
|
|
|
/** Empty item handler **/
|
|
private function setItem(pr1:Number) {};
|
|
|
|
|
|
/** Empty item handler **/
|
|
private function setSize(pr1:Number,pr2:Number) {};
|
|
|
|
|
|
/** Empty volume handler **/
|
|
private function setVolume(pr1:Number) {};
|
|
|
|
|
|
/** Send event to the controller. **/
|
|
private function sendEvent(typ:String,prm:Number) {
|
|
controller.getEvent(typ,prm);
|
|
};
|
|
|
|
|
|
} |