package com.oxylusflash.book { import caurina.transitions.Tweener; import flash.display.Sprite; import flash.events.MouseEvent; import flash.geom.Point; public class FullViewButton extends GenericButton { private static const TIP_OFFSET_X:Number = 1; protected static const DISABLED_ALPHA:Number = 0.3; private var tooltipMc2:Tooltip2; /** * Button of the zoom view toolbar. */ public function FullViewButton() { LibTooltipClass = LibTooltip2; overState.filters = [Global.GLOW]; } /** * Update enabled alpha. */ protected function updateEnabledAlpha():void { Tweener.addTween(this, { alpha: this.buttonMode ? 1 : DISABLED_ALPHA, base: Global.baseTween, transition: this.buttonMode ? Global.baseTween.transition : "easeinquart" } ); } /** * Overrides. */ override public function get mouseEnabled():Boolean { return super.mouseEnabled; } override public function set mouseEnabled(value:Boolean):void { if (super.mouseEnabled != value) { super.mouseEnabled = value; this.buttonMode = value; updateEnabledAlpha(); } } override protected function initTooltipPos():void { tooltipMc.y = Math.round(this.height * 0.5); tooltipMc2 = Tooltip2(tooltipMc); } override protected function showTooltip(e:MouseEvent):void { tooltipMc2.tipPosition = Tooltip2.TIP_RIGHT; tooltipMc2.x = this.width + TIP_OFFSET_X; var p:Point = tooltipMc2.localToGlobal(new Point); if (p.x + tooltipMc2.width > Global.layout.width) { tooltipMc2.tipPosition = Tooltip2.TIP_LEFT; tooltipMc2.x = -tooltipMc2.width - TIP_OFFSET_X; } super.showTooltip(e); } } }