You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flex.apache.org by "Maurice Amsellem (JIRA)" <ji...@apache.org> on 2014/03/19 09:32:45 UTC
[jira] [Closed] (FLEX-23864) getting skin not found error on
DropDownList componet on Flex 4 nightly builds since about 4 months ago
[ https://issues.apache.org/jira/browse/FLEX-23864?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Maurice Amsellem closed FLEX-23864.
-----------------------------------
> getting skin not found error on DropDownList componet on Flex 4 nightly builds since about 4 months ago
> -------------------------------------------------------------------------------------------------------
>
> Key: FLEX-23864
> URL: https://issues.apache.org/jira/browse/FLEX-23864
> Project: Apache Flex
> Issue Type: Bug
> Components: Spark: DropDownList
> Affects Versions: Adobe Flex SDK 4.0 (Release)
> Environment: Affected OS(s): All OS Platforms
> Affected OS(s): All OS Platforms
> Browser: Firefox 3.x
> Language Found: English
> Reporter: Adobe JIRA
>
> Steps to reproduce:
> 1. add a spark DropDownList to mx:Module
> 2. in <s:Application add an mx:ModuleLoader url=""
> 3. add module via byte array
> eg
> theSwf = event.message.body as ByteArray;
> theModuleLoader.loadModule(null, theSwf);
>
>
> Actual Results:
> get rutime error cannot find skin
>
> Expected Results:
> no runtime error, had no problem from nightly's in the 14xxx but started happening after that, found ugly work around, but now that 4 released this should be fixed
>
> Workaround (if any):
> extend DropDownList and add skin in contstuctor, eg ** note also had to remove scroller, same skin issue at runtime
> public class BugFixDropDownList extends DropDownList {
> public function BugFixDropDownList() {
> super();
> setStyle("skinClass", Class(BugFixDropDownListSkin));
> }
> }
> }
>
> <?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 DropDownList component.
> The skin for the anchor button for a DropDownList component
> is defined by the DropDownListButtonSkin class.
> <p>In a custom skin class that uses transitions, set the
> <code>itemDestructionPolicy</code> property to <code>none</code>
> for the PopUpAnchor defined by the popUp property.</p>
> @see spark.components.DropDownList
> @see spark.skins.spark.DropDownListButtonSkin
> @langversion 3.0
> @playerversion Flash 10
> @playerversion AIR 1.5
> @productversion Flex 4
> -->
> <s:SparkSkin xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark"
> xmlns:fb="http://ns.adobe.com/flashbuilder/2009" alpha.disabled=".5">
> <!-- host component -->
> <fx:Metadata>
> <![CDATA[
> /**
> * @copy spark.skins.spark.ApplicationSkin#hostComponent
> */
> [HostComponent("spark.components.DropDownList")]
> ]]
> >
> </fx:Metadata>
> <fx:Script fb:purpose="styling">
> <![CDATA[
> /* Define the content fill items that should be colored by the "contentBackgroundColor" style. */
> static private const contentFill:Array = ["bgFill"];
> /**
> * @private
> */
> override public function get contentItems():Array {return contentFill};
> /**
> * @private
> */
> override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
> {
> if (getStyle("borderVisible") == false)
> {
> if (border)
> border.visible = false;
> if (background)
> {
> background.left = background.top = background.right = background.bottom = 0;
> }
> /* if (scroller)
> scroller.minViewportInset = 0;*/
> }
> else
> {
> if (border)
> border.visible = true;
> if (background)
> {
> background.left = background.top = background.right = background.bottom = 1;
> }
> /* if (scroller)
> scroller.minViewportInset = 1;*/
> }
> if (dropShadow)
> dropShadow.visible = getStyle("dropShadowVisible");
> openButton.setStyle("cornerRadius", getStyle("cornerRadius"));
> if (borderStroke)
> {
> borderStroke.color = getStyle("borderColor");
> borderStroke.alpha = getStyle("borderAlpha");
> }
> super.updateDisplayList(unscaledWidth, unscaledHeight);
> }
> ]]
> >
> </fx:Script>
> <s:states>
> <s:State name="normal" />
> <s:State name="open" />
> <s:State name="disabled" />
> </s:states>
> <!---
> The PopUpAnchor control that opens the drop-down list.
> <p>In a custom skin class that uses transitions, set the
> <code>itemDestructionPolicy</code> property to <code>none</code>.</p>
> -->
> <s:PopUpAnchor id="popUp" displayPopUp.normal="false" displayPopUp.open="true" includeIn="open"
> left="0" right="0" top="0" bottom="0" itemDestructionPolicy="auto"
> popUpPosition="below" popUpWidthMatchesAnchorWidth="true">
> <!---
> This includes borders, background colors, scrollers, and filters.
> @copy spark.components.supportClasses.DropDownListBase#dropDown
> -->
> <s:Group id="dropDown" maxHeight="134" minHeight="22" >
> <!--- @private -->
> <s:RectangularDropShadow id="dropShadow" blurX="20" blurY="20" alpha="0.45" distance="7"
> angle="90" color="#000000" left="0" top="0" right="0" bottom="0"/>
> <!--- @private -->
> <s:Rect id="border" left="0" right="0" top="0" bottom="0">
> <s:stroke>
> <!--- border stroke @private -->
> <s:SolidColorStroke id="borderStroke" weight="1"/>
> </s:stroke>
> </s:Rect>
> <!-- fill -->
> <!--- Defines the appearance of drop-down list's background fill. -->
> <s:Rect id="background" left="1" right="1" top="1" bottom="1" >
> <s:fill>
> <!---
> The color of the drop down's background fill.
> The default color is 0xFFFFFF.
> -->
> <s:SolidColor id="bgFill" color="0xFFFFFF" />
> </s:fill>
> </s:Rect>
> <!--- @private -->
> <!-- <s:Scroller id="scroller" left="0" top="0" right="0" bottom="0" hasFocusableChildren="false" minViewportInset="1">-->
> <!--- @copy spark.components.SkinnableDataContainer#dataGroup-->
> <s:DataGroup id="dataGroup" itemRenderer="spark.skins.spark.DefaultItemRenderer">
> <s:layout>
> <s:VerticalLayout gap="0" horizontalAlign="contentJustify"/>
> </s:layout>
> </s:DataGroup>
> <!-- </s:Scroller>-->
> </s:Group>
> </s:PopUpAnchor>
> <!--- The default skin is DropDownListButtonSkin.
> @copy spark.components.supportClasses.DropDownListBase#openButton
> @see spark.skins.spark.DropDownListButtonSkin -->
> <s:Button id="openButton" left="0" right="0" top="0" bottom="0" focusEnabled="false"
> skinClass="spark.skins.spark.DropDownListButtonSkin" />
> <!--- @copy spark.components.DropDownList#labelDisplay -->
> <s:Label id="labelDisplay" verticalAlign="middle" maxDisplayedLines="1"
> mouseEnabled="false" mouseChildren="false"
> left="7" right="30" top="2" bottom="2" width="75" verticalCenter="1" />
> </s:SparkSkin>
>
--
This message was sent by Atlassian JIRA
(v6.2#6252)