📄 scrollcontentpane.as
字号:
import flash.geom.Rectangle;
// DrawPrimitive
import pssclasses.*;
//********import************PSSContentControler class**********
import pssclasses.splitpanel.*;
//***********************ScrollContentPane class*************************
import pssclasses.splitpanel.scrollpane.*;
class ScrollContentPane extends MovieClip {
//**************define variables**************
//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 = 200;
//BGColor
private var BGColorAlpha:Boolean = false;
//B1B1B1
private var BGColor:Number = 0x00B0B0B0;
// ********MouseWheelFace***************
private var MouseWheelFace:MovieClip;
private var MouseWheelFaceName:String = "WheelFace";
private var MouseWheelFaceDepth:Number = 10;
//***************content Rectangle mask****************
private var contentMask:Rectangle;
//*****end******content Rectangle mask****************
//MouseWheelFaceColor
private var MouseWheelFaceColorAlpha:Boolean = true;
private var MouseWheelFaceColor:Number = 0x00FFB0B0;
// ********PaneContent***************
private var PaneContent:MovieClip;
private var PaneContentName:String = "PaneContent_mc";
private var PaneContentDepth:Number = 1;
private var PaneContentX:Number = 0;
private var PaneContentY:Number = 0;
// ********ScrolVertical***************
private var ScrolVertical:MovieClip;
private var ScrolVerticalLincageName:String = "scrollVert";
private var ScrolVerticalName:String = "scrollVertical_mc";
private var ScrolVerticalDepth:Number = 4;
private var ScrolVerticalX:Number = 0;
private var ScrolVerticalY:Number = 0;
// ********ScrolGorizont***************
private var ScrolGorizont:MovieClip;
private var ScrolGorizontLincageName:String = "scrollGor";
private var ScrolGorizontName:String = "scrollGorizont_mc";
private var ScrolGorizontDepth:Number = 5;
private var ScrolGorizontX:Number = 0;
private var ScrolGorizontY:Number = 0;
//***************scrolling bg corner
private var ScrollCornerBG:MovieClip;
private var ScrollCornerBGLincageName:String = "scrollCornerBG";
private var ScrollCornerBGName:String = "scrollCornerBG_mc";
private var ScrollCornerBGDepth:Number = 3;
//
private var __this:MovieClip;
private var CONTAINER:MovieClip;
//****content variables*****
private var objectCounter:Number = 0;
// scrolls
private var VERTSCROLL:Boolean = true;
private var GORIZSCROLL:Boolean = false;
// gorizont scroll height
private var GSCROLL:Number = 0;
// vertical scroll height
private var VSCROLL:Number = 0;
// photo holders
private var HoldersCount:Number = 0;
private var LeftMenu:MovieClip;
private var BROWSER:MovieClip;
//**************define metods****************
private function ScrollContentPane() {
__this = this;
LeftMenu = __this._parent.leftMenuFull_mc;
LeftMenu.setScrollPane(__this);
//**************set to browser this component*******
BROWSER = __this._parent._parent;
BROWSER.setScrollPanel(__this);
//BG
drawBG();
//vert scroll
buildVertScroll();
ScrolVertical._visible = false;
//create content container
PaneContent = __this.createEmptyMovieClip(PaneContentName, PaneContentDepth);
// set content movie to scroll
ScrolVertical.contentContainer = PaneContent;
////goriz scroll
buildGorizScroll();
ScrolGorizont.contentContainer = PaneContent;
ScrolGorizont._visible = false;
//***********************cacheAsBitmap*****************
__this.cacheAsBitmap = true;
PaneContent.cacheAsBitmap = true;
//****end***************cacheAsBitmap*****************
//***************content Rectangle mask****************
createContentMask(BGAreaW, BGAreaH);
//***end*********content Rectangle mask****************
}
//*************************draw BGArea**************************
private function drawBG():Void {
// BGAreaH = CONTENTHOLDER._height;
//***************BGArea with DrawPrimitive class*************
BGArea = DrawPrimitive.drawBitmapRectangle(__this, BGAreaName, BGAreaDepth, BGAreaW, BGAreaH, BGColorAlpha, BGColor);
BGArea.useHandCursor = false;
BGArea.onPress = function() {
};
//*****************face for mouse wheel
MouseWheelFace = DrawPrimitive.drawBitmapRectangle(__this, MouseWheelFaceName, MouseWheelFaceDepth, BGAreaW, BGAreaH, MouseWheelFaceColorAlpha, MouseWheelFaceColor);
}
public function addHolderCount() {
HoldersCount++;
}
//*****************resize by Height*************
public function resizeHeight(contentHitAreaH:Number):Void {
//BG resize
BGArea._height = contentHitAreaH;
//mouse wheel face
MouseWheelFace._height = contentHitAreaH;
//***************content Rectangle mask****************
contentMask.height = contentHitAreaH;
__this.scrollRect = contentMask;
//*****end*******content Rectangle mask****************
//vert scroll
setScrollHeight();
placeGorizScroll();
placeCornerScroll();
}
//*****************resize by Width*************
public function resizeWidth(__width:Number):Void {
__this._x = __width;
var containerW:Number = CONTAINER._width;
//BG resize
BGArea._width = containerW-__width;
//***************content Rectangle mask****************
contentMask.width = containerW-__width;
__this.scrollRect = contentMask;
//*****end*******content Rectangle mask****************
//mouse wheel face
MouseWheelFace._width = containerW-__width;
//resize when loaded
//vert scroll
setScrollHeight();
placeVertScroll();
placeCornerScroll();
//*************rebuil showing ***********
LeftMenu.rebuildPhotoHolders(containerW-__width, PaneContent._width);
}
//********************dynamic resize when browser resizing************
public function dynResizeWidth(fromPhoto:Boolean):Void {
var containerW:Number = CONTAINER._width;
var containerH:Number = CONTAINER._height;
//BG resize
BGArea._width = containerW-__this._x;
BGArea._height = containerH;
//***************content Rectangle mask****************
setContentMaskSize(containerW-__this._x, containerH);
//***end*********content Rectangle mask****************
//mouse wheel face
MouseWheelFace._width = containerW-__this._x;
MouseWheelFace._height = containerH;
// place vertScroll
placeVertScroll();
setScrollHeight();
placeGorizScroll();
placeCornerScroll();
if (!fromPhoto) {
//*************rebuil showing ***********
LeftMenu.rebuildPhotoHolders(containerW-__this._x, PaneContent._width);
}
}
//*****************set scrollpane container**************
public function setConainer(container:MovieClip):Void {
CONTAINER = container;
}
//*********************************SCROLL*******************************
private function buildVertScroll():Void {
ScrolVertical = __this.attachMovie(ScrolVerticalLincageName, ScrolVerticalName, ScrolVerticalDepth);
// place scrolling bg corner
ScrollCornerBG = __this.attachMovie(ScrollCornerBGLincageName, ScrollCornerBGName, ScrollCornerBGDepth);
ScrollCornerBG.useHandCursor = false;
ScrollCornerBG.onRollOver = function():Void {
};
}
private function placeVertScroll():Void {
ScrolVertical._x = Math.round(BGArea._width-ScrolVertical._width);
}
private function setScrollHeight():Void {
ScrolGorizont.scrollBGSetSize(BGArea._width-VSCROLL);
ScrolVertical.scrollBGSetSize(BGArea._height-GSCROLL+1);
}
//**************************gorizont scroll*************************
private function buildGorizScroll():Void {
ScrolGorizont = __this.attachMovie(ScrolGorizontLincageName, ScrolGorizontName, ScrolGorizontDepth);
}
private function placeGorizScroll():Void {
ScrolGorizont._y = Math.ceil(BGArea._height-ScrolVertical._width+.5);
}
private function placeCornerScroll():Void {
ScrollCornerBG._y = BGArea._height-ScrollCornerBG._height+1;
ScrollCornerBG._x = BGArea._width-ScrollCornerBG._width;
}
//****************************set if scroll visible************************
public function set gScrollVisible(vis:Boolean):Void {
GORIZSCROLL = vis;
if (vis) {
GSCROLL = 13;
if (VERTSCROLL) {
ScrollCornerBG._visible = true;
}
} else {
ScrollCornerBG._visible = false;
GSCROLL = 0;
}
}
public function set vScrollVisible(vis:Boolean):Void {
VERTSCROLL = vis;
if (vis) {
VSCROLL = 13;
if (GORIZSCROLL) {
ScrollCornerBG._visible = true;
}
} else {
VSCROLL = 0;
ScrollCornerBG._visible = false;
}
}
//*******end*********************SCROLL*******************************
//***************content Rectangle mask****************
private function createContentMask(_w:Number, _h:Number):Void {
contentMask = new Rectangle(0, 0, _w-1, _h);
__this.scrollRect = contentMask;
}
private function setContentMaskSize(_w:Number, _h:Number):Void {
contentMask.width = _w-1;
contentMask.height = _h;
__this.scrollRect = contentMask;
}
//****end********content Rectangle mask****************
//************************set new color***********************
public function setNewColor():Void {
ScrolGorizont.setBulbColor();
ScrolVertical.setBulbColor();
}
//******************************get scrol panel components****************
public function getScrollPaneBG():MovieClip {
return BGArea;
}
public function getContentHolder():MovieClip {
return PaneContent;
}
//*******end***class*****************
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -