Index: lams_common/src/flash/org/lamsfoundation/lams/common/style/LFButtonSkin.as =================================================================== diff -u -rc40830be7545758efe68288de4e980bbdd498bff -rdba05baa0714b8a2d38e7ad36981e0922e8ff9ff --- lams_common/src/flash/org/lamsfoundation/lams/common/style/LFButtonSkin.as (.../LFButtonSkin.as) (revision c40830be7545758efe68288de4e980bbdd498bff) +++ lams_common/src/flash/org/lamsfoundation/lams/common/style/LFButtonSkin.as (.../LFButtonSkin.as) (revision dba05baa0714b8a2d38e7ad36981e0922e8ff9ff) @@ -6,57 +6,65 @@ /** * LFButtonSkin allows buttons to be customised further than setStyle allows. Essentially it overrides the skin behaviour of * the button component and draws the various button states. +* * @class LFButtonSkin * @author DI +* @usage +* Add A movieclip to FLA library with name and library linkage identifier 'ButtonSkin'. In the AS2 class field point +* to this class. Create (if needed) style and add/load into ThemeManager class. +* NOTE: the code below works by setting the value 'c' for each button state. This value is retrieved from the ThemeManager * */ -class LFButtonSkin extends RectBorder -{ - static var symbolName:String = "LFButtonSkin"; - static var symbolOwner:Object = LFButtonSkin; - private var styleObj:mx.styles.CSSStyleDeclaration; - private var themeManager:ThemeManager; +class LFButtonSkin extends RectBorder{ + + static var symbolName:String = "LFButtonSkin"; + static var symbolOwner:Object = LFButtonSkin; + private var styleObj:mx.styles.CSSStyleDeclaration; + private var themeManager:ThemeManager; - function size():Void - { + function size():Void { var c:Number; // color var borderStyle:String = getStyle("borderStyle"); themeManager = ThemeManager.getInstance(); - styleObj = themeManager.getStyleObject('Button'); - + styleObj = themeManager.getStyleObject('LFButton'); + + //Select from the possible button states switch (borderStyle) { - case "falseup": - case "falserollover": - case "falsedisabled": - c = 0x7777FF; + case "falseup": + c = styleObj.getStyle('up'); break; - case "falsedown":0 - c = getStyle('lala',styleObj); - trace('****getting color c: ' + c); + case "falserollover": + c = styleObj.getStyle('over'); break; - case "trueup": - case "truedown": - case "truerollover": - case "truedisabled": - c = 0xFF7777; + case "falsedisabled": + c = styleObj.getStyle('disabled'); break; + case "falsedown":0 + c = styleObj.getStyle('down'); + break; + case "trueup": + case "truedown": + case "truerollover": + case "truedisabled": + break; } - + clear(); + //Line thickness var thickness = _parent.emphasized ? 2 : 0; lineStyle(thickness, 0, 100); + //Fill with color and draw rectangle beginFill(c, 100); drawRect(0, 0, __width, __height); endFill(); - } - - // required for skins - static function classConstruct():Boolean - { - UIObjectExtensions.Extensions(); - _global.skinRegistry["ButtonSkin"] = true; - return true; - } - static var classConstructed:Boolean = classConstruct(); - static var UIObjectExtensionsDependency = UIObjectExtensions; + } + + // required for skins + static function classConstruct():Boolean { + UIObjectExtensions.Extensions(); + _global.skinRegistry["ButtonSkin"] = true; + return true; + } + static var classConstructed:Boolean = classConstruct(); + static var UIObjectExtensionsDependency = UIObjectExtensions; } \ No newline at end of file