hackedteam/rcs-console

View on GitHub
src/it/ht/rcs/console/main/actionbar/RCSActionBarButtonSkin.mxml

Summary

Maintainability
Test Coverage
<?xml version="1.0" encoding="utf-8"?>

<!--

ADOBE SYSTEMS INCORPORATED
Copyright 2008 Adobe Systems Incorporated
All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file
in accordance with the terms of the license agreement accompanying it.

-->

<!--- The default skin class for the Spark Button component.  

@see spark.components.Button

@langversion 3.0
@playerversion Flash 10
@playerversion AIR 1.5
@productversion Flex 4
-->
<s:SparkButtonSkin xmlns:fx="http://ns.adobe.com/mxml/2009" 
                   xmlns:s="library://ns.adobe.com/flex/spark" 
                   xmlns:fb="http://ns.adobe.com/flashbuilder/2009"
                   minWidth="21" minHeight="21" 
                   alpha.disabled="0.5" gap="4">
  
  <fx:Metadata>
    <![CDATA[ 
    /** 
    * @copy spark.skins.spark.ApplicationSkin#hostComponent
    */
    [HostComponent("spark.components.Button")]
    ]]>
  </fx:Metadata>
  
  <fx:Script fb:purpose="styling">
    <![CDATA[         
      import spark.components.Group;
      /* Define the skin elements that should not be colorized. 
      For button, the graphics are colorized but the label is not. */
      static private const exclusions:Array = ["labelDisplay"];
      
      /** 
       * @private
       */     
      override public function get colorizeExclusions():Array {return exclusions;}
      
      /**
       * @private
       */
      override protected function initializationComplete():void
      {
        useChromeColor = true;
        super.initializationComplete();
      }  
      
      /**
       *  @private
       */
      override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number) : void
      {
        this.hostComponent.buttonMode = true;
        
        if (iconDisplay)
          iconDisplay.filters = currentState == 'over' ? [glow] : null;
        
        super.updateDisplayList(unscaledWidth, unscaledHeight);
      }
    ]]>        
  </fx:Script>
  
  <fx:Declarations>
    <s:GlowFilter id="glow" color="0xffffff" blurX="12" blurY="12" strength="3"/>
  </fx:Declarations>
  
  <!-- states -->
  <s:states>
    <s:State name="up" />
    <s:State name="over" />
    <s:State name="down" />
    <s:State name="disabled" />
  </s:states>
  
  <!-- layer 2: fill -->
  <!--- @private -->
  <s:Rect id="fill" left="0" right="0" top="0" bottom="0">
    <s:fill>
      <s:SolidColor color.over="#ffffff" alpha="0"/>
    </s:fill>
  </s:Rect>
  
  <!-- layer 8: text -->
  <!--- @copy spark.components.supportClasses.ButtonBase#labelDisplay  -->
  <s:Label id="labelDisplay"
           textAlign="center"
           maxDisplayedLines="1" fontFamily="Myriad" fontSize="12" fontWeight="normal"
           horizontalCenter="0" verticalCenter="1" verticalAlign="middle"
           left="10" right="10" top="2" bottom="2">
  </s:Label>
  
</s:SparkButtonSkin>