diff options
author | Oliver Bolte <obo@openoffice.org> | 2005-11-17 15:11:25 +0000 |
---|---|---|
committer | Oliver Bolte <obo@openoffice.org> | 2005-11-17 15:11:25 +0000 |
commit | 5f82142e279a0c3d4f99c937919ef9ecba46341c (patch) | |
tree | bf916816047adacb2803f4ce90db0a5626e8a2a2 /sd | |
parent | a071356e6078e700dbdc9064e08f46534d20a54e (diff) |
INTEGRATION: CWS canvas03 (1.16.32); FILE MERGED
2005/11/16 12:37:00 cl 1.16.32.1: #i57971# fix DropdownMenuBox d'tor order and reuse property controls
Diffstat (limited to 'sd')
-rw-r--r-- | sd/source/ui/animations/CustomAnimationPane.cxx | 26 |
1 files changed, 20 insertions, 6 deletions
diff --git a/sd/source/ui/animations/CustomAnimationPane.cxx b/sd/source/ui/animations/CustomAnimationPane.cxx index 9d980cbb4570..1fc9d517b8b5 100644 --- a/sd/source/ui/animations/CustomAnimationPane.cxx +++ b/sd/source/ui/animations/CustomAnimationPane.cxx @@ -4,9 +4,9 @@ * * $RCSfile: CustomAnimationPane.cxx,v $ * - * $Revision: 1.16 $ + * $Revision: 1.17 $ * - * last change: $Author: rt $ $Date: 2005-10-19 12:24:06 $ + * last change: $Author: obo $ $Date: 2005-11-17 16:11:25 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -817,6 +817,8 @@ void CustomAnimationPane::updateControls() { PropertySubControl* pSubControl = NULL; + Any aValue; + UStringList aProperties( pDescriptor->getProperties() ); if( aProperties.size() >= 1 ) { @@ -826,14 +828,26 @@ void CustomAnimationPane::updateControls() mpFTProperty->SetText( getPropertyName( mnPropertyType ) ); - Any aValue( getProperty1Value( mnPropertyType, pEffect ) ); - if( aValue.hasValue() ) + aValue = getProperty1Value( mnPropertyType, pEffect ); + } + + if( aValue.hasValue() ) + { + pSubControl = mpLBProperty->getSubControl(); + if( !pSubControl || (pSubControl->getControlType() != mnPropertyType) ) { pSubControl = PropertySubControl::create( mnPropertyType, this, aValue, pEffect->getPresetId(), LINK( this, CustomAnimationPane, implPropertyHdl ) ); + mpLBProperty->setSubControl( pSubControl ); + } + else + { + pSubControl->setValue( aValue, pEffect->getPresetId() ); } } - - mpLBProperty->setSubControl( pSubControl ); + else + { + mpLBProperty->setSubControl( 0 ); + } bool bEnable = (pSubControl != 0) && (pSubControl->getControl()->IsEnabled()); mpLBProperty->Enable( bEnable ); |