📄 overlayview.as
字号:
/**
* Overlay banner management of the mediaplayer MCV pattern.
*
* @author Jeroen Wijering
* @version 1.0
**/
import com.jeroenwijering.players.*;
import com.jeroenwijering.utils.*;
class com.jeroenwijering.players.OverlayView extends AbstractView {
/** link to the banner MC **/
private var overlay:MovieClip;
/** Imageloader **/
private var loader:ImageLoader;
/** flag for display of the banner **/
private var state:Number = 0;
/** Constructor, loads caption file. **/
function OverlayView(ctr:AbstractController,cfg:Object,fed:Object) {
super(ctr,cfg,fed);
var ref = this;
overlay = config['clip'].overlay;
overlay._alpha = 0;
overlay.icn.swapDepths(2);
overlay.icn.onPress = function() {
Animations.fadeOut(ref.overlay,0);
ref.state = 3;
};
overlay.createEmptyMovieClip("img",1);
loader = new ImageLoader(overlay.img,"none");
loader.onLoadFinished = function() { ref.setDimensions(); };
Stage.addListener(this);
};
/** place and scale the overlay correctly **/
private function setDimensions() {
overlay.icn._x = 0;
overlay.img.mc.gotoAndPlay(1);
if(Stage["displayState"] == "fullScreen") {
overlay._xscale = overlay._yscale = 200;
overlay._x = Stage.width/2 - overlay._width/2;
overlay._y = Stage.height - overlay._height - 50;
overlay.icn._x = overlay._width/2 - 20;
} else {
overlay._xscale = overlay._yscale = 100;
overlay._x = config['displaywidth']/2 - overlay._width/2;
overlay._y = config['displayheight'] - overlay._height - 10;
overlay.icn._x = overlay._width - 20;
}
}
/** Check for overlay **/
private function setItem(itm:Number) {
if(feeder.feed[itm]['overlayfile'] != undefined) {
loader.loadImage(feeder.feed[itm]['overlayfile']);
var lnk = feeder.feed[itm]['overlaylink'];
var tgt = config["linktarget"];
overlay.img.onPress = function() { getURL(lnk,tgt); };
state = 1;
} else {
overlay._visible = false;
state = 0;
}
};
/** load or unload overlay **/
private function setTime(elp:Number,rem:Number) {
if(elp > 2 && state == 1) {
state = 2;
overlay.img.mc.gotoAndPlay(1);
Animations.fadeIn(overlay,100);
} else if (rem < 2 && state == 2) {
Animations.fadeOut(overlay,0);
state = 3;
}
}
/** reset the overlay when the movie is finished **/
private function setState(stt:Number) {
if(stt == 3 && state == 3) {
state = 1;
}
}
/** OnResize Handler: catches stage resizing **/
public function onResize() { setDimensions(); };
/** Catches fullscreen escape **/
public function onFullScreen(fs:Boolean) {
if(fs == false) { setDimensions(); }
};
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -