1//////////////////////////////////////////////////////////////////////////////// 2// 3// ADOBE SYSTEMS INCORPORATED 4// Copyright 2004-2006 Adobe Systems Incorporated 5// All Rights Reserved. 6// 7// NOTICE: Adobe permits you to use, modify, and distribute this file 8// in accordance with the terms of the license agreement accompanying it. 9// 10//////////////////////////////////////////////////////////////////////////////// 11 12package haloclassic 13{ 14 15import mx.skins.Border; 16import mx.styles.StyleManager; 17import mx.utils.ColorUtil; 18 19/** 20 * The skin for the track in a ScrollBar. 21 */ 22public class ScrollTrackSkin extends Border 23{ 24 include "../mx/core/Version.as"; 25 26 //-------------------------------------------------------------------------- 27 // 28 // Constructor 29 // 30 //-------------------------------------------------------------------------- 31 32 /** 33 * Constructor. 34 */ 35 public function ScrollTrackSkin() 36 { 37 super(); 38 } 39 40 //-------------------------------------------------------------------------- 41 // 42 // Overridden properties 43 // 44 //-------------------------------------------------------------------------- 45 46 //---------------------------------- 47 // measuredWidth 48 //---------------------------------- 49 50 /** 51 * @private 52 */ 53 override public function get measuredWidth():Number 54 { 55 return 16; 56 } 57 58 //---------------------------------- 59 // measuredHeight 60 //---------------------------------- 61 62 /** 63 * @private 64 */ 65 override public function get measuredHeight():Number 66 { 67 return 1; 68 } 69 70 //-------------------------------------------------------------------------- 71 // 72 // Overridden methods 73 // 74 //-------------------------------------------------------------------------- 75 76 /** 77 * @private 78 */ 79 override protected function updateDisplayList(w:Number, h:Number):void 80 { 81 super.updateDisplayList(w, h); 82 83 // User-defined styles. 84 var bevel:Boolean = getStyle("bevel"); 85 var fillColors:Array = getStyle("trackColors"); 86 StyleManager.getColorNames(fillColors); 87 88 var borderColor:uint = 89 ColorUtil.adjustBrightness2(getStyle("borderColor"), 40); 90 91 var borderColorDrk2:uint = 92 ColorUtil.adjustBrightness2(borderColor, -30); 93 94 graphics.clear(); 95 96 if (bevel) 97 { 98 // border 99 drawRoundRect( 100 0, 0, w, h, 0, 101 [ borderColorDrk2, borderColor], 1, 102 horizontalGradientMatrix(0, 0, w, h)); 103 } 104 else 105 { 106 // border 107 drawRoundRect( 108 0, 0, w, h, 0, 109 borderColor, 1); 110 } 111 112 // fill 113 drawRoundRect( 114 1, 1, w - 2, h - 2, 0, 115 fillColors, 1, 116 horizontalGradientMatrix(1, 1, w / 3 * 2, h - 2)); 117 } 118} 119 120} 121