From abad571b7032bf066da9623f781b0a9f76f178c6 Mon Sep 17 00:00:00 2001 From: kravtsov Date: Wed, 19 Jun 2013 23:15:22 +0300 Subject: [PATCH] fixed #176 --- .../view/components/editors/EditorBase.as | 1 + .../editors/MaterialPropertiesEditor.mxml | 19 +++++++++++++------ .../view/mediators/PropertiesPanelMediator.as | 2 +- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/awaybuilder-core/src/awaybuilder/view/components/editors/EditorBase.as b/awaybuilder-core/src/awaybuilder/view/components/editors/EditorBase.as index e25faf5..16c84b7 100644 --- a/awaybuilder-core/src/awaybuilder/view/components/editors/EditorBase.as +++ b/awaybuilder-core/src/awaybuilder/view/components/editors/EditorBase.as @@ -69,6 +69,7 @@ package awaybuilder.view.components.editors private function forceUpdateHandler( event:Event ):void { + trace( "forceUpdateHandler" ); validate( _data ); } diff --git a/awaybuilder-core/src/awaybuilder/view/components/editors/MaterialPropertiesEditor.mxml b/awaybuilder-core/src/awaybuilder/view/components/editors/MaterialPropertiesEditor.mxml index 04e47ae..6e7d5ed 100644 --- a/awaybuilder-core/src/awaybuilder/view/components/editors/MaterialPropertiesEditor.mxml +++ b/awaybuilder-core/src/awaybuilder/view/components/editors/MaterialPropertiesEditor.mxml @@ -191,10 +191,11 @@ _selectedLightPicker = lightPickers.getItemAt(0) as AssetVO; } + _lights = new ArrayCollection(lights); if( _asset.light && _asset.lightPicker ) { - for each(var light:AssetVO in lights ) + for each(var light:AssetVO in _lights ) { if( light.equals( _asset.light ) ) _selectedLight = light; } @@ -206,23 +207,29 @@ } else { - _selectedLight = lights[0] as AssetVO; + _selectedLight = _lights.getItemAt(0) as AssetVO; } + _shadowMethods = new ArrayCollection(shadowMehtods); + + trace( "_shadowMethods", _shadowMethods ); + + if( _asset.shadowMethod && _asset.light && _asset.lightPicker ) { - for each(var method:AssetVO in shadowMehtods ) + for each(var method:AssetVO in _shadowMethods ) { if( method.equals( _asset.shadowMethod ) ) _selectedShadowMethod = method; } } else { - _selectedShadowMethod = shadowMehtods[0] as AssetVO; + _selectedShadowMethod = _shadowMethods.getItemAt(0) as AssetVO; } + trace( "_selectedShadowMethod", _selectedShadowMethod ); + +// trace("shadowLightDropDownList.selectedItem ", shadowLightDropDownList.selectedItem ); - _shadowMethods = new ArrayCollection(shadowMehtods); - _lights = new ArrayCollection(lights); } private function shadowMethodDropDownList_changeHandler(event:IndexChangeEvent):void diff --git a/awaybuilder-core/src/awaybuilder/view/mediators/PropertiesPanelMediator.as b/awaybuilder-core/src/awaybuilder/view/mediators/PropertiesPanelMediator.as index 644c801..2b8119d 100644 --- a/awaybuilder-core/src/awaybuilder/view/mediators/PropertiesPanelMediator.as +++ b/awaybuilder-core/src/awaybuilder/view/mediators/PropertiesPanelMediator.as @@ -767,7 +767,7 @@ package awaybuilder.view.mediators var lightVO:LightVO = item as LightVO; if( lightVO && lightVO.shadowMethods && lightVO.shadowMethods.length ) { - if( getAssetIsInList( asset, container.children.source ) ) return true; + if( getAssetIsInList( asset, lightVO.shadowMethods.source ) ) return true; if( lightVO.shadowMapper.equals( asset ) ) return true; } var cameraVO:CameraVO = item as CameraVO;