You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by bi...@apache.org on 2014/03/28 23:16:44 UTC

[1/3] git commit: [flex-sdk] [refs/heads/new_android_skins] - We do need to draw the background of ActionBarSkin

Repository: flex-sdk
Updated Branches:
  refs/heads/new_android_skins 90ad7ff23 -> 10f8840fb


We do need to draw the background of ActionBarSkin


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/a4290b87
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/a4290b87
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/a4290b87

Branch: refs/heads/new_android_skins
Commit: a4290b8793778ee42cba91cfdd9b7b97ed2816d7
Parents: 90ad7ff
Author: Om <bi...@gmail.com>
Authored: Wed Mar 19 12:25:40 2014 -0700
Committer: Om <bi...@gmail.com>
Committed: Wed Mar 19 12:25:40 2014 -0700

----------------------------------------------------------------------
 .../mobiletheme/src/spark/skins/android4/ActionBarSkin.as        | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/a4290b87/frameworks/projects/mobiletheme/src/spark/skins/android4/ActionBarSkin.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/ActionBarSkin.as b/frameworks/projects/mobiletheme/src/spark/skins/android4/ActionBarSkin.as
index 7b64f06..d8fbd8f 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/ActionBarSkin.as
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/ActionBarSkin.as
@@ -559,7 +559,7 @@ public class ActionBarSkin extends MobileSkin
     /**
      *  @private
      */
-/*    override protected function drawBackground(unscaledWidth:Number, unscaledHeight:Number):void
+    override protected function drawBackground(unscaledWidth:Number, unscaledHeight:Number):void
     {
         super.drawBackground(unscaledWidth, unscaledHeight);
 
@@ -579,7 +579,7 @@ public class ActionBarSkin extends MobileSkin
         graphics.beginGradientFill(GradientType.LINEAR, colors, backgroundAlphas, ACTIONBAR_CHROME_COLOR_RATIOS, colorMatrix);
         graphics.drawRect(0, borderSize, unscaledWidth, unscaledHeight - (borderSize * 2));
         graphics.endFill();
-    }*/
+    }
     
 }
 }


[2/3] git commit: [flex-sdk] [refs/heads/new_android_skins] - Added CheckBox skins and assets

Posted by bi...@apache.org.
Added CheckBox skins and assets


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/d1fa5de1
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/d1fa5de1
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/d1fa5de1

Branch: refs/heads/new_android_skins
Commit: d1fa5de19271166b0b5f5a66b080b0fc4471ed46
Parents: a4290b8
Author: Om <bi...@gmail.com>
Authored: Sat Mar 22 22:52:20 2014 -0700
Committer: Om <bi...@gmail.com>
Committed: Sat Mar 22 22:52:20 2014 -0700

----------------------------------------------------------------------
 .../src/spark/skins/android4/CheckBoxSkin.as    | 267 +++++++++++++++++++
 .../android4/TransparentActionButtonSkin.as     | 108 ++++++++
 .../android4/TransparentNavigationButtonSkin.as | 109 ++++++++
 .../skins/android4/assets/CheckBox_down.fxg     |  45 +---
 .../android4/assets/CheckBox_downSymbol.fxg     |  29 --
 .../assets/CheckBox_downSymbolSelected.fxg      |  30 +--
 .../android4/assets/CheckBox_downUnselected.fxg |  15 ++
 .../spark/skins/android4/assets/CheckBox_up.fxg |  49 ++--
 .../skins/android4/assets/CheckBox_upSymbol.fxg |  33 ---
 .../assets/CheckBox_upSymbolSelected.fxg        |  33 +--
 .../supportClasses/ActionBarButtonSkinBase.as   |   2 +-
 11 files changed, 541 insertions(+), 179 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as b/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as
