📄 leftmenu.as
字号:
import flash.geom.Rectangle;
// import WorkersPhotoBuilder class
import pssclasses.photocontainers.*;
// DrawPrimitive
import pssclasses.*;
//********import************PSSContentControler class**********
import pssclasses.splitpanel.*;
//***********************leftMenu class*************************
import pssclasses.splitpanel.leftmenu.*;
class LeftMenu extends MovieClip {
//**************define attributes*************
//*******************movie Inside*********************
// ********BGArea***************
private var BGArea:MovieClip;
private var BGAreaName:String = "BGArea_mc";
private var BGAreaDepth:Number = 0;
private var BGAreaX:Number = 0;
private var BGAreaY:Number = 0;
private var BGAreaW:Number = 200;
private var BGAreaH:Number;
//BGColor
private var BGColorAlpha:Boolean = false;
//B1B1B1
private var BGColor:Number = 0x00C9C9C9;
//*************mousewheelface
private var MouseFace:MovieClip;
private var MouseFaceName:String = "MouseFace";
private var MouseFaceDepth:Number = 3;
//MouseFaceColor
private var MouseFaceAlpha:Boolean = true;
private var MouseFaceColor:Number = 0x00666666;
// ********MenuContainer***************
private var MenuContainer:MovieClip;
private var MenuContainerName:String = "MenuContainer_mc";
private var MenuContainerDepth:Number = 1;
private var MenuContainerX:Number = 0;
private var MenuContainerY:Number = 0;
//********************up down buttons*********************
//UP
private var UPScroll:MovieClip;
private var UPScrollLincageName:String = "leftMenuUP";
private var UPScrollName:String = "leftMenuUP_mc";
private var UPScrollDepth:Number = 4;
private var UPScrollX:Number = 0;
private var UPScrollY:Number = 0;
//DOWN
private var DOWNScroll:MovieClip;
private var DOWNScrollLincageName:String = "leftMenuDOWN";
private var DOWNScrollName:String = "leftMenuDOWN_mc";
private var DOWNScrollDepth:Number = 5;
private var DOWNScrollX:Number = 0;
private var DOWNScrollY:Number = 0;
//preloader
private var preloader:MovieClip;
private var preloaderLincageName:String = "preloaderLitle";
private var preloaderName:String = "preloaderLitle_mc";
private var preloaderDepth:Number = 10;
//*****************menu buttons******************
private static var partsArray:Array;
private static var albumsArray:Array;
private var partContainersArray:Array;
private static var GlobPartIndex:Number;
private static var GlobAlbumIndex:Number;
// parts button
private var PartsButArray:Array;
private var PartButton:MovieClip;
private var PartButtonLincageName:String = "partButton";
private var PartButtonName:String = "partBut_mc";
private var partContainer:MovieClip;
//***end**********menu buttons******************
// deactiv mousewheel
private var WHEELACTIV:Boolean = false;
//**************variables*******************
private var __this:MovieClip;
private var CONTENTHOLDER:MovieClip;
private var BROWSER:MovieClip;
private var ScrollPanel:MovieClip;
// attributes memory show photos data
private var SHOWING:String = "PARTS";
private var SHOWDATA:Object = new Object();
private var HoldersArray:Array;
private var newPSSContentControler:Object;
private var rebuild:Boolean = false;
private var OPENPART:Number;
private var PARTID:Number;
private var ALBUMID:Number;
private var BigPhotoHolder:MovieClip;
//
private var DynamicPart:Boolean = false;
private var DynamivPartIndex:Number;
//***************content Rectangle mask****************
private var contentMask:Rectangle;
//*****end******content Rectangle mask****************
//**************define metods***************
private function LeftMenu() {
__this = this;
__this.cacheAsBitmap = true;
CONTENTHOLDER = __this._parent;
BROWSER = this._parent._parent;
// set left menu to browser
BROWSER.setLeftMenu(__this);
//**********************set to play menu part data*******************
BROWSER.footer_mc.playMenu_mc.setLeftMenu(__this);
//*******end**********set to play menu part data*******************
//build leftMenu
buildLeftMenu();
//PSSContentControler
newPSSContentControler = new PSSContentControler();
// array with holders
HoldersArray = new Array();
}
//*****************rebuuild menu*************************
public function rebuilLeftMenu():Void {
// ********************single result***************
//get part array
partsArray = MenuXMLAssembler.partArray;
var partIndex:Number = partsArray.length-1;
//get albums array
albumsArray = MenuXMLAssembler.albumsArray;
// *****end***********single result***************
//***********set parts array to PhotoIconLink****************
BROWSER.footer_mc.PhotoLinkIcon_mc.setPartArray(partsArray);
// call build menu function
__this.buildMenu(partsArray, albumsArray);
// open parts
openSubPartMenu(partIndex);
//openPartSubMenu(partIndex, -1);
}
//**************build leftMenu*********************
private function buildLeftMenu():Void {
var THIS:MovieClip = __this;
var _BROWSER:MovieClip = BROWSER;
//*************************define SHOWING ******************
SHOWING = "PARTS";
//****end*****************define SHOWING ******************
//BG
drawBG();
//***************content Rectangle mask****************
createContentMask(BGAreaW, BGArea._height);
//***************************attach up*************************
//up
UPScroll = __this.attachMovie(UPScrollLincageName, UPScrollName, UPScrollDepth);
UPScroll._y = -1;
//resize when loaded
UPScroll.setReSize(BGAreaW);
//*******end****************attach up *************************
//create content container
MenuContainer = __this.createEmptyMovieClip(MenuContainerName, MenuContainerDepth);
MenuContainer._y = Math.floor(UPScroll._height);
MenuContainer.cacheAsBitmap = true;
//***************************attach down*************************
//bottom
DOWNScroll = __this.attachMovie(DOWNScrollLincageName, DOWNScrollName, DOWNScrollDepth);
DOWNScroll._y = BGArea._height-DOWNScroll._height+1;
//resize when loaded
DOWNScroll.setReSize(BGAreaW);
//*****end******************attach down*************************
//mouseWhellEvent
MouseWheelEvent();
// deactiv scroll up down buttons
DOWNScroll.deactivButton();
UPScroll.deactivButton();
// ***********************attach preloader for left menu*****************************
var preloader:MovieClip = __this.attachMovie(preloaderLincageName, preloaderName, preloaderDepth);
preloader._xscale = 70;
preloader._yscale = 70;
preloader._x = 10;
preloader._y = 20;
//*****************************************MEMU ASSEMBLER class (load XML )*********************************
MenuXMLAssembler.buildMenuItems();
//look if menu xml is loaded
var indexTestMenu:Number = setInterval(checkIsLoadedMenu, 10, __this);
MenuXMLAssembler.setCalBackAction(checkIsLoadedMenu, this);
var partsArray:Array = new Array();
var albumsArray:Array = new Array();
var _CONTENTHOLDER:MovieClip = CONTENTHOLDER;
function checkIsLoadedMenu(__this:MovieClip):Void {
if (!__this) {
__this = THIS;
}
var isloaded:Boolean = MenuXMLAssembler.isLoaded;
if (isloaded) {
//remove preloader
preloader.removeMovieClip();
//clear interval
clearInterval(indexTestMenu);
//get part array
partsArray = MenuXMLAssembler.partArray;
//***********set parts array to PhotoIconLink****************
_BROWSER.footer_mc.PhotoLinkIcon_mc.setPartArray(partsArray);
//get albums array
albumsArray = MenuXMLAssembler.albumsArray;
// call build menu function
__this.buildMenu(partsArray, albumsArray);
//********************SEND ARRAYS TO PSSContentControler for loading parts********
//PSSContentControler
var newPSSContentControler:Object = new PSSContentControler();
newPSSContentControler.setLeftMenu(__this);
newPSSContentControler.setScrollPane(_CONTENTHOLDER.scrollContentPane_mc);
newPSSContentControler.setPartsAndAlbumArray(partsArray, albumsArray);
//**************************LOAD FROM URL******************
if (_global.weblocation && _global.firtpars) {
_global.firtpars = false;
var anchorArray:Array = PSSLocationControler.returnAngorArray();
var anchorLength:Number = anchorArray.length;
//******************PART**************************
if (anchorLength == 1) {
THIS.SHOWING = "PARTS";
var PartData:Object;
var partInd:Number;
// search index by id
partInd = THIS.getPartIndexByID(partsArray, anchorArray[0]);
// check part data from part array
PartData = partsArray[partInd];
if (partInd != -1) {
//***********set open part data*************
THIS.PARTID = anchorArray[0];
THIS.OPENPART = partInd;
//**end******set open part data*************
// newPSSContentControler
newPSSContentControler.createPartsList(partInd);
THIS.openSubPartMenu(partInd);
_BROWSER.setLabel = PartData.name;
} else {
// if local version
newPSSContentControler.createPartsList();
}
} else if (anchorLength == 2) {
THIS.SHOWING = "ALBUM";
//******************ALBUM**************************
var PartData:Object;
var AlbumData:Object;
var partInd:Number;
var albumInd:Number;
// search index by id
partInd = THIS.getPartIndexByID(partsArray, anchorArray[0]);
albumInd = THIS.getAlbumIndexByID(albumsArray, anchorArray[1], partInd);
// check part data from part array
PartData = partsArray[partInd];
AlbumData = albumsArray[partInd][albumInd];
if (PartData != undefined && AlbumData != undefined) {
//***********set openalbum data*************
THIS.ALBUMID = anchorArray[1];
THIS.PARTID = anchorArray[0];
THIS.OPENPART = partInd;
//***end******set openalbum data*************
THIS.openSubPartMenu(partInd);
THIS.openAlbum(PartData.id, AlbumData.id, partInd, albumInd);
_BROWSER.setLabel = PartData.name+" | "+AlbumData.name;
} else {
// if local version
newPSSContentControler.createPartsList();
}
} else if (anchorLength == 3) {
//THIS.SHOWING = "PHOTO";
//******************BIG PHOTO**************************
var newWorkersPhotoBuilder:Object = new WorkersPhotoBuilder();
newWorkersPhotoBuilder.init(_BROWSER);
newWorkersPhotoBuilder.openPhotoByID(anchorArray[0], anchorArray[1], anchorArray[2]);
delete newWorkersPhotoBuilder;
//*****end*********BIG PHOTO**************************
} else {
// if local version
newPSSContentControler.createPartsList();
}
} else {
// if local version
newPSSContentControler.createPartsList();
}
//********end**************LOAD FROM URL******************
delete newPSSContentControler;
//*****end**********SEND ARRAYS TO PSSContentControler for loading parts********
}
}
//********end*****************************MEMU ASSEMBLER class (load XML )*********************************
}
//***********************search index from array by id**************
private function getPartIndexByID(arr:Array, searchID:Number):Number {
var arrCount:Number = arr.length;
for (var i = 0; i<arrCount; i++) {
var tempObject:Object = arr[i];
if (tempObject.id == searchID) {
return i;
}
}
return -1;
}
private function getAlbumIndexByID(alarr:Array, searchID:Number, partIndex:Number):Number {
var albArray:Array = alarr[partIndex];
var countsAlbums:Number = albArray.length;
for (var i = 0; i<countsAlbums; i++) {
var tempObject:Object = albArray[i];
if (tempObject.id == searchID) {
return i;
}
}
return -1;
}
//*************************draw BGArea**************************
private function drawBG():Void {
BGAreaH = CONTENTHOLDER._height;
//***************BGArea with DrawPrimitive class*************
BGArea = DrawPrimitive.drawBitmapRectangle(__this, BGAreaName, BGAreaDepth, BGAreaW, BGAreaH, BGColorAlpha, BGColor);
// **************create mouseWheel face*****************
MouseFace = DrawPrimitive.drawBitmapRectangle(__this, MouseFaceName, MouseFaceDepth, BGAreaW, BGAreaH, MouseFaceAlpha, MouseFaceColor);
}
//*****************resize by Height*************
public function resizeHeight(contentHitAreaH:Number):Void {
//BG resize
BGArea._height = contentHitAreaH;
//mousewheel
MouseFace._height = contentHitAreaH;
//**************content mask ************
contentMask.height = contentHitAreaH;
__this.scrollRect = contentMask;
//****end*******content mask ************
//place downScroll botton
DOWNScroll._y = contentHitAreaH-DOWNScroll._height+1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -