first commit

This commit is contained in:
2020-10-20 00:58:15 +02:00
commit 7f1b9bfca5
222 changed files with 56918 additions and 0 deletions

View File

@ -0,0 +1,440 @@
/*
Copyright (c) 2009 Yahoo! Inc. All rights reserved.
The copyrights embodied in the content of this file are licensed under the BSD (revised) open source license
*/
package com.yahoo.astra.fl.controls.mediaPlayerClasses
{
import com.yahoo.astra.fl.controls.mediaPlayerClasses.*;
import fl.core.UIComponent;
import flash.display.DisplayObjectContainer;
import flash.display.Sprite;
import flash.events.Event;
//--------------------------------------
// Styles
//--------------------------------------
/**
* Horizontal padding between the controls.
*
* @default 4
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="horizontalPadding", type="Number")]
/**
* Vertical padding between the media scrubber and the other controls.
*
* @default 0
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="verticalPadding", type="Number")]
/**
* padding on the bottom of the view
*
* @default 4
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="bottomPadding", type="Number")]
/**
* height of the media scrubber
*
* @default 16
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="mediaScrubberHeight", type="Number")]
/**
* width of the play pause toggle button
*
* @default 25
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="playPauseWidth", type="Number")]
/**
* height of the play pause toggle button
*
* @default 15
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="playPauseHeight", type="Number")]
/**
* width of the mute toggle button
*
* @default 15
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="muteToggleWidth", type="Number")]
/**
* height of the mute toggle button
*
* @default 15
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="muteToggleHeight", type="Number")]
/**
* width of the volume control
*
* @default 60
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="volumeControlWidth", type="Number")]
/**
* height of the volume control
*
* @default 15
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="volumeControlHeight", type="Number")]
/**
* horizontal padding for the icon in the play pause button
*
* @default 8
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="playPauseHorizontalPadding", type="Number")]
/**
* vertical padding between the edges of the play pause button and its
* icon
*
* @default 3
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="playPauseVerticalPadding", type="Number")]
/**
* horizontal padding for the icon in the mute toggle button
*
* @default 1
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="muteToggleHorizontalPadding", type="Number")]
/**
* vertical padding for the icon in the mute toggle button
*
* @default 1
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="muteToggleVerticalPadding", type="Number")]
/**
* height of the info view
*
* @default 15
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
[Style(name="infoViewHeight", type="Number")]
//--------------------------------------
// Class Description
//--------------------------------------
/**
* MediaControlsView extends UIComponent. Assembles different views for a MediaClip
*
* @see fl.core.UIComponent
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
* @author Dwight Bridges
*/
public class MediaControlsView extends UIComponent
{
//--------------------------------------
// Constructor
//--------------------------------------
/**
* Constructor
* @param container
* @param model
* @param controller
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
public function MediaControlsView(container:DisplayObjectContainer, model:IMediaClip = null, controller:MediaController = null):void
{
_mediaClip = model;
_mediaController = controller;
if(container != null) container.addChild(this);
_background = getDisplayObjectInstance(getStyleValue("background")) as Sprite;
if(_background != null)
{
addChild(_background);
_background.width = width;
_background.height = height;
}
var horizontalPadding:Number = Number(getStyleValue("horizontalPadding"));
var verticalPadding:Number = Number(getStyleValue("verticalPadding"));
var infoViewHeight:Number = Number(getStyleValue("infoViewHeight"));
var volumeControlHeight:Number = Number(getStyleValue("volumeControlHeight"));
var muteToggleButtonHeight:Number = Number(getStyleValue("muteToggleHeight"));
var playPauseButtonHeight:Number = Number(getStyleValue("playPauseHeight"));
var controlsHeight:Number = Math.max(playPauseButtonHeight, muteToggleButtonHeight, volumeControlHeight, infoViewHeight);
_mediaScrubberView = new MediaScrubberView(this, _mediaClip, _mediaController);
_mediaScrubberView.setSize(width - (horizontalPadding *2), Number(getStyleValue("mediaScrubberHeight")));
_playPauseButton = new PlayPauseToggleButton(this, _mediaClip, _mediaController);
_playPauseButton.width = Number(getStyleValue("playPauseWidth"));
_playPauseButton.height = Number(getStyleValue("playPauseHeight"));
_playPauseButton.x = horizontalPadding;
_playPauseButton.y = _playPauseButton.height < controlsHeight?_mediaScrubberView.bottom + verticalPadding + ((controlsHeight-_playPauseButton.height)/2):_mediaScrubberView.bottom + verticalPadding;
_playPauseButton.verticalPadding = Number(getStyleValue("playPauseVerticalPadding"));
_playPauseButton.horizontalPadding = Number(getStyleValue("playPauseHorizontalPadding"));
_infoView = new MediaInfoView(this, _mediaClip, _mediaController);
_muteToggleButton = new MuteToggleButton(this, _mediaClip, _mediaController);
_volumeControl = new VolumeSlider(this, _mediaClip, _mediaController);
_muteToggleButton.width = Number(getStyleValue("muteToggleWidth"));
_muteToggleButton.height = Number(getStyleValue("muteToggleHeight"));
_muteToggleButton.y = _muteToggleButton.height < controlsHeight?_mediaScrubberView.bottom + verticalPadding + ((controlsHeight-_muteToggleButton.height)/2):_mediaScrubberView.bottom + verticalPadding;
_muteToggleButton.verticalPadding = Number(getStyleValue("muteToggleVerticalPadding"));
_muteToggleButton.horizontalPadding = Number(getStyleValue("muteToggleHorizontalPadding"));
_muteToggleButton.x = _volumeControl.x - _muteToggleButton.width - horizontalPadding;
_volumeControl.setSize(Number(getStyleValue("volumeControlWidth")), Number(getStyleValue("volumeControlHeight")));
_volumeControl.x = width - (horizontalPadding + _volumeControl.width);
_volumeControl.y = _volumeControl.height < controlsHeight?_mediaScrubberView.bottom + verticalPadding + ((controlsHeight-_volumeControl.height)/2):_mediaScrubberView.bottom + verticalPadding;
_infoView.x = _playPauseButton.right + horizontalPadding;
_infoView.y = _infoView.height < controlsHeight?_mediaScrubberView.bottom + verticalPadding + ((controlsHeight-_infoView.height)/2):_mediaScrubberView.bottom + verticalPadding;
_infoView.width = _muteToggleButton.x - (_infoView.x + horizontalPadding);
_infoView.height = Number(getStyleValue("infoViewHeight"));
_background.height = height = _volumeControl.height + _mediaScrubberView.bottom + Number(getStyleValue("bottomPadding"));
}
//--------------------------------------
// Properties
//--------------------------------------
/**
* @private
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
private static var defaultStyles:Object = {
background:"background",
playPauseWidth:25,
playPauseHeight:15,
muteToggleWidth:15,
muteToggleHeight:15,
mediaScrubberHeight:16,
volumeControlHeight:15,
volumeControlWidth:60,
muteToggleVerticalPadding:1,
muteToggleHorizontalPadding:1,
playPauseVerticalPadding:3,
verticalPadding:0,
horizontalPadding:4,
bottomPadding:4,
infoViewHeight:15,
playPauseHorizontalPadding:8
}
/**
* @private (protected)
*/
protected var _mediaClip:IMediaClip;
/**
* @private (protected)
*/
protected var _mediaController:MediaController;
/**
* @private (protected)
*/
protected var _playPauseButton:PlayPauseToggleButton;
/**
* @private (protected)
*/
protected var _muteToggleButton:MuteToggleButton;
/**
* @private (protected)
*/
protected var _volumeControl:VolumeSlider;
/**
* @private (protected)
*/
protected var _mediaScrubberView:MediaScrubberView;
/**
* @private (protected)
*/
public var _infoView:MediaInfoView;
/**
* @private
*/
private var _mediaTypeMap:Object =
{
audio:AudioClip
};
/**
* @private (protected)
*/
protected var _background:Sprite;
/**
* @private (protected)
*/
override public function set width(value:Number):void
{
super.width = (value > minimumWidth)?value:minimumWidth;
invalidate();
}
/**
* @private (protected)
*/
protected var _minimumWidth:Number;
/**
* Gets the minimum width for the MediaControlsView (read-only). The minimum width of the
* MediaControlsView is determined by the sum of muteToggleWidth, playPauseWidth, volumeControlWidth
* minimumInfoViewWidth and total horizontal padding.
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
public function get minimumWidth():Number
{
_minimumWidth = Number(getStyleValue("muteToggleWidth")) + Number(getStyleValue("playPauseWidth")) + Number(getStyleValue("volumeControlWidth")) + 80 + (Number(getStyleValue("horizontalPadding"))*5);
return _minimumWidth;
}
//--------------------------------------
// Public Methods
//--------------------------------------
/**
* getStyleDefinition - returns defaultStyles
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
public static function getStyleDefinition():Object
{
return mergeStyles(defaultStyles, UIComponent.getStyleDefinition());
}
//--------------------------------------
// Protected Methods
//--------------------------------------
/**
* @private (protected)
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
override protected function draw():void
{
super.draw();
drawLayout();
}
/**
* @private (protected)
*
* Sizes and positions all elements of the MediaControlsView.
*
* @langversion 3.0
* @playerversion Flash 9.0.28.0
*/
protected function drawLayout():void
{
var horizontalPadding:Number = Number(getStyleValue("horizontalPadding"));
var verticalPadding:Number = Number(getStyleValue("verticalPadding"));
var infoViewHeight:Number = Number(getStyleValue("infoViewHeight"));
var volumeControlHeight:Number = Number(getStyleValue("volumeControlHeight"));
var muteToggleButtonHeight:Number = Number(getStyleValue("muteToggleHeight"));
var playPauseButtonHeight:Number = Number(getStyleValue("playPauseHeight"));
var controlsHeight:Number = Math.max(playPauseButtonHeight, muteToggleButtonHeight, volumeControlHeight, infoViewHeight);
_mediaScrubberView.x = horizontalPadding;
_mediaScrubberView.y = 0;
_mediaScrubberView.setSize(width - (horizontalPadding *2), Number(getStyleValue("mediaScrubberHeight")))
_playPauseButton.width = Number(getStyleValue("playPauseWidth"));
_playPauseButton.height = playPauseButtonHeight;
_playPauseButton.x = horizontalPadding;
_playPauseButton.y = _playPauseButton.height < controlsHeight?_mediaScrubberView.bottom + verticalPadding + ((controlsHeight-_playPauseButton.height)/2):_mediaScrubberView.bottom + verticalPadding;
_playPauseButton.verticalPadding = Number(getStyleValue("playPauseVerticalPadding"));
_playPauseButton.horizontalPadding = Number(getStyleValue("playPauseHorizontalPadding"));
_volumeControl.width = Number(getStyleValue("volumeControlWidth"));
_volumeControl.height = volumeControlHeight;
_volumeControl.x = width - (horizontalPadding + _volumeControl.width);
_volumeControl.y = _volumeControl.height < controlsHeight?_mediaScrubberView.bottom + verticalPadding + ((controlsHeight-_volumeControl.height)/2):_mediaScrubberView.bottom + verticalPadding;
_muteToggleButton.width = Number(getStyleValue("muteToggleWidth"));
_muteToggleButton.height = muteToggleButtonHeight;
_muteToggleButton.y = _muteToggleButton.height < controlsHeight?_mediaScrubberView.bottom + verticalPadding + ((controlsHeight-_muteToggleButton.height)/2):_mediaScrubberView.bottom + verticalPadding;
_muteToggleButton.verticalPadding = Number(getStyleValue("muteToggleVerticalPadding"));
_muteToggleButton.horizontalPadding = Number(getStyleValue("muteToggleHorizontalPadding"));
_muteToggleButton.x = _volumeControl.x - _muteToggleButton.width - horizontalPadding;
_infoView.x = _playPauseButton.right + horizontalPadding;
_infoView.width = _muteToggleButton.x - (_infoView.x + horizontalPadding);
_infoView.height = infoViewHeight;
_infoView.y = _infoView.height < controlsHeight?_mediaScrubberView.bottom + verticalPadding + ((controlsHeight-_infoView.height)/2):_mediaScrubberView.bottom + verticalPadding;
_background.height = height = verticalPadding + controlsHeight + _mediaScrubberView.bottom + Number(getStyleValue("bottomPadding"));
_background.width = width;
}
}
}