new file mode 100644
index 0000000..416d85f
--- /dev/null
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as
@@ -0,0 +1,267 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package spark.skins.android4
+{
+import flash.display.DisplayObject;
+
+import mx.core.DPIClassification;
+
+import spark.skins.android4.assets.CheckBox_up;
+import spark.skins.mobile.supportClasses.SelectableButtonSkinBase;
+import spark.skins.mobile120.assets.CheckBox_down;
+import spark.skins.mobile120.assets.CheckBox_downSymbol;
+import spark.skins.mobile120.assets.CheckBox_downSymbolSelected;
+import spark.skins.mobile120.assets.CheckBox_up;
+import spark.skins.mobile120.assets.CheckBox_upSymbol;
+import spark.skins.mobile120.assets.CheckBox_upSymbolSelected;
+import spark.skins.mobile160.assets.CheckBox_down;
+import spark.skins.mobile160.assets.CheckBox_downSymbol;
+import spark.skins.mobile160.assets.CheckBox_downSymbolSelected;
+import spark.skins.mobile160.assets.CheckBox_up;
+import spark.skins.mobile160.assets.CheckBox_upSymbol;
+import spark.skins.mobile160.assets.CheckBox_upSymbolSelected;
+import spark.skins.mobile240.assets.CheckBox_down;
+import spark.skins.mobile240.assets.CheckBox_downSymbol;
+import spark.skins.mobile240.assets.CheckBox_downSymbolSelected;
+import spark.skins.mobile240.assets.CheckBox_up;
+import spark.skins.mobile240.assets.CheckBox_upSymbol;
+import spark.skins.mobile240.assets.CheckBox_upSymbolSelected;
+import spark.skins.mobile320.assets.CheckBox_down;
+import spark.skins.mobile320.assets.CheckBox_downSymbol;
+import spark.skins.mobile320.assets.CheckBox_downSymbolSelected;
+import spark.skins.mobile320.assets.CheckBox_up;
+import spark.skins.mobile320.assets.CheckBox_upSymbol;
+import spark.skins.mobile320.assets.CheckBox_upSymbolSelected;
+import spark.skins.mobile480.assets.CheckBox_down;
+import spark.skins.mobile480.assets.CheckBox_downSymbol;
+import spark.skins.mobile480.assets.CheckBox_downSymbolSelected;
+import spark.skins.mobile480.assets.CheckBox_up;
+import spark.skins.mobile480.assets.CheckBox_upSymbol;
+import spark.skins.mobile480.assets.CheckBox_upSymbolSelected;
+import spark.skins.mobile640.assets.CheckBox_down;
+import spark.skins.mobile640.assets.CheckBox_downSymbol;
+import spark.skins.mobile640.assets.CheckBox_downSymbolSelected;
+import spark.skins.mobile640.assets.CheckBox_up;
+import spark.skins.mobile640.assets.CheckBox_upSymbol;
+import spark.skins.mobile640.assets.CheckBox_upSymbolSelected;
+
+/**
+ *  ActionScript-based skin for CheckBox components in mobile applications. 
+ * 
+ *  @see spark.components.CheckBox
+ * 
+ *  @langversion 3.0
+ *  @playerversion Flash 10
+ *  @playerversion AIR 2.5 
+ *  @productversion Flex 4.5
+ */
+public class CheckBoxSkin extends SelectableButtonSkinBase
+{
+    //--------------------------------------------------------------------------
+    //
+    //  Class constants
+    //
+    //--------------------------------------------------------------------------
+    
+    private static const exclusions:Array = ["labelDisplay", "labelDisplayShadow"];
+    
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+    
+    /**
+     *  Constructor.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    public function CheckBoxSkin()
+    {
+        super();
+        
+        layoutPaddingLeft = 0;
+        layoutPaddingRight = 0;
+        layoutPaddingTop = 0;
+        layoutPaddingBottom = 0;
+        
+        switch (applicationDPI)
+        {
+			case DPIClassification.DPI_640:
+			{
+				upIconClass = spark.skins.mobile640.assets.CheckBox_up;
+				upSelectedIconClass = spark.skins.mobile640.assets.CheckBox_up;
+				downIconClass = spark.skins.mobile640.assets.CheckBox_down;
+				downSelectedIconClass = spark.skins.mobile640.assets.CheckBox_down;
+				upSymbolIconClass = spark.skins.mobile640.assets.CheckBox_upSymbol;
+				upSymbolIconSelectedClass = spark.skins.mobile640.assets.CheckBox_upSymbolSelected;
+				downSymbolIconClass = spark.skins.mobile640.assets.CheckBox_downSymbol;
+				downSymbolIconSelectedClass = spark.skins.mobile640.assets.CheckBox_downSymbolSelected;
+				
+				layoutGap = 40;
+				minWidth = 128;
+				minHeight = 128;
+				layoutBorderSize = 6;
+				
+				break;
+			}
+			case DPIClassification.DPI_480:
+			{
+				// Note provisional may need changes
+				upIconClass = spark.skins.mobile480.assets.CheckBox_up;
+				upSelectedIconClass = spark.skins.mobile480.assets.CheckBox_up;
+				downIconClass = spark.skins.mobile480.assets.CheckBox_down;
+				downSelectedIconClass = spark.skins.mobile480.assets.CheckBox_down;
+				upSymbolIconClass = spark.skins.mobile480.assets.CheckBox_upSymbol;
+				upSymbolIconSelectedClass = spark.skins.mobile480.assets.CheckBox_upSymbolSelected;
+				downSymbolIconClass = spark.skins.mobile480.assets.CheckBox_downSymbol;
+				downSymbolIconSelectedClass = spark.skins.mobile480.assets.CheckBox_downSymbolSelected;
+				
+				layoutGap = 30;
+				minWidth = 96;
+				minHeight = 96;
+				layoutBorderSize = 4;
+				
+				break;
+			}
+            case DPIClassification.DPI_320:
+            {
+                upIconClass = spark.skins.mobile320.assets.CheckBox_up;
+                upSelectedIconClass = spark.skins.mobile320.assets.CheckBox_up;
+                downIconClass = spark.skins.mobile320.assets.CheckBox_down;
+                downSelectedIconClass = spark.skins.mobile320.assets.CheckBox_down;
+                upSymbolIconClass = spark.skins.mobile320.assets.CheckBox_upSymbol;
+                upSymbolIconSelectedClass = spark.skins.mobile320.assets.CheckBox_upSymbolSelected;
+                downSymbolIconClass = spark.skins.mobile320.assets.CheckBox_downSymbol;
+                downSymbolIconSelectedClass = spark.skins.mobile320.assets.CheckBox_downSymbolSelected;
+                 
+                layoutGap = 20;
+                minWidth = 64;
+                minHeight = 64;
+                layoutBorderSize = 3;
+                
+                break;
+            }
+            case DPIClassification.DPI_240:
+            {
+
+				upIconClass = spark.skins.android4.assets.CheckBox_up;
+				upSelectedIconClass = spark.skins.android4.assets.CheckBox_up;
+				downIconClass = spark.skins.android4.assets.CheckBox_downUnselected;
+				downSelectedIconClass = spark.skins.android4.assets.CheckBox_down;
+				upSymbolIconClass = null;
+				upSymbolIconSelectedClass = spark.skins.android4.assets.CheckBox_upSymbolSelected;
+				downSymbolIconSelectedClass = spark.skins.android4.assets.CheckBox_downSymbolSelected;
+				downSymbolIconClass = spark.skins.android4.assets.CheckBox_downUnselected;
+				
+                layoutGap = 15;
+                minWidth = 48;
+                minHeight = 48;
+                layoutBorderSize = 2;
+                
+                break;
+            }
+			case DPIClassification.DPI_120:
+			{
+				upIconClass = spark.skins.mobile120.assets.CheckBox_up;
+				upSelectedIconClass = spark.skins.mobile120.assets.CheckBox_up;
+				downIconClass = spark.skins.mobile120.assets.CheckBox_down;
+				downSelectedIconClass = spark.skins.mobile120.assets.CheckBox_down;
+				upSymbolIconClass = spark.skins.mobile120.assets.CheckBox_upSymbol;
+				upSymbolIconSelectedClass = spark.skins.mobile120.assets.CheckBox_upSymbolSelected;
+				downSymbolIconClass = spark.skins.mobile120.assets.CheckBox_downSymbol;
+				downSymbolIconSelectedClass = spark.skins.mobile120.assets.CheckBox_downSymbolSelected;
+				
+				layoutGap = 8;
+				minWidth = 24;
+				minHeight = 24;
+				layoutBorderSize = 1;
+				
+				break;
+			}
+            default:
+            {
+                // default DPI_160
+                upIconClass = spark.skins.mobile160.assets.CheckBox_up;
+                upSelectedIconClass = spark.skins.mobile160.assets.CheckBox_up;
+                downIconClass = spark.skins.mobile160.assets.CheckBox_down;
+                downSelectedIconClass = spark.skins.mobile160.assets.CheckBox_down;
+                upSymbolIconClass = spark.skins.mobile160.assets.CheckBox_upSymbol;
+                upSymbolIconSelectedClass = spark.skins.mobile160.assets.CheckBox_upSymbolSelected;
+                downSymbolIconClass = spark.skins.mobile160.assets.CheckBox_downSymbol;
+                downSymbolIconSelectedClass = spark.skins.mobile160.assets.CheckBox_downSymbolSelected;
+                
+                layoutGap = 10;
+                minWidth = 32;
+                minHeight = 32;
+                layoutBorderSize = 2;
+                
+                break;
+            }
+        }
+    }
+    
+    //--------------------------------------------------------------------------
+    //
+    //  Overridden methods
+    //
+    //--------------------------------------------------------------------------
+    
+    /**
+     *  @private
+     *  CheckBox <code>chromeColor</code> is drawn to match the FXG rectangle
+     *  shape and position.
+     */
+    override protected function drawBackground(unscaledWidth:Number, unscaledHeight:Number):void
+    {
+        // super draws a transparent hit zone
+        super.drawBackground(unscaledWidth, unscaledHeight);
+
+        // get the size and position of iconDisplay
+        var currentIcon:DisplayObject = getIconDisplay();
+        var widthAdjustment:Number = layoutBorderSize * 2;
+        
+        graphics.beginFill(getStyle("chromeColor"));
+        graphics.drawRoundRect(currentIcon.x + layoutBorderSize,
+            currentIcon.y + layoutBorderSize,
+            currentIcon.width - widthAdjustment,
+            currentIcon.height - widthAdjustment, layoutBorderSize, layoutBorderSize);
+        graphics.endFill();
+    }
+    
+    /**
+     *  List of IDs of items that should be excluded when rendering the focus ring.
+     *  Only items of type DisplayObject or GraphicElement should be excluded. Items
+     *  of other types are ignored.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    override protected function get focusSkinExclusions():Array 
+    {
+        return exclusions;
+    }
+}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentActionButtonSkin.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentActionButtonSkin.as b/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentActionButtonSkin.as
new file mode 100644
index 0000000..dadab3c
--- /dev/null
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentActionButtonSkin.as
@@ -0,0 +1,108 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package spark.skins.android4
+{
+import flash.display.DisplayObject;
+import flash.display.Graphics;
+
+import mx.core.DPIClassification;
+import mx.core.mx_internal;
+
+import spark.skins.mobile.assets.TransparentActionButton_down;
+import spark.skins.mobile.assets.TransparentActionButton_up;
+import spark.skins.mobile.supportClasses.ActionBarButtonSkinBase;
+import spark.skins.mobile.supportClasses.MobileSkin;
+import spark.skins.mobile320.assets.TransparentActionButton_down;
+import spark.skins.mobile320.assets.TransparentActionButton_up;
+import spark.skins.mobile480.assets.TransparentActionButton_down;
+import spark.skins.mobile480.assets.TransparentActionButton_up;
+import spark.skins.mobile640.assets.TransparentActionButton_down;
+import spark.skins.mobile640.assets.TransparentActionButton_up;
+
+use namespace mx_internal;
+
+/**
+ *  The default skin class for buttons in the action area of the Spark ActionBar component 
+ *  in mobile applications.  
+ *  
+ *  @langversion 3.0
+ *  @playerversion AIR 2.5
+ *  @productversion Flex 4.5
+ */
+public class TransparentActionButtonSkin extends ActionBarButtonSkinBase
+{
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+    /**
+     *  Constructor.
+     *  
+     *  @langversion 3.0
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    public function TransparentActionButtonSkin()
+    {
+        super();
+        
+        switch (applicationDPI)
+        {
+			case DPIClassification.DPI_640:
+			{
+				upBorderSkin = spark.skins.mobile640.assets.TransparentActionButton_up;
+				downBorderSkin = spark.skins.mobile640.assets.TransparentActionButton_down;
+				
+				break;
+			}
+			case DPIClassification.DPI_480:
+			{
+				upBorderSkin = spark.skins.mobile480.assets.TransparentActionButton_up;
+				downBorderSkin = spark.skins.mobile480.assets.TransparentActionButton_down;
+				
+				break;
+			}
+            case DPIClassification.DPI_320:
+            {
+                upBorderSkin = spark.skins.mobile320.assets.TransparentActionButton_up;
+                downBorderSkin = spark.skins.mobile320.assets.TransparentActionButton_down;
+                
+                break;
+            }
+            default:
+            {
+                upBorderSkin = spark.skins.mobile.assets.TransparentActionButton_up;
+                downBorderSkin = spark.skins.mobile.assets.TransparentActionButton_down;
+                
+                break;
+            }
+        }
+    }
+    
+    override mx_internal function layoutBorder(unscaledWidth:Number, unscaledHeight:Number):void
+    {
+        // don't call super, don't layout twice
+        // leading vertical separator is outside the left bounds of the button
+        setElementSize(border, unscaledWidth + layoutBorderSize, unscaledHeight);
+        setElementPosition(border, -layoutBorderSize, 0);
+    }
+}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentNavigationButtonSkin.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentNavigationButtonSkin.as b/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentNavigationButtonSkin.as
new file mode 100644
index 0000000..a19a21c
--- /dev/null
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentNavigationButtonSkin.as
@@ -0,0 +1,109 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package spark.skins.mobile
+{
+import flash.display.DisplayObject;
+import flash.display.Graphics;
+
+import mx.core.DPIClassification;
+import mx.core.mx_internal;
+
+import spark.skins.mobile.assets.TransparentNavigationButton_down;
+import spark.skins.mobile.assets.TransparentNavigationButton_up;
+import spark.skins.mobile.supportClasses.ActionBarButtonSkinBase;
+import spark.skins.mobile.supportClasses.MobileSkin;
+import spark.skins.mobile320.assets.TransparentNavigationButton_down;
+import spark.skins.mobile320.assets.TransparentNavigationButton_up;
+import spark.skins.mobile480.assets.TransparentNavigationButton_down;
+import spark.skins.mobile480.assets.TransparentNavigationButton_up;
+import spark.skins.mobile640.assets.TransparentNavigationButton_down;
+import spark.skins.mobile640.assets.TransparentNavigationButton_up;
+
+use namespace mx_internal;
+
+/**
+ *  The default skin class for buttons in the navigation area of the Spark ActionBar component 
+ *  in mobile applications.  
+ * 
+ *  @langversion 3.0
+ *  @playerversion AIR 2.5 
+ *  @productversion Flex 4.5
+ */
+public class TransparentNavigationButtonSkin extends ActionBarButtonSkinBase
+{   
+    
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+    /**
+     *  Constructor.
+     * 
+     *  @langversion 3.0
+     *  @playerversion AIR 2.5 
+     *  @productversion Flex 4.5
+     * 
+     */
+    public function TransparentNavigationButtonSkin()
+    {
+        super();
+        
+        switch (applicationDPI)
+        {
+			case DPIClassification.DPI_640:
+			{
+				upBorderSkin = spark.skins.mobile640.assets.TransparentActionButton_up;
+				downBorderSkin = spark.skins.mobile640.assets.TransparentActionButton_down;
+				
+				break;
+			}
+			case DPIClassification.DPI_480:
+			{
+				upBorderSkin = spark.skins.mobile480.assets.TransparentActionButton_up;
+				downBorderSkin = spark.skins.mobile480.assets.TransparentActionButton_down;
+				
+				break;
+			}
+            case DPIClassification.DPI_320:
+            {
+                upBorderSkin = spark.skins.mobile320.assets.TransparentNavigationButton_up;
+                downBorderSkin = spark.skins.mobile320.assets.TransparentNavigationButton_down;
+                
+                break;
+            }
+            default:
+            {
+                upBorderSkin = spark.skins.mobile.assets.TransparentNavigationButton_up;
+                downBorderSkin = spark.skins.mobile.assets.TransparentNavigationButton_down;
+                
+                break;
+            }
+        }
+    }
+    
+    override mx_internal function layoutBorder(unscaledWidth:Number, unscaledHeight:Number):void
+    {
+        // trailing vertical separator is outside the right bounds of the button
+        setElementSize(border, unscaledWidth + layoutBorderSize, unscaledHeight);
+        setElementPosition(border, 0, 0);
+    }
+}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg
index e8a55a1..3c49ba1 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg
@@ -1,40 +1,15 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-
--->
-
-<Graphic aaa:symType="1" version="2.0" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008" xmlns:aaa="http://ns.adobe.com/ai/2009">
-  <Group aaa:symType="1">
-    <Path alpha="0.6" winding="nonZero" aaa:seqID="2112" data="M29 32 3 32C1.34277 32 0 30.6563 0 29L0 3C0 1.34277 1.34277 0 3 0L29 0C30.6563 0 32 1.34277 32 3L32 29C32 30.6563 30.6563 32 29 32Z">
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
+  <Group scaleGridLeft="8" scaleGridRight="24" scaleGridTop="24" scaleGridBottom="8">
+    <Path winding="nonZero" data="M32 31.001C32 31.5527 31.5527 32 31.001 32L0.999023 32C0.447266 32 0 31.5527 0 31.001L0 0.999023C0 0.447266 0.447266 0 0.999023 0L31.001 0C31.5527 0 32 0.447266 32 0.999023L32 31.001Z">
       <fill>
-        <RadialGradient x="16" y="16" scaleX="32" scaleY="32">
-          <GradientEntry ratio="0" color="#33B5E5"/>
-          <GradientEntry ratio="1" color="#0099CC"/>
-        </RadialGradient>
+        <SolidColor color="#DEDEDD"/>
       </fill>
     </Path>
-    <Group x="8" y="8" alpha="0.8" aaa:seqID="2113" flm:isolated="false" flm:knockout="false">
-      <Path winding="nonZero" aaa:seqID="2114" data="M16 0 16 16 0 16 0 0 16 0M15 1 1 1 1 15 15 15 15 1 15 1Z">
-        <fill>
-          <SolidColor color="#333333"/>
-        </fill>
-      </Path>
-    </Group>
-    <Path visible="false" winding="nonZero" aaa:seqID="2115" data="M0 0 32 0 32 32 0 32 0 0Z"/>
+    <Path x="8" y="8" winding="nonZero" data="M16 16 0 16 0 0 16 0 16 16ZM1 15 15 15 15 1 1 1 1 15Z">
+      <fill>
+        <SolidColor color="#676767"/>
+      </fill>
+    </Path>
+    <Path visible="false" winding="nonZero" data="M0 0 32 0 32 32 0 32 0 0Z"/>
   </Group>
 </Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbol.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbol.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbol.fxg
deleted file mode 100644
index 3882781..0000000
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbol.fxg
+++ /dev/null
@@ -1,29 +0,0 @@
-<Graphic aaa:symType="1" version="2.0" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008" xmlns:aaa="http://ns.adobe.com/ai/2009">
-<!--
-
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-
--->
-
-  <Group scaleGridLeft="3.89307" scaleGridRight="11.6792" scaleGridTop="10.0715" scaleGridBottom="3.35718" aaa:symType="1">
-    <Path winding="nonZero" aaa:seqID="2130" data="M13.3174 0 5.24805 9.19531 1.97949 6.32617 0 8.58203 5.52441 13.4287 15.5723 1.97754 13.3174 0Z">
-      <fill>
-        <SolidColor color="#3D3D3D"/>
-      </fill>
-    </Path>
-    <Path visible="false" winding="nonZero" aaa:seqID="2131" data="M0 0 16 0 16 13 0 13 0 0Z"/>
-  </Group>
-</Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg
index 03fdd86..da3e719 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg
@@ -1,30 +1,10 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-
--->
-
-<Graphic aaa:symType="1" version="2.0" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008" xmlns:aaa="http://ns.adobe.com/ai/2009">
-  <Group scaleGridLeft="3.89307" scaleGridRight="11.6792" scaleGridTop="10.0715" scaleGridBottom="3.35718" aaa:symType="1">
-    <Path winding="nonZero" aaa:seqID="2130" data="M13.3174 0 5.24805 9.19531 1.97949 6.32617 0 8.58203 5.52441 13.4287 15.5723 1.97754 13.3174 0Z">
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
+  <Group scaleGridLeft="4.09595" scaleGridRight="12.2878" scaleGridTop="9.99243" scaleGridBottom="3.33081">
+    <Path winding="nonZero" data="M14.165 0 16.3838 2.21924 5.24023 13.3232 0 8.52441 2.18164 6.11719 5.37305 9.06348 14.165 0Z">
       <fill>
-        <SolidColor color="#3D3D3D"/>
+        <SolidColor color="#676767"/>
       </fill>
     </Path>
-    <Path visible="false" winding="nonZero" aaa:seqID="2131" data="M0 0 16 0 16 13 0 13 0 0Z"/>
+    <Path visible="false" winding="nonZero" data="M0 0 17 0 17 13 0 13 0 0Z"/>
   </Group>
 </Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downUnselected.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downUnselected.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downUnselected.fxg
new file mode 100644
index 0000000..127a4b3
--- /dev/null
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downUnselected.fxg
@@ -0,0 +1,15 @@
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
+  <Group scaleGridLeft="8" scaleGridRight="24" scaleGridTop="24" scaleGridBottom="8">
+    <Path winding="nonZero" data="M32 31.001C32 31.5527 31.5527 32 31.001 32L0.999023 32C0.447266 32 0 31.5527 0 31.001L0 0.999023C0 0.447266 0.447266 0 0.999023 0L31.001 0C31.5527 0 32 0.447266 32 0.999023L32 31.001Z">
+      <fill>
+        <SolidColor color="#DEDEDD"/>
+      </fill>
+    </Path>
+    <Path x="8" y="8" winding="nonZero" data="M15 7 15 15 1 15 1 1 14 1 14 0 0 0 0 16 16 16 16 7 15 7Z">
+      <fill>
+        <SolidColor color="#676767"/>
+      </fill>
+    </Path>
+    <Path visible="false" winding="nonZero" data="M0 0 32 0 32 32 0 32 0 0Z"/>
+  </Group>
+</Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg
index 52d7b1d..03843e7 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg
@@ -1,30 +1,23 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-
--->
-
-<Graphic aaa:symType="1" version="2.0" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008" xmlns:aaa="http://ns.adobe.com/ai/2009">
-  <Group scaleGridLeft="4" scaleGridRight="12" scaleGridTop="11.999" scaleGridBottom="4" aaa:symType="1">
-    <Path alpha="0.8" winding="nonZero" aaa:seqID="2099" data="M16 0 16 16 0 16 0 0 16 0M15 1 1 1 1 15 15 15 15 1 15 1Z">
-      <fill>
-        <SolidColor color="#333333"/>
-      </fill>
-    </Path>
-    <Path visible="false" winding="nonZero" aaa:seqID="2100" data="M0 0 16 0 16 16 0 16 0 0Z"/>
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
+  <Group>
+    <Group alpha="0.5">
+      <Group>
+        <mask>
+          <Group>
+            <Path winding="nonZero" data="M16 16 0 16 0 0 16 0 16 16Z">
+              <fill>
+                <SolidColor color="#FFFFFF"/>
+              </fill>
+            </Path>
+          </Group>
+        </mask>
+        <Path winding="nonZero" data="M16 16 0 16 0 0 16 0 16 16ZM1 15 15 15 15 1 1 1 1 15Z">
+          <fill>
+            <SolidColor color="#676767"/>
+          </fill>
+        </Path>
+      </Group>
+    </Group>
+    <Path visible="false" winding="nonZero" data="M0 0 16 0 16 16 0 16 0 0Z"/>
   </Group>
 </Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbol.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbol.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbol.fxg
deleted file mode 100644
index b6c84fe..0000000
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbol.fxg
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-
--->
-
-<Graphic aaa:symType="1" version="2.0" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008" xmlns:aaa="http://ns.adobe.com/ai/2009">
-  <Group scaleGridLeft="3.89258" scaleGridRight="11.6787" scaleGridTop="10.0713" scaleGridBottom="3.35742" aaa:symType="1">
-    <Path winding="nonZero" aaa:seqID="2120" data="M13.3164 0 5.24805 9.19531 1.97852 6.32617 0 8.58203 5.52441 13.4287 15.5713 1.97754 13.3164 0Z">
-      <fill>
-        <LinearGradient x="10.6846" y="8.17871" scaleX="6.83528" rotation="224.999">
-          <GradientEntry ratio="0" color="#0099CC"/>
-          <GradientEntry ratio="1" color="#33B5E5"/>
-        </LinearGradient>
-      </fill>
-    </Path>
-    <Path visible="false" winding="nonZero" aaa:seqID="2121" data="M0 0 16 0 16 13 0 13 0 0Z"/>
-  </Group>
-</Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg
index 0f613f0..8c8efd7 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg
@@ -1,33 +1,10 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-
--->
-
-<Graphic aaa:symType="1" version="2.0" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008" xmlns:aaa="http://ns.adobe.com/ai/2009">
-  <Group scaleGridLeft="3.89307" scaleGridRight="11.6792" scaleGridTop="10.0713" scaleGridBottom="3.35742" aaa:symType="1">
-    <Path winding="nonZero" aaa:seqID="2136" data="M13.3174 0 5.24805 9.19531 1.97852 6.32617 0 8.58203 5.52441 13.4287 15.5723 1.97754 13.3174 0Z">
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
+  <Group scaleGridLeft="4.0957" scaleGridRight="12.2881" scaleGridTop="9.99219" scaleGridBottom="3.33105">
+    <Path winding="nonZero" data="M14.165 0 16.3838 2.21924 5.24023 13.3232 0 8.52441 2.18164 6.11719 5.37305 9.06348 14.165 0Z">
       <fill>
-        <LinearGradient x="10.6846" y="8.17871" scaleX="6.83528" rotation="224.999">
-          <GradientEntry ratio="0" color="#0099CC"/>
-          <GradientEntry ratio="1" color="#33B5E5"/>
-        </LinearGradient>
+        <SolidColor color="#33B5E5"/>
       </fill>
     </Path>
-    <Path visible="false" winding="nonZero" aaa:seqID="2137" data="M0 0 16 0 16 13 0 13 0 0Z"/>
+    <Path visible="false" winding="nonZero" data="M0 0 17 0 17 13 0 13 0 0Z"/>
   </Group>
 </Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as b/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as
index e9dfc51..fef56ae 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as
+++ b/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as
@@ -84,7 +84,7 @@ public class ActionBarButtonSkinBase extends ButtonSkin
 				layoutPaddingBottom = 20;
 				layoutPaddingLeft = 40;
 				layoutPaddingRight = 40;
-				measuredDefaultWidth = 2012;
+				measuredDefaultWidth = 212;
 				measuredDefaultHeight = 172;
 				break;
 			}


[3/3] git commit: [flex-sdk] [refs/heads/new_android_skins] - Android 4.x skins for Checkbox. Modified existing skinclass to eliminate need for creating FXG assets for every supported DPI.

Posted by bi...@apache.org.
Android 4.x skins for Checkbox.
Modified existing skinclass to eliminate need for creating FXG assets for every supported DPI.


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/10f8840f
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/10f8840f
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/10f8840f

Branch: refs/heads/new_android_skins
Commit: 10f8840fbeac08002e73ab44bfc210bf3534cd99
Parents: d1fa5de
Author: Om <bi...@gmail.com>
Authored: Fri Mar 28 14:56:11 2014 -0700
Committer: Om <bi...@gmail.com>
Committed: Fri Mar 28 14:56:11 2014 -0700

----------------------------------------------------------------------
 .../src/spark/skins/android4/CheckBoxSkin.as    | 475 ++++++++++---------
 .../skins/android4/assets/CheckBox_down.fxg     |  21 +-
 .../android4/assets/CheckBox_downSelected.fxg   |  35 ++
 .../assets/CheckBox_downSymbolSelected.fxg      |  21 +-
 .../android4/assets/CheckBox_downUnselected.fxg |  15 -
 .../spark/skins/android4/assets/CheckBox_up.fxg |  36 +-
 .../android4/assets/CheckBox_upSelected.fxg     |  29 ++
 .../assets/CheckBox_upSymbolSelected.fxg        |  35 +-
 8 files changed, 393 insertions(+), 274 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/10f8840f/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as b/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as
index 416d85f..f091205 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as
@@ -19,249 +19,250 @@
 
 package spark.skins.android4
 {
-import flash.display.DisplayObject;
+	import flash.display.DisplayObject;
+	
+	import mx.core.DPIClassification;
+	
+	import spark.skins.android4.assets.CheckBox_up;
+	import spark.skins.mobile.supportClasses.SelectableButtonSkinBase;
+	
+	/**
+	 *  ActionScript-based skin for CheckBox components in mobile applications. 
+	 * 
+	 *  @see spark.components.CheckBox
+	 * 
+	 *  @langversion 3.0
+	 *  @playerversion Flash 10
+	 *  @playerversion AIR 2.5 
+	 *  @productversion Flex 4.5
+	 */
+	public class CheckBoxSkin extends SelectableButtonSkinBase
+	{
+		//--------------------------------------------------------------------------
+		//
+		//  Class constants
+		//
+		//--------------------------------------------------------------------------
+		
+		private static const exclusions:Array = ["labelDisplay", "labelDisplayShadow"];
 
-import mx.core.DPIClassification;
+		//--------------------------------------------------------------------------
+		//
+		//  Member variables
+		//
+		//--------------------------------------------------------------------------
 
-import spark.skins.android4.assets.CheckBox_up;
-import spark.skins.mobile.supportClasses.SelectableButtonSkinBase;
-import spark.skins.mobile120.assets.CheckBox_down;
-import spark.skins.mobile120.assets.CheckBox_downSymbol;
-import spark.skins.mobile120.assets.CheckBox_downSymbolSelected;
-import spark.skins.mobile120.assets.CheckBox_up;
-import spark.skins.mobile120.assets.CheckBox_upSymbol;
-import spark.skins.mobile120.assets.CheckBox_upSymbolSelected;
-import spark.skins.mobile160.assets.CheckBox_down;
-import spark.skins.mobile160.assets.CheckBox_downSymbol;
-import spark.skins.mobile160.assets.CheckBox_downSymbolSelected;
-import spark.skins.mobile160.assets.CheckBox_up;
-import spark.skins.mobile160.assets.CheckBox_upSymbol;
-import spark.skins.mobile160.assets.CheckBox_upSymbolSelected;
-import spark.skins.mobile240.assets.CheckBox_down;
-import spark.skins.mobile240.assets.CheckBox_downSymbol;
-import spark.skins.mobile240.assets.CheckBox_downSymbolSelected;
-import spark.skins.mobile240.assets.CheckBox_up;
-import spark.skins.mobile240.assets.CheckBox_upSymbol;
-import spark.skins.mobile240.assets.CheckBox_upSymbolSelected;
-import spark.skins.mobile320.assets.CheckBox_down;
-import spark.skins.mobile320.assets.CheckBox_downSymbol;
-import spark.skins.mobile320.assets.CheckBox_downSymbolSelected;
-import spark.skins.mobile320.assets.CheckBox_up;
-import spark.skins.mobile320.assets.CheckBox_upSymbol;
-import spark.skins.mobile320.assets.CheckBox_upSymbolSelected;
-import spark.skins.mobile480.assets.CheckBox_down;
-import spark.skins.mobile480.assets.CheckBox_downSymbol;
-import spark.skins.mobile480.assets.CheckBox_downSymbolSelected;
-import spark.skins.mobile480.assets.CheckBox_up;
-import spark.skins.mobile480.assets.CheckBox_upSymbol;
-import spark.skins.mobile480.assets.CheckBox_upSymbolSelected;
-import spark.skins.mobile640.assets.CheckBox_down;
-import spark.skins.mobile640.assets.CheckBox_downSymbol;
-import spark.skins.mobile640.assets.CheckBox_downSymbolSelected;
-import spark.skins.mobile640.assets.CheckBox_up;
-import spark.skins.mobile640.assets.CheckBox_upSymbol;
-import spark.skins.mobile640.assets.CheckBox_upSymbolSelected;
-
-/**
- *  ActionScript-based skin for CheckBox components in mobile applications. 
- * 
- *  @see spark.components.CheckBox
- * 
- *  @langversion 3.0
- *  @playerversion Flash 10
- *  @playerversion AIR 2.5 
- *  @productversion Flex 4.5
- */
-public class CheckBoxSkin extends SelectableButtonSkinBase
-{
-    //--------------------------------------------------------------------------
-    //
-    //  Class constants
-    //
-    //--------------------------------------------------------------------------
-    
-    private static const exclusions:Array = ["labelDisplay", "labelDisplayShadow"];
-    
-    //--------------------------------------------------------------------------
-    //
-    //  Constructor
-    //
-    //--------------------------------------------------------------------------
-    
-    /**
-     *  Constructor.
-     *  
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 2.5
-     *  @productversion Flex 4.5
-     */
-    public function CheckBoxSkin()
-    {
-        super();
-        
-        layoutPaddingLeft = 0;
-        layoutPaddingRight = 0;
-        layoutPaddingTop = 0;
-        layoutPaddingBottom = 0;
-        
-        switch (applicationDPI)
-        {
-			case DPIClassification.DPI_640:
+		protected var symbolOffsetX:Number;
+		protected var symbolOffsetY:Number;
+		protected var iconWidth:Number;
+		protected var iconHeight:Number;
+		protected var symbolWidth:Number;
+		protected var symbolHeight:Number;
+		
+		//--------------------------------------------------------------------------
+		//
+		//  Constructor
+		//
+		//--------------------------------------------------------------------------
+		
+		/**
+		 *  Constructor.
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10
+		 *  @playerversion AIR 2.5
+		 *  @productversion Flex 4.5
+		 */
+		public function CheckBoxSkin()
+		{
+			super();
+			
+			layoutPaddingLeft = 0;
+			layoutPaddingRight = 0;
+			layoutPaddingTop = 0;
+			layoutPaddingBottom = 0;
+			
+			upIconClass = spark.skins.android4.assets.CheckBox_up;
+			upSelectedIconClass = spark.skins.android4.assets.CheckBox_upSelected;
+			downIconClass = spark.skins.android4.assets.CheckBox_down;
+			downSelectedIconClass = spark.skins.android4.assets.CheckBox_downSelected;
+			upSymbolIconClass = null;
+			upSymbolIconSelectedClass = spark.skins.android4.assets.CheckBox_upSymbolSelected;
+			downSymbolIconSelectedClass = spark.skins.android4.assets.CheckBox_downSymbolSelected;
+			downSymbolIconClass = null;
+					
+			switch (applicationDPI)
 			{
-				upIconClass = spark.skins.mobile640.assets.CheckBox_up;
-				upSelectedIconClass = spark.skins.mobile640.assets.CheckBox_up;
-				downIconClass = spark.skins.mobile640.assets.CheckBox_down;
-				downSelectedIconClass = spark.skins.mobile640.assets.CheckBox_down;
-				upSymbolIconClass = spark.skins.mobile640.assets.CheckBox_upSymbol;
-				upSymbolIconSelectedClass = spark.skins.mobile640.assets.CheckBox_upSymbolSelected;
-				downSymbolIconClass = spark.skins.mobile640.assets.CheckBox_downSymbol;
-				downSymbolIconSelectedClass = spark.skins.mobile640.assets.CheckBox_downSymbolSelected;
-				
-				layoutGap = 40;
-				minWidth = 128;
-				minHeight = 128;
-				layoutBorderSize = 6;
-				
-				break;
+				case DPIClassification.DPI_640:
+				{
+					
+					layoutGap = 16;
+					minWidth = 128;
+					minHeight = 128;
+					layoutBorderSize = 6;
+					iconWidth = 128;
+					iconHeight = 128;
+					symbolWidth = 64;
+					symbolHeight = 64;
+					symbolOffsetX = 32;
+					symbolOffsetY = 32;
+					
+					break;
+				}
+				case DPIClassification.DPI_480:
+				{
+					
+					layoutGap = 12;
+					minWidth = 96;
+					minHeight = 96;
+					layoutBorderSize = 4;
+					iconWidth = 96;
+					iconHeight = 96;
+					symbolWidth = 48;
+					symbolHeight = 48;
+					symbolOffsetX = 24;
+					symbolOffsetY = 24;
+					
+					break;
+				}
+				case DPIClassification.DPI_320:
+				{
+					
+					layoutGap = 8;
+					minWidth = 64;
+					minHeight = 64;
+					layoutBorderSize = 3;
+					iconWidth = 64;
+					iconHeight = 64;
+					symbolWidth = 32;
+					symbolHeight = 32;
+					symbolOffsetX = 16;
+					symbolOffsetY = 16;
+					
+					break;
+				}
+				case DPIClassification.DPI_240:
+				{
+					
+					layoutGap = 6;
+					minWidth = 48;
+					minHeight = 48;
+					layoutBorderSize = 2;
+					iconWidth = 48;
+					iconHeight = 48;
+					symbolWidth = 24;
+					symbolHeight = 24;
+					symbolOffsetX = 12;
+					symbolOffsetY = 12;
+					
+					break;
+				}
+				case DPIClassification.DPI_120:
+				{
+					
+					layoutGap = 3;
+					minWidth = 24;
+					minHeight = 24;
+					layoutBorderSize = 1;
+					iconWidth = 24;
+					iconHeight = 24;
+					symbolWidth = 12;
+					symbolHeight = 12;
+					symbolOffsetX = 6;
+					symbolOffsetY = 6;
+					
+					break;
+				}
+				default:
+				{
+					// default DPI_160
+					
+					layoutGap = 4;
+					minWidth = 32;
+					minHeight = 32;
+					layoutBorderSize = 2;
+					iconWidth = 32;
+					iconHeight = 32;
+					symbolWidth = 16;
+					symbolHeight = 16;
+					symbolOffsetX = 8;
+					symbolOffsetY = 8;
+					
+					
+					break;
+				}
 			}
-			case DPIClassification.DPI_480:
+		}
+		
+		//--------------------------------------------------------------------------
+		//
+		//  Overridden methods
+		//
+		//--------------------------------------------------------------------------
+		
+		/**
+		 *  @private
+		 *  CheckBox <code>chromeColor</code> is drawn to match the FXG rectangle
+		 *  shape and position.
+		 */
+		override protected function drawBackground(unscaledWidth:Number, unscaledHeight:Number):void
+		{
+			// super draws a transparent hit zone
+			super.drawBackground(unscaledWidth, unscaledHeight);
+			
+			// get the size and position of iconDisplay
+			var currentIcon:DisplayObject = getIconDisplay();
+			var widthAdjustment:Number = layoutBorderSize * 2;
+			
+			graphics.beginFill(getStyle("chromeColor"));
+			graphics.drawRoundRect(currentIcon.x + layoutBorderSize,
+				currentIcon.y + layoutBorderSize,
+				currentIcon.width - widthAdjustment,
+				currentIcon.height - widthAdjustment, layoutBorderSize, layoutBorderSize);
+			graphics.endFill();
+		}
+		
+		/**
+		 *  List of IDs of items that should be excluded when rendering the focus ring.
+		 *  Only items of type DisplayObject or GraphicElement should be excluded. Items
+		 *  of other types are ignored.
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10
+		 *  @playerversion AIR 2.5
+		 *  @productversion Flex 4.5
+		 */
+		override protected function get focusSkinExclusions():Array 
+		{
+			return exclusions;
+		}
+		
+		override protected function commitCurrentState():void
+		{
+			super.commitCurrentState();
+			if(symbolIcon != null)
 			{
-				// Note provisional may need changes
-				upIconClass = spark.skins.mobile480.assets.CheckBox_up;
-				upSelectedIconClass = spark.skins.mobile480.assets.CheckBox_up;
-				downIconClass = spark.skins.mobile480.assets.CheckBox_down;
-				downSelectedIconClass = spark.skins.mobile480.assets.CheckBox_down;
-				upSymbolIconClass = spark.skins.mobile480.assets.CheckBox_upSymbol;
-				upSymbolIconSelectedClass = spark.skins.mobile480.assets.CheckBox_upSymbolSelected;
-				downSymbolIconClass = spark.skins.mobile480.assets.CheckBox_downSymbol;
-				downSymbolIconSelectedClass = spark.skins.mobile480.assets.CheckBox_downSymbolSelected;
-				
-				layoutGap = 30;
-				minWidth = 96;
-				minHeight = 96;
-				layoutBorderSize = 4;
-				
-				break;
+				symbolIcon.width = symbolWidth;
+				symbolIcon.height = symbolHeight;
 			}
-            case DPIClassification.DPI_320:
-            {
-                upIconClass = spark.skins.mobile320.assets.CheckBox_up;
-                upSelectedIconClass = spark.skins.mobile320.assets.CheckBox_up;
-                downIconClass = spark.skins.mobile320.assets.CheckBox_down;
-                downSelectedIconClass = spark.skins.mobile320.assets.CheckBox_down;
-                upSymbolIconClass = spark.skins.mobile320.assets.CheckBox_upSymbol;
-                upSymbolIconSelectedClass = spark.skins.mobile320.assets.CheckBox_upSymbolSelected;
-                downSymbolIconClass = spark.skins.mobile320.assets.CheckBox_downSymbol;
-                downSymbolIconSelectedClass = spark.skins.mobile320.assets.CheckBox_downSymbolSelected;
-                 
-                layoutGap = 20;
-                minWidth = 64;
-                minHeight = 64;
-                layoutBorderSize = 3;
-                
-                break;
-            }
-            case DPIClassification.DPI_240:
-            {
-
-				upIconClass = spark.skins.android4.assets.CheckBox_up;
-				upSelectedIconClass = spark.skins.android4.assets.CheckBox_up;
-				downIconClass = spark.skins.android4.assets.CheckBox_downUnselected;
-				downSelectedIconClass = spark.skins.android4.assets.CheckBox_down;
-				upSymbolIconClass = null;
-				upSymbolIconSelectedClass = spark.skins.android4.assets.CheckBox_upSymbolSelected;
-				downSymbolIconSelectedClass = spark.skins.android4.assets.CheckBox_downSymbolSelected;
-				downSymbolIconClass = spark.skins.android4.assets.CheckBox_downUnselected;
-				
-                layoutGap = 15;
-                minWidth = 48;
-                minHeight = 48;
-                layoutBorderSize = 2;
-                
-                break;
-            }
-			case DPIClassification.DPI_120:
+			var iconDisplay:DisplayObject = getIconDisplay(); 
+			if(iconDisplay != null)
 			{
-				upIconClass = spark.skins.mobile120.assets.CheckBox_up;
-				upSelectedIconClass = spark.skins.mobile120.assets.CheckBox_up;
-				downIconClass = spark.skins.mobile120.assets.CheckBox_down;
-				downSelectedIconClass = spark.skins.mobile120.assets.CheckBox_down;
-				upSymbolIconClass = spark.skins.mobile120.assets.CheckBox_upSymbol;
-				upSymbolIconSelectedClass = spark.skins.mobile120.assets.CheckBox_upSymbolSelected;
-				downSymbolIconClass = spark.skins.mobile120.assets.CheckBox_downSymbol;
-				downSymbolIconSelectedClass = spark.skins.mobile120.assets.CheckBox_downSymbolSelected;
-				
-				layoutGap = 8;
-				minWidth = 24;
-				minHeight = 24;
-				layoutBorderSize = 1;
-				
-				break;
+				iconDisplay.width = iconWidth;
+				iconDisplay.height = iconHeight;
 			}
-            default:
-            {
-                // default DPI_160
-                upIconClass = spark.skins.mobile160.assets.CheckBox_up;
-                upSelectedIconClass = spark.skins.mobile160.assets.CheckBox_up;
-                downIconClass = spark.skins.mobile160.assets.CheckBox_down;
-                downSelectedIconClass = spark.skins.mobile160.assets.CheckBox_down;
-                upSymbolIconClass = spark.skins.mobile160.assets.CheckBox_upSymbol;
-                upSymbolIconSelectedClass = spark.skins.mobile160.assets.CheckBox_upSymbolSelected;
-                downSymbolIconClass = spark.skins.mobile160.assets.CheckBox_downSymbol;
-                downSymbolIconSelectedClass = spark.skins.mobile160.assets.CheckBox_downSymbolSelected;
-                
-                layoutGap = 10;
-                minWidth = 32;
-                minHeight = 32;
-                layoutBorderSize = 2;
-                
-                break;
-            }
-        }
-    }
-    
-    //--------------------------------------------------------------------------
-    //
-    //  Overridden methods
-    //
-    //--------------------------------------------------------------------------
-    
-    /**
-     *  @private
-     *  CheckBox <code>chromeColor</code> is drawn to match the FXG rectangle
-     *  shape and position.
-     */
-    override protected function drawBackground(unscaledWidth:Number, unscaledHeight:Number):void
-    {
-        // super draws a transparent hit zone
-        super.drawBackground(unscaledWidth, unscaledHeight);
-
-        // get the size and position of iconDisplay
-        var currentIcon:DisplayObject = getIconDisplay();
-        var widthAdjustment:Number = layoutBorderSize * 2;
-        
-        graphics.beginFill(getStyle("chromeColor"));
-        graphics.drawRoundRect(currentIcon.x + layoutBorderSize,
-            currentIcon.y + layoutBorderSize,
-            currentIcon.width - widthAdjustment,
-            currentIcon.height - widthAdjustment, layoutBorderSize, layoutBorderSize);
-        graphics.endFill();
-    }
-    
-    /**
-     *  List of IDs of items that should be excluded when rendering the focus ring.
-     *  Only items of type DisplayObject or GraphicElement should be excluded. Items
-     *  of other types are ignored.
-     *  
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 2.5
-     *  @productversion Flex 4.5
-     */
-    override protected function get focusSkinExclusions():Array 
-    {
-        return exclusions;
-    }
-}
+		}
+		
+		override protected function layoutContents(unscaledWidth:Number, unscaledHeight:Number):void
+		{
+			super.layoutContents(unscaledWidth, unscaledHeight);
+			// position the symbols to align with the background "icon"
+			if (symbolIcon)
+			{
+				var currentIcon:DisplayObject = getIconDisplay();
+				setElementPosition(symbolIcon, symbolOffsetX, symbolOffsetY);
+			}
+		}
+		
+	}
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/10f8840f/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg
index 3c49ba1..426df3d 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg
@@ -1,3 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
 <Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
   <Group scaleGridLeft="8" scaleGridRight="24" scaleGridTop="24" scaleGridBottom="8">
     <Path winding="nonZero" data="M32 31.001C32 31.5527 31.5527 32 31.001 32L0.999023 32C0.447266 32 0 31.5527 0 31.001L0 0.999023C0 0.447266 0.447266 0 0.999023 0L31.001 0C31.5527 0 32 0.447266 32 0.999023L32 31.001Z">
@@ -10,6 +30,5 @@
         <SolidColor color="#676767"/>
       </fill>
     </Path>
-    <Path visible="false" winding="nonZero" data="M0 0 32 0 32 32 0 32 0 0Z"/>
   </Group>
 </Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/10f8840f/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSelected.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSelected.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSelected.fxg
new file mode 100644
index 0000000..ea7c3c4
--- /dev/null
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSelected.fxg
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
+  <Group scaleGridLeft="8" scaleGridRight="24" scaleGridTop="24" scaleGridBottom="8">
+    <Path winding="nonZero" data="M32 31.001C32 31.5527 31.5527 32 31.001 32L0.999023 32C0.447266 32 0 31.5527 0 31.001L0 0.999023C0 0.447266 0.447266 0 0.999023 0L31.001 0C31.5527 0 32 0.447266 32 0.999023L32 31.001Z">
+      <fill>
+        <SolidColor color="#DEDEDD"/>
+      </fill>
+    </Path>
+    <Path x="8" y="8" winding="nonZero" data="M15 7 15 15 1 15 1 1 14 1 14 0 0 0 0 16 16 16 16 7 15 7Z">
+      <fill>
+        <SolidColor color="#676767"/>
+      </fill>
+    </Path>
+    <Path visible="false" winding="nonZero" data="M0 0 32 0 32 32 0 32 0 0Z"/>
+  </Group>
+</Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/10f8840f/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg
index da3e719..f59d001 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg
@@ -1,3 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
 <Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
   <Group scaleGridLeft="4.09595" scaleGridRight="12.2878" scaleGridTop="9.99243" scaleGridBottom="3.33081">
     <Path winding="nonZero" data="M14.165 0 16.3838 2.21924 5.24023 13.3232 0 8.52441 2.18164 6.11719 5.37305 9.06348 14.165 0Z">
@@ -5,6 +25,5 @@
         <SolidColor color="#676767"/>
       </fill>
     </Path>
-    <Path visible="false" winding="nonZero" data="M0 0 17 0 17 13 0 13 0 0Z"/>
   </Group>
 </Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/10f8840f/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downUnselected.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downUnselected.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downUnselected.fxg
deleted file mode 100644
index 127a4b3..0000000
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downUnselected.fxg
+++ /dev/null
@@ -1,15 +0,0 @@
-<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
-  <Group scaleGridLeft="8" scaleGridRight="24" scaleGridTop="24" scaleGridBottom="8">
-    <Path winding="nonZero" data="M32 31.001C32 31.5527 31.5527 32 31.001 32L0.999023 32C0.447266 32 0 31.5527 0 31.001L0 0.999023C0 0.447266 0.447266 0 0.999023 0L31.001 0C31.5527 0 32 0.447266 32 0.999023L32 31.001Z">
-      <fill>
-        <SolidColor color="#DEDEDD"/>
-      </fill>
-    </Path>
-    <Path x="8" y="8" winding="nonZero" data="M15 7 15 15 1 15 1 1 14 1 14 0 0 0 0 16 16 16 16 7 15 7Z">
-      <fill>
-        <SolidColor color="#676767"/>
-      </fill>
-    </Path>
-    <Path visible="false" winding="nonZero" data="M0 0 32 0 32 32 0 32 0 0Z"/>
-  </Group>
-</Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/10f8840f/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg
index 03843e7..9d65260 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg
@@ -1,16 +1,26 @@
-<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
-  <Group>
-    <Group alpha="0.5">
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008" viewHeight="32" viewWidth="32">
+    <Group alpha="0.5" x="8" y="8">
       <Group>
-        <mask>
-          <Group>
-            <Path winding="nonZero" data="M16 16 0 16 0 0 16 0 16 16Z">
-              <fill>
-                <SolidColor color="#FFFFFF"/>
-              </fill>
-            </Path>
-          </Group>
-        </mask>
         <Path winding="nonZero" data="M16 16 0 16 0 0 16 0 16 16ZM1 15 15 15 15 1 1 1 1 15Z">
           <fill>
             <SolidColor color="#676767"/>
@@ -18,6 +28,4 @@
         </Path>
       </Group>
     </Group>
-    <Path visible="false" winding="nonZero" data="M0 0 16 0 16 16 0 16 0 0Z"/>
-  </Group>
 </Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/10f8840f/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSelected.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSelected.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSelected.fxg
new file mode 100644
index 0000000..f51d7df
--- /dev/null
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSelected.fxg
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008" viewHeight="32" viewWidth="32">
+  <Group x="8" y="8" scaleGridLeft="4" scaleGridRight="12" scaleGridTop="12" scaleGridBottom="4">
+    <Path winding="nonZero" data="M15 7 15 15 1 15 1 1 14 1 14 0 0 0 0 16 16 16 16 7 15 7Z">
+      <fill>
+        <SolidColor color="#676767"/>
+      </fill>
+    </Path>
+  </Group>
+</Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/10f8840f/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg
index 8c8efd7..a728d3d 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg
@@ -1,10 +1,33 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
 <Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
-  <Group scaleGridLeft="4.0957" scaleGridRight="12.2881" scaleGridTop="9.99219" scaleGridBottom="3.33105">
-    <Path winding="nonZero" data="M14.165 0 16.3838 2.21924 5.24023 13.3232 0 8.52441 2.18164 6.11719 5.37305 9.06348 14.165 0Z">
-      <fill>
-        <SolidColor color="#33B5E5"/>
-      </fill>
+  <Group>
+      <Path x="0.624023" y="0.399414" winding="nonZero" data="M14.165 0 16.3838 2.21924 5.24023 13.3232 0 8.52441 2.18164 6.11719 5.37305 9.06348 14.165 0Z">
+        <fill>
+          <SolidColor color="#33B5E5"/>
+        </fill>
+      </Path>
+    <Path x="0.704102" y="0.712402" winding="nonZero" data="M14.165 0 16.3838 2.21924 5.24023 13.3232 0 8.52441 2.18164 6.11719 5.37305 9.06348 14.165 0Z">
+      <stroke>
+        <SolidColorStroke caps="none" joints="miter" miterLimit="10" color="#676767"/>
+      </stroke>
     </Path>
-    <Path visible="false" winding="nonZero" data="M0 0 17 0 17 13 0 13 0 0Z"/>
   </Group>
 </Graphic>
\ No newline at end of file