package skins { import flash.display.GradientType; import flash.geom.Matrix; import mx.skins.Border; import mx.utils.ColorUtil; public class TabBar extends Border { private var colBackground: uint = 0xFFFFFF; private var colBorder: uint = 0; private var borderThickness: uint = 1; private var borderAlpha: Number = 1; private var backgroundAlpha: Number = 1; override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void { graphics.clear(); colBorder= getStyle('borderColor'); colBackground = getStyle('downFillColors')[0]; var radius: Number = 7; unscaledWidth -= 2; switch (name) { case 'selectedOverSkin': case 'selectedDownSkin': case 'selectedUpSkin': colBackground = getStyle('fillColors')[0]; case 'overSkin': case 'downSkin': default : break; } with (graphics) { beginFill(colBackground); lineStyle(1, colBorder, 1); moveTo(0, unscaledHeight); lineTo(0, radius); lineTo(radius, 0); lineTo(unscaledWidth, 0); lineTo(unscaledWidth, unscaledHeight); lineStyle(2, colBorder, 1); lineTo(0, unscaledHeight); endFill(); } } } }