Commits

Anonymous committed c450295

CWS-TOOLING: integrate CWS chart37
2009-05-22 09:10:36 +0200 iha r272170 : #i102130# color of pies is not loaded correctly
2009-04-27 17:16:20 +0200 iha r271294 : #i24203# compiler problem
2009-04-27 16:43:21 +0200 iha r271292 : #i101281# missing API documentation for secondary axis title properties
2009-04-27 15:26:05 +0200 hde r271276 : #i100987
2009-04-27 15:24:42 +0200 hde r271273 : #i100987
2009-04-24 15:08:33 +0200 iha r271214 : #i100995# crash with some logarithmic scalings
2009-04-22 18:50:56 +0200 dr r271134 : #i82177# write out deleted point labels
2009-04-22 18:40:48 +0200 iha r271133 : #i101281# missing API documentation for secondary axis title properties
2009-04-22 16:39:42 +0200 dr r271128 : #i82177# extensions for bubble charts
2009-04-22 14:37:00 +0200 dr r271114 : #i82177# import/export data label type and separator
2009-04-22 14:36:24 +0200 dr r271113 : #i82177# import/export data label type and separator
2009-04-21 15:25:26 +0200 dr r271038 : #i82177# import data label type and separator from BIFF8 CHFR records
2009-04-21 14:37:16 +0200 dr r271037 : #i82177# dump BIFF8 chart future records
2009-04-20 17:44:27 +0200 iha r271002 : #i96898# reduce library exports
2009-04-20 13:01:13 +0200 iha r270975 : #i24203# rotate data labels - help ids
2009-04-20 11:40:33 +0200 dr r270969 : #i96600# export of axis scaling/positioning properties
2009-04-16 16:02:31 +0200 dr r270892 : #i69599# keep Y axis left in 3d charts
2009-04-15 18:16:46 +0200 dr r270859 : #i69599# import of axis position settings
2009-04-15 18:16:01 +0200 dr r270858 : #i69599# correct handling of logarithmic crossing axes
2009-04-14 16:27:48 +0200 dr r270794 : #i96599# handle auto axis position on logarithmic axes
2009-04-09 19:59:51 +0200 dr r270722 : #i96599# import axis crossing settings, fix import of logarithmic scaling settings
2009-04-09 18:26:00 +0200 iha r270720 : #i96898# reduce library exports
2009-04-09 15:17:04 +0200 iha r270710 : #i96898# reduce library exports
2009-04-09 10:50:14 +0200 dr r270682 : #i24203# import/export of data label rotation, fixed some other broken stuff too
2009-04-08 16:54:54 +0200 dr r270657 : #i24203# import rotation for data point labels
2009-04-06 18:19:17 +0200 iha r270571 : #i100876# Axis scaling settings dialog wrong after API usage (anys different from double type)
2009-04-06 15:57:05 +0200 iha r270567 : #i100105# #i58585# leftover ->
2009-04-06 15:55:48 +0200 iha r270564 : #i58585# leftover ->
2009-04-02 16:41:07 +0200 iha r270422 : #i99721# remove unused code
2009-04-02 14:29:03 +0200 iha r270407 : #i99721# remove unused code
2009-03-26 10:58:23 +0100 iha r270059 : #i96898# reduce library exports
2009-03-26 10:13:49 +0100 iha r270055 : #i96898# reduce library exports
2009-03-25 09:39:13 +0100 iha r269998 : CWS-TOOLING: rebase CWS chart37 to trunk@269781 (milestone: DEV300:m44)
2009-03-24 17:56:56 +0100 iha r269986 : #i96898# reduce library exports
2009-03-24 16:56:44 +0100 iha r269974 : #i99721# remove unused code
2009-03-24 16:48:48 +0100 iha r269970 : #i89731# remove unused string
2009-03-24 15:44:04 +0100 iha r269961 : remove unused code
2009-03-24 15:22:45 +0100 iha r269959 : remove unused code
2009-03-24 15:17:17 +0100 iha r269957 : remove unused code
2009-03-24 11:14:53 +0100 iha r269923 : #i24203# rotate data labels
2009-03-09 12:10:25 +0100 hde r269076 : #i99300#
2009-03-06 15:56:26 +0100 iha r269011 : #i93953# Source Format for secondary axis without data
2009-02-17 15:59:05 +0100 iha r268177 : avoid warning during build
2009-02-17 15:01:59 +0100 iha r268173 : avoid warning during build
2009-02-13 09:39:03 +0100 ufi r267693 : i96999
2009-02-11 15:12:35 +0100 iha r267604 : removed unused string
2009-02-11 14:00:29 +0100 iha r267600 : #i96999# Corrected wording from 'correlation coefficient' to 'coefficient of determination'
2009-02-11 10:56:45 +0100 iha r267584 : #i89731# typo in resource string
2009-02-11 10:01:29 +0100 iha r267582 : #i89031# compile error on asian windows systems
2009-02-10 16:15:16 +0100 iha r267552 : #i24203# rotate data labels
2009-02-04 18:00:33 +0100 iha r267395 : #i98893# don't export defaults to file
2009-02-04 15:48:15 +0100 iha r267390 : #i92128# asian typography for chart elements
2009-02-04 15:17:41 +0100 iha r267386 : #i92128# asian typography for chart elements
2009-01-30 14:41:10 +0100 iha r267197 : CWS-TOOLING: rebase CWS chart37 to trunk@267171 (milestone: DEV300:m41)

Comments (0)

Files changed (194)

chart2/source/controller/chartapiwrapper/AxisWrapper.cxx

 #include "precompiled_chart2.hxx"
 #include "AxisWrapper.hxx"
 #include "AxisHelper.hxx"
-#include "Scaling.hxx"
 #include "Chart2ModelContact.hxx"
 #include "ContainerHelper.hxx"
 #include "macros.hxx"

chart2/source/controller/chartapiwrapper/ChartDataWrapper.cxx

 #include "servicenames_charttypes.hxx"
 #include "ContainerHelper.hxx"
 #include "CommonFunctors.hxx"
-#include "InternalDataProvider.hxx"
+#include "ChartModelHelper.hxx"
 #include "DataSeriesHelper.hxx"
 #include "ControllerLockGuard.hxx"
 #include "Chart2ModelContact.hxx"
 
         // create a data provider containing the new data
         uno::Reference< chart2::data::XDataProvider > xTempDataProvider(
-            new InternalDataProvider());
+             ChartModelHelper::createInternalDataProvider() );
         if( ! xTempDataProvider.is())
             throw uno::RuntimeException( C2U("Couldn't create temporary data provider"),
                                          static_cast< ::cppu::OWeakObject * >( this ));

chart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx

 #include "chartview/ExplicitValueProvider.hxx"
 #include "chartview/DrawModelWrapper.hxx"
 #include "Chart2ModelContact.hxx"
-#include "InternalDataProvider.hxx"
 
 #include "DiagramHelper.hxx"
 #include "DataSourceHelper.hxx"
 
         // create a data provider containing the new data
         Reference< chart2::data::XDataProvider > xTempDataProvider(
-            new InternalDataProvider( xDataArray ));
+            ChartModelHelper::createInternalDataProvider( xDataArray ));
 
         if( ! xTempDataProvider.is())
             throw uno::RuntimeException( C2U("Couldn't create temporary data provider"),

chart2/source/controller/chartapiwrapper/DataSeriesPointWrapper.cxx

 #include "WrappedDataCaptionProperties.hxx"
 #include "WrappedSeriesAreaOrLineProperty.hxx"
 #include "WrappedScaleTextProperties.hxx"
+#include "WrappedTextRotationProperty.hxx"
 #include <rtl/ustrbuf.hxx>
 #include <rtl/math.hxx>
 // header for define DBG_ASSERT
     PROP_SERIES_PERCENTAGE_NUMBERFORMAT,
     PROP_SERIES_DATAPOINT_LABEL_PLACEMENT,
     //other series properties
-    PROP_SERIES_ATTACHED_AXIS
+    PROP_SERIES_ATTACHED_AXIS,
+    PROP_SERIES_DATAPOINT_TEXT_ROTATION
 };
 
 void lcl_AddPropertiesToVector_PointProperties(
                   ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
                   beans::PropertyAttribute::BOUND
                   | beans::PropertyAttribute::MAYBEVOID ));
+
+    rOutProperties.push_back(
+        Property( C2U( "TextRotation" ),
+                  PROP_SERIES_DATAPOINT_TEXT_ROTATION,
+                  ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
+                  beans::PropertyAttribute::BOUND
+                  | beans::PropertyAttribute::MAYBEDEFAULT ));
 }
  
 void lcl_AddPropertiesToVector_SeriesOnly(
     aWrappedProperties.push_back( new WrappedSegmentOffsetProperty() );
     aWrappedProperties.push_back( new WrappedProperty( C2U( "D3DPercentDiagonal" ), C2U( "PercentDiagonal" ) ) );
 
+    aWrappedProperties.push_back( new WrappedTextRotationProperty() );
+
     return aWrappedProperties;
 }
 

chart2/source/controller/chartapiwrapper/GridWrapper.cxx

 #include "GridWrapper.hxx"
 #include "macros.hxx"
 #include "AxisHelper.hxx"
-#include "Scaling.hxx"
 #include "Chart2ModelContact.hxx"
 #include "ContainerHelper.hxx"
 #include "AxisIndexDefines.hxx"

chart2/source/controller/chartapiwrapper/WallFloorWrapper.cxx

 
 #include "WallFloorWrapper.hxx"
 #include "macros.hxx"
-#include "Scaling.hxx"
 #include "Chart2ModelContact.hxx"
 #include "ContainerHelper.hxx"
 #include <com/sun/star/beans/PropertyAttribute.hpp>

chart2/source/controller/chartapiwrapper/WrappedScaleProperty.cxx

 
 #include "WrappedScaleProperty.hxx"
 #include "macros.hxx"
-#include "Scaling.hxx"
 #include "CommonConverters.hxx"
 #include "AxisHelper.hxx"
 #include <com/sun/star/chart2/XAxis.hpp>
                 if( (!bBool) != (!bWasLogarithm) )
                 {
                     if( bBool )
-                        aScaleData.Scaling = new LogarithmicScaling( 10.0 );
+                        aScaleData.Scaling = AxisHelper::createLogarithmicScaling( 10.0 );
                     else
                         aScaleData.Scaling = 0;
                     bSetScaleData = true;

chart2/source/controller/chartapiwrapper/WrappedSceneProperty.cxx

                 , ::boost::shared_ptr< Chart2ModelContact > spChart2ModelContact )
 {
     rList.push_back( new WrappedD3DTransformMatrixProperty( spChart2ModelContact ) );
-    /*
-    rList.push_back( new WrappedD3DSceneShadeModeProperty() );
-    rList.push_back( new WrappedD3DScenePerspectiveProperty() );
-    rList.push_back( new WrappedD3DSceneAmbientColorProperty() );
-    for( sal_Int32 nN=1; nN<=8; nN++ )
-    {
-        rList.push_back( new WrappedD3DSceneLightColorProperty(nN) );
-        rList.push_back( new WrappedD3DSceneLightDirectionProperty(nN) );
-        rList.push_back( new WrappedD3DSceneLightOnProperty(nN) );
-    }
-    
-    rList.push_back( new WrappedD3DSceneDistanceProperty() );
-    rList.push_back( new WrappedD3DSceneFocalLengthProperty() );
-    rList.push_back( new WrappedD3DSceneShadowSlantProperty() );
-    rList.push_back( new WrappedD3DSceneTwoSidedLightingProperty() );
-    rList.push_back( new WrappedD3DCameraGeometryProperty() );
-    */
 }
 
 //----------------------------------------------------------------------------------------------------------------------
     return WrappedProperty::getPropertyDefault( xInnerPropertyState );
 }
 
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-/*
-WrappedD3DSceneShadeModeProperty::WrappedD3DSceneShadeModeProperty()
-            : WrappedProperty(C2U("D3DSceneShadeMode"),OUString())
-{
-}
-
-WrappedD3DSceneShadeModeProperty::~WrappedD3DSceneShadeModeProperty()
-{
-}
-
-void WrappedD3DSceneShadeModeProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    drawing::ShadeMode aNewValue;
-    if( !(rOuterValue >>= aNewValue) )
-        throw lang::IllegalArgumentException( C2U("Property D3DSceneShadeMode requires value of type drawing::ShadeMode"), 0, 0 );
-
-    if( !xInnerPropertySet.is() )
-    {
-        DBG_ERROR( "need xInnerPropertySet to wrap property D3DSceneShadeMode" );
-        return;
-    }
-
-    chart2::SceneDescriptor aSceneDescriptor;
-    xInnerPropertySet->getPropertyValue( C2U( "SceneProperties" ) )>>=aSceneDescriptor;
-        
-    if( aSceneDescriptor.aShadeMode != aNewValue  )
-    {
-        aSceneDescriptor.aShadeMode = aNewValue;
-        xInnerPropertySet->setPropertyValue( C2U( "SceneProperties" ), uno::makeAny( aSceneDescriptor ) );
-    }
-}
-
-Any WrappedD3DSceneShadeModeProperty::getPropertyValue( const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    if( !xInnerPropertySet.is() )
-    {
-        DBG_ERROR( "need xInnerPropertySet to wrap property D3DTransformMatrix" );
-        return Any();
-    }
-
-    chart2::SceneDescriptor aSceneDescriptor;
-    xInnerPropertySet->getPropertyValue( C2U( "SceneProperties" ) )>>=aSceneDescriptor;
-    return uno::makeAny( aSceneDescriptor.aShadeMode );
-}
-
-Any WrappedD3DSceneShadeModeProperty::getPropertyDefault( const Reference< beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return uno::makeAny( drawing::ShadeMode_SMOOTH );
-}
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-WrappedD3DScenePerspectiveProperty::WrappedD3DScenePerspectiveProperty()
-            : WrappedProperty(C2U("D3DScenePerspective"),OUString())
-{
-}
-
-WrappedD3DScenePerspectiveProperty::~WrappedD3DScenePerspectiveProperty()
-{
-}
-
-void WrappedD3DScenePerspectiveProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    drawing::ProjectionMode aNewValue;
-    if( !(rOuterValue >>= aNewValue) )
-        throw lang::IllegalArgumentException( C2U("Property D3DScenePerspective requires value of type drawing::ProjectionMode"), 0, 0 );
-
-    if( !xInnerPropertySet.is() )
-    {
-        DBG_ERROR( "need xInnerPropertySet to wrap property D3DScenePerspective" );
-        return;
-    }
-
-    chart2::SceneDescriptor aSceneDescriptor;
-    xInnerPropertySet->getPropertyValue( C2U( "SceneProperties" ) )>>=aSceneDescriptor;
-        
-    if( aSceneDescriptor.aProjectionMode != aNewValue  )
-    {
-        aSceneDescriptor.aProjectionMode = aNewValue;
-        xInnerPropertySet->setPropertyValue( C2U( "SceneProperties" ), uno::makeAny( aSceneDescriptor ) );
-    }
-}
-
-Any WrappedD3DScenePerspectiveProperty::getPropertyValue( const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    if( !xInnerPropertySet.is() )
-    {
-        DBG_ERROR( "need xInnerPropertySet to wrap property D3DTransformMatrix" );
-        return Any();
-    }
-
-    chart2::SceneDescriptor aSceneDescriptor;
-    xInnerPropertySet->getPropertyValue( C2U( "SceneProperties" ) )>>=aSceneDescriptor;
-    return uno::makeAny( aSceneDescriptor.aProjectionMode );
-}
-
-Any WrappedD3DScenePerspectiveProperty::getPropertyDefault( const Reference< beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return uno::makeAny( drawing::ProjectionMode_PERSPECTIVE );
-}
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-WrappedD3DSceneAmbientColorProperty::WrappedD3DSceneAmbientColorProperty()
-            : WrappedProperty(C2U("D3DSceneAmbientColor"),OUString())
-{
-}
-
-WrappedD3DSceneAmbientColorProperty::~WrappedD3DSceneAmbientColorProperty()
-{
-}
-
-void WrappedD3DSceneAmbientColorProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    sal_Int32 nNewColor;
-    if( !(rOuterValue >>= nNewColor) )
-        throw lang::IllegalArgumentException( C2U("Property D3DSceneAmbientColor requires value of type sal_Int32"), 0, 0 );
-
-    if( !xInnerPropertySet.is() )
-    {
-        DBG_ERROR( "need xInnerPropertySet to wrap property D3DSceneAmbientColor" );
-        return;
-    }
-
-    chart2::SceneDescriptor aSceneDescriptor;
-    xInnerPropertySet->getPropertyValue( C2U( "SceneProperties" ) )>>=aSceneDescriptor;
-        
-    if( aSceneDescriptor.nAmbientLightColor != nNewColor  )
-    {
-        aSceneDescriptor.nAmbientLightColor = nNewColor;
-        xInnerPropertySet->setPropertyValue( C2U( "SceneProperties" ), uno::makeAny( aSceneDescriptor ) );
-    }
-}
-
-Any WrappedD3DSceneAmbientColorProperty::getPropertyValue( const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    if( !xInnerPropertySet.is() )
-    {
-        DBG_ERROR( "need xInnerPropertySet to wrap property D3DSceneAmbientColor" );
-        return Any();
-    }
-
-    chart2::SceneDescriptor aSceneDescriptor;
-    xInnerPropertySet->getPropertyValue( C2U( "SceneProperties" ) )>>=aSceneDescriptor;
-    return uno::makeAny( aSceneDescriptor.nAmbientLightColor );
-}
-
-Any WrappedD3DSceneAmbientColorProperty::getPropertyDefault( const Reference< beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return uno::makeAny( sal_Int32(0x666666) ); // grey40
-}
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-WrappedD3DSceneLightColorProperty::WrappedD3DSceneLightColorProperty( sal_Int32 nLightNumber )
-            : WrappedProperty(C2U("D3DSceneLightColor"),OUString())
-            , m_nLightIndex( nLightNumber-1 )
-{
-    if( m_nLightIndex < 0 )
-        m_nLightIndex = 0;
-
-    m_aOuterName += OUString::valueOf( nLightNumber );
-}
-
-WrappedD3DSceneLightColorProperty::~WrappedD3DSceneLightColorProperty()
-{
-}
-
-void WrappedD3DSceneLightColorProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    sal_Int32 nNewColor;
-    if( !(rOuterValue >>= nNewColor) )
-        throw lang::IllegalArgumentException( C2U("Property D3DSceneAmbientColor requires value of type sal_Int32"), 0, 0 );
-
-    if( !xInnerPropertySet.is() )
-    {
-        DBG_ERROR( "need xInnerPropertySet to wrap property D3DSceneAmbientColor" );
-        return;
-    }
-
-    chart2::SceneDescriptor aSceneDescriptor;
-    xInnerPropertySet->getPropertyValue( C2U( "SceneProperties" ) )>>=aSceneDescriptor;
-    
-    if( aSceneDescriptor.aLightSources.getLength() <= m_nLightIndex )
-        aSceneDescriptor.aLightSources.realloc(m_nLightIndex+1);
-
-    if( aSceneDescriptor.aLightSources[m_nLightIndex].nDiffuseColor != nNewColor )
-    {
-        aSceneDescriptor.aLightSources[m_nLightIndex].nDiffuseColor = nNewColor;
-        xInnerPropertySet->setPropertyValue( C2U( "SceneProperties" ), uno::makeAny( aSceneDescriptor ) );
-    }
-}
-
-Any WrappedD3DSceneLightColorProperty::getPropertyValue( const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    if( !xInnerPropertySet.is() )
-    {
-        DBG_ERROR( "need xInnerPropertySet to wrap property D3DSceneAmbientColor" );
-        return Any();
-    }
-
-    chart2::SceneDescriptor aSceneDescriptor;
-    xInnerPropertySet->getPropertyValue( C2U( "SceneProperties" ) )>>=aSceneDescriptor;
-    if( aSceneDescriptor.aLightSources.getLength() <= m_nLightIndex )
-        return getPropertyDefault( 0 );
-
-    return uno::makeAny( aSceneDescriptor.aLightSources[m_nLightIndex].nDiffuseColor );
-}
-
-Any WrappedD3DSceneLightColorProperty::getPropertyDefault( const Reference< beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    if(m_nLightIndex==1)
-        return uno::makeAny( sal_Int32(0xcccccc) ); // grey80
-    return uno::makeAny( sal_Int32(0xffffff) ); // white
-}
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-WrappedD3DSceneLightDirectionProperty::WrappedD3DSceneLightDirectionProperty( sal_Int32 nLightNumber )
-            : WrappedProperty(C2U("D3DSceneLightDirection"),OUString())
-            , m_nLightIndex( nLightNumber-1 )
-{
-    if( m_nLightIndex < 0 )
-        m_nLightIndex = 0;
-
-    m_aOuterName += OUString::valueOf( nLightNumber );
-}
-
-WrappedD3DSceneLightDirectionProperty::~WrappedD3DSceneLightDirectionProperty()
-{
-}
-
-void WrappedD3DSceneLightDirectionProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    drawing::Direction3D aNewValue;
-    if( !(rOuterValue >>= aNewValue) )
-        throw lang::IllegalArgumentException( C2U("Property D3DSceneLightDirection requires value of type drawing::Direction3D"), 0, 0 );
-
-    if( !xInnerPropertySet.is() )
-    {
-        DBG_ERROR( "need xInnerPropertySet to wrap property D3DSceneLightDirection" );
-        return;
-    }
-
-    chart2::SceneDescriptor aSceneDescriptor;
-    xInnerPropertySet->getPropertyValue( C2U( "SceneProperties" ) )>>=aSceneDescriptor;
-    
-    if( aSceneDescriptor.aLightSources.getLength() <= m_nLightIndex )
-        aSceneDescriptor.aLightSources.realloc(m_nLightIndex+1);
-
-    if( Direction3DToB3DPoint( aSceneDescriptor.aLightSources[m_nLightIndex].aDirection ) != Direction3DToB3DPoint( aNewValue ) )
-    {
-        aSceneDescriptor.aLightSources[m_nLightIndex].aDirection = aNewValue;
-        xInnerPropertySet->setPropertyValue( C2U( "SceneProperties" ), uno::makeAny( aSceneDescriptor ) );
-    }
-}
-
-Any WrappedD3DSceneLightDirectionProperty::getPropertyValue( const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    if( !xInnerPropertySet.is() )
-    {
-        DBG_ERROR( "need xInnerPropertySet to wrap property D3DSceneLightDirection" );
-        return Any();
-    }
-
-    chart2::SceneDescriptor aSceneDescriptor;
-    xInnerPropertySet->getPropertyValue( C2U( "SceneProperties" ) )>>=aSceneDescriptor;
-    if( aSceneDescriptor.aLightSources.getLength() <= m_nLightIndex )
-        return getPropertyDefault( 0 );
-
-    return uno::makeAny( aSceneDescriptor.aLightSources[m_nLightIndex].aDirection );
-}
-
-Any WrappedD3DSceneLightDirectionProperty::getPropertyDefault( const Reference< beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return uno::makeAny( drawing::Direction3D( 1, 1, 1 ) );
-}
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-WrappedD3DSceneLightOnProperty::WrappedD3DSceneLightOnProperty( sal_Int32 nLightNumber )
-            : WrappedProperty(C2U("D3DSceneLightOn"),OUString())
-            , m_nLightIndex( nLightNumber-1 )
-{
-    if( m_nLightIndex < 0 )
-        m_nLightIndex = 0;
-
-    m_aOuterName += OUString::valueOf( nLightNumber );
-}
-
-WrappedD3DSceneLightOnProperty::~WrappedD3DSceneLightOnProperty()
-{
-}
-
-void WrappedD3DSceneLightOnProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    sal_Bool bNewValue;
-    if( !(rOuterValue >>= bNewValue) )
-        throw lang::IllegalArgumentException( C2U("Property D3DSceneLightOn requires value of type sal_Bool"), 0, 0 );
-
-    if( !xInnerPropertySet.is() )
-    {
-        DBG_ERROR( "need xInnerPropertySet to wrap property D3DSceneLightOn" );
-        return;
-    }
-
-    chart2::SceneDescriptor aSceneDescriptor;
-    xInnerPropertySet->getPropertyValue( C2U( "SceneProperties" ) )>>=aSceneDescriptor;
-    
-    if( aSceneDescriptor.aLightSources.getLength() <= m_nLightIndex )
-        aSceneDescriptor.aLightSources.realloc(m_nLightIndex+1);
-
-    if( aSceneDescriptor.aLightSources[m_nLightIndex].bIsEnabled != bNewValue )
-    {
-        aSceneDescriptor.aLightSources[m_nLightIndex].bIsEnabled = bNewValue;
-        xInnerPropertySet->setPropertyValue( C2U( "SceneProperties" ), uno::makeAny( aSceneDescriptor ) );
-    }
-}
-
-Any WrappedD3DSceneLightOnProperty::getPropertyValue( const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    if( !xInnerPropertySet.is() )
-    {
-        DBG_ERROR( "need xInnerPropertySet to wrap property D3DSceneLightOn" );
-        return Any();
-    }
-
-    chart2::SceneDescriptor aSceneDescriptor;
-    xInnerPropertySet->getPropertyValue( C2U( "SceneProperties" ) )>>=aSceneDescriptor;
-    if( aSceneDescriptor.aLightSources.getLength() <= m_nLightIndex )
-        return getPropertyDefault( 0 );
-
-    return uno::makeAny( aSceneDescriptor.aLightSources[m_nLightIndex].bIsEnabled );
-}
-
-Any WrappedD3DSceneLightOnProperty::getPropertyDefault( const Reference< beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    if(m_nLightIndex==1)
-        return uno::makeAny( sal_Bool(sal_True) );
-    return uno::makeAny( sal_Bool(sal_False) );
-}
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-WrappedD3DSceneDistanceProperty::WrappedD3DSceneDistanceProperty()
-            : WrappedProperty(C2U("D3DSceneDistance"),OUString())
-{
-}
-
-WrappedD3DSceneDistanceProperty::~WrappedD3DSceneDistanceProperty()
-{
-}
-
-void WrappedD3DSceneDistanceProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return; //this property is not supported anymore
-}
-
-Any WrappedD3DSceneDistanceProperty::getPropertyValue( const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return getPropertyDefault(0);//this property is not supported anymore
-}
-
-Any WrappedD3DSceneDistanceProperty::getPropertyDefault( const Reference< beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    Any aRet;
-    aRet <<= sal_Int32(419);
-    return aRet;
-}
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-WrappedD3DSceneFocalLengthProperty::WrappedD3DSceneFocalLengthProperty()
-            : WrappedProperty(C2U("D3DSceneFocalLength"),OUString())
-{
-}
-
-WrappedD3DSceneFocalLengthProperty::~WrappedD3DSceneFocalLengthProperty()
-{
-}
-
-void WrappedD3DSceneFocalLengthProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return; //this property is not supported anymore
-}
-
-Any WrappedD3DSceneFocalLengthProperty::getPropertyValue( const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return getPropertyDefault(0);//this property is not supported anymore
-}
-
-Any WrappedD3DSceneFocalLengthProperty::getPropertyDefault( const Reference< beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    Any aRet;
-    aRet <<= sal_Int32(800);
-    return aRet;
-}
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-WrappedD3DSceneShadowSlantProperty::WrappedD3DSceneShadowSlantProperty()
-            : WrappedProperty(C2U("D3DSceneShadowSlant"),OUString())
-{
-}
-
-WrappedD3DSceneShadowSlantProperty::~WrappedD3DSceneShadowSlantProperty()
-{
-}
-
-void WrappedD3DSceneShadowSlantProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return; //this property is not supported anymore
-}
-
-Any WrappedD3DSceneShadowSlantProperty::getPropertyValue( const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return getPropertyDefault(0);//this property is not supported anymore
-}
-
-Any WrappedD3DSceneShadowSlantProperty::getPropertyDefault( const Reference< beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    Any aRet;
-    aRet <<= sal_Int32(0);
-    return aRet;
-}
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-WrappedD3DSceneTwoSidedLightingProperty::WrappedD3DSceneTwoSidedLightingProperty()
-            : WrappedProperty(C2U("D3DSceneTwoSidedLighting"),OUString())
-{
-}
-
-WrappedD3DSceneTwoSidedLightingProperty::~WrappedD3DSceneTwoSidedLightingProperty()
-{
-}
-
-void WrappedD3DSceneTwoSidedLightingProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return; //this property is not supported anymore
-}
-
-Any WrappedD3DSceneTwoSidedLightingProperty::getPropertyValue( const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return getPropertyDefault(0);//this property is not supported anymore
-}
-
-Any WrappedD3DSceneTwoSidedLightingProperty::getPropertyDefault( const Reference< beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    Any aRet;
-    aRet <<= sal_Bool(sal_False);
-    return aRet;
-}
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-WrappedD3DCameraGeometryProperty::WrappedD3DCameraGeometryProperty()
-            : WrappedProperty(C2U("D3DCameraGeometry"),OUString())
-{
-}
-
-WrappedD3DCameraGeometryProperty::~WrappedD3DCameraGeometryProperty()
-{
-}
-
-void WrappedD3DCameraGeometryProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return; //this property is not supported anymore
-}
-
-Any WrappedD3DCameraGeometryProperty::getPropertyValue( const Reference< beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return getPropertyDefault(0);//this property is not supported anymore
-}
-
-Any WrappedD3DCameraGeometryProperty::getPropertyDefault( const Reference< beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
-{
-    return Any();
-}
-*/
-
 } //namespace wrapper
 } //namespace chart
 //.............................................................................

chart2/source/controller/chartapiwrapper/WrappedSceneProperty.hxx

     ::boost::shared_ptr< Chart2ModelContact >   m_spChart2ModelContact;
 };
 
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-/*
-class WrappedD3DSceneShadeModeProperty : public WrappedProperty
-{
-public:
-    WrappedD3DSceneShadeModeProperty();
-    virtual ~WrappedD3DSceneShadeModeProperty();
-
-    virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-};
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-class WrappedD3DScenePerspectiveProperty : public WrappedProperty
-{
-public:
-    WrappedD3DScenePerspectiveProperty();
-    virtual ~WrappedD3DScenePerspectiveProperty();
-
-    virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-};
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-class WrappedD3DSceneAmbientColorProperty : public WrappedProperty
-{
-public:
-    WrappedD3DSceneAmbientColorProperty();
-    virtual ~WrappedD3DSceneAmbientColorProperty();
-
-    virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-};
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-class WrappedD3DSceneLightColorProperty : public WrappedProperty
-{
-public:
-    WrappedD3DSceneLightColorProperty( sal_Int32 nLightNumber );
-    virtual ~WrappedD3DSceneLightColorProperty();
-
-    virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-private:
-    sal_Int32 m_nLightIndex;
-};
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-class WrappedD3DSceneLightDirectionProperty : public WrappedProperty
-{
-public:
-    WrappedD3DSceneLightDirectionProperty( sal_Int32 nLightNumber );
-    virtual ~WrappedD3DSceneLightDirectionProperty();
-
-    virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-private:
-    sal_Int32 m_nLightIndex;
-};
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-class WrappedD3DSceneLightOnProperty : public WrappedProperty
-{
-public:
-    WrappedD3DSceneLightOnProperty( sal_Int32 nLightNumber );
-    virtual ~WrappedD3DSceneLightOnProperty();
-
-    virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-private:
-    sal_Int32 m_nLightIndex;
-};
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-class WrappedD3DSceneDistanceProperty : public WrappedProperty
-{
-public:
-    WrappedD3DSceneDistanceProperty();
-    virtual ~WrappedD3DSceneDistanceProperty();
-
-    virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-};
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-class WrappedD3DSceneShadowSlantProperty : public WrappedProperty
-{
-public:
-    WrappedD3DSceneShadowSlantProperty();
-    virtual ~WrappedD3DSceneShadowSlantProperty();
-
-    virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-};
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-class WrappedD3DSceneFocalLengthProperty : public WrappedProperty
-{
-public:
-    WrappedD3DSceneFocalLengthProperty();
-    virtual ~WrappedD3DSceneFocalLengthProperty();
-
-    virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-};
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-class WrappedD3DSceneTwoSidedLightingProperty : public WrappedProperty
-{
-public:
-    WrappedD3DSceneTwoSidedLightingProperty();
-    virtual ~WrappedD3DSceneTwoSidedLightingProperty();
-
-    virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-};
-
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-//----------------------------------------------------------------------------------------------------------------------
-
-class WrappedD3DCameraGeometryProperty : public WrappedProperty
-{
-public:
-    WrappedD3DCameraGeometryProperty ();
-    virtual ~WrappedD3DCameraGeometryProperty ();
-
-    virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
-    virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
-                        throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-};
-*/
-
-
 } //namespace wrapper
 } //namespace chart
 //.............................................................................

chart2/source/controller/chartapiwrapper/WrappedStatisticProperties.cxx

         if( !xErrorBarProperties.is() )
         {
             // todo: use a valid context
-            xErrorBarProperties = new ::chart::ErrorBar( uno::Reference< uno::XComponentContext >() );
+            xErrorBarProperties = ::chart::createErrorBar( uno::Reference< uno::XComponentContext >() );
             //default in new and old api are different
             xErrorBarProperties->setPropertyValue( C2U( "ShowPositiveError" ), uno::makeAny(sal_Bool(sal_False)) );
             xErrorBarProperties->setPropertyValue( C2U( "ShowNegativeError" ), uno::makeAny(sal_Bool(sal_False)) );

chart2/source/controller/dialogs/DataBrowser.cxx

 
 namespace
 {
-void lcl_setNumberFormat(
-    SvNumberFormatter * pNumFormatter, long nFmt,
-    double fData, String & rOutString )
-{
-    short eType = pNumFormatter->GetType( nFmt );
-
-    // change nFmt to an editable format (without loss of information)
-    if( eType == NUMBERFORMAT_CURRENCY )	// for currencies just display decimals
-    {
-        nFmt = pNumFormatter->GetStandardIndex();
-    }
-    else
-    {
-        const SvNumberformat* pFormat = pNumFormatter->GetEntry( nFmt );
-        if( pFormat )
-        {
-            LanguageType eLanguage = pFormat->GetLanguage();
-            nFmt = pNumFormatter->GetStandardFormat( nFmt, eType, eLanguage );
-        }
-        // else: format is 'standard'
-    }
-
-    // format string to an editable format (without loss of information)
-    Color* pDummy = NULL;
-    pNumFormatter->GetOutputString( fData, nFmt, rOutString, &pDummy );
-}
-
 sal_Int32 lcl_getRowInData( long nRow )
 {
     return static_cast< sal_Int32 >( nRow );
     sal_Int32 GetEndColumn() const;
 
     void Show();
-    void Hide();
 
     /** call this before destroying the class.  This notifies the listeners to
         changes of the edit field for the series name.
     m_spColorBar->Show();
 }
 
-void SeriesHeader::Hide()
-{
-    m_spSymbol->Hide();
-    m_spSeriesName->Hide();
-    m_spColorBar->Hide();
-}
-
 void SeriesHeader::SetEditChangedHdl( const Link & rLink )
 {
     m_aChangeLink = rLink;
             {
                 (*aIt)->SetPixelPosX( nStartPos + 2 );
                 (*aIt)->SetPixelWidth( nCurrentPos - nStartPos - 3 );
-//                 (*aIt)->Show();
             }
             else
                 // do not hide, to get focus events. Move outside the dialog for "hiding"
                 (*aIt)->SetPixelPosX( nMaxPos + 42 );
-//                 (*aIt)->Hide();
             ++aIt;
         }
     }

chart2/source/controller/dialogs/DataBrowserModel.cxx

 {
     OUString aResult( lcl_getRole( xLSeq ));
     if( aResult.getLength())
-        aResult = chart::DialogModel::ConvertRoleFromInternalToUI( aResult );
+        aResult = ::chart::DialogModel::ConvertRoleFromInternalToUI( aResult );
     return aResult;
 }
 
     {
         if( rLeft.m_xLabeledDataSequence.is() && rRight.m_xLabeledDataSequence.is())
         {
-            return chart::DialogModel::GetRoleIndexForSorting( lcl_getRole( rLeft.m_xLabeledDataSequence )) <
-                chart::DialogModel::GetRoleIndexForSorting( lcl_getRole( rRight.m_xLabeledDataSequence ));
+            return DialogModel::GetRoleIndexForSorting( lcl_getRole( rLeft.m_xLabeledDataSequence )) <
+                DialogModel::GetRoleIndexForSorting( lcl_getRole( rRight.m_xLabeledDataSequence ));
         }
         return true;
     }
         tDataColumn aCategories;
         aCategories.m_xLabeledDataSequence.set( xCategories );
         if( lcl_ShowCategoriesAsDataLabel( xDiagram ))
-            aCategories.m_aUIRoleName = chart::DialogModel::GetRoleDataLabel();
+            aCategories.m_aUIRoleName = DialogModel::GetRoleDataLabel();
         else
             aCategories.m_aUIRoleName = lcl_getUIRoleName( xCategories );
         aCategories.m_eCellType = TEXT;

chart2/source/controller/dialogs/DialogModel.cxx

 #include "macros.hxx"
 #include "Strings.hrc"
 #include "ResId.hxx"
-#include "LabeledDataSequence.hxx"
-#include "CachedDataSequence.hxx"
 #include "ContainerHelper.hxx"
 #include "CommonFunctors.hxx"
 #include "ControllerLockGuard.hxx"
             {
                 if( aRoles[nI].equals( lcl_aLabelRole ))
                     continue;
-                Reference< data::XDataSequence > xSeq( new ::chart::CachedDataSequence());
+                Reference< data::XDataSequence > xSeq( ::chart::DataSourceHelper::createCachedDataSequence() );
                 lcl_SetSequenceRole( xSeq, aRoles[nI] );
                 // assert that aRoleOfSeqForSeriesLabel is part of the mandatory roles
                 if( aRoles[nI].equals( aRoleOfSeqForSeriesLabel ))
                 {
-                    Reference< data::XDataSequence > xLabel( new ::chart::CachedDataSequence( aLabel ));
+                    Reference< data::XDataSequence > xLabel( ::chart::DataSourceHelper::createCachedDataSequence( aLabel ));
                     lcl_SetSequenceRole( xLabel, lcl_aLabelRole );
-                    aNewSequences.push_back( new ::chart::LabeledDataSequence( xSeq, xLabel ));
+                    aNewSequences.push_back( ::chart::DataSourceHelper::createLabeledDataSequence( xSeq, xLabel ));
                 }
                 else
-                    aNewSequences.push_back( new ::chart::LabeledDataSequence( xSeq ));
+                    aNewSequences.push_back( ::chart::DataSourceHelper::createLabeledDataSequence( xSeq ));
             }
 
             for(nI=0; nI<aOptRoles.getLength(); ++nI)
             {
                 if( aOptRoles[nI].equals( lcl_aLabelRole ))
                     continue;
-                Reference< data::XDataSequence > xSeq( new ::chart::CachedDataSequence());
+                Reference< data::XDataSequence > xSeq( ::chart::DataSourceHelper::createCachedDataSequence());
                 lcl_SetSequenceRole( xSeq, aOptRoles[nI] );
-                aNewSequences.push_back( new ::chart::LabeledDataSequence( xSeq ));
+                aNewSequences.push_back( ::chart::DataSourceHelper::createLabeledDataSequence( xSeq ));
             }
 
             xSink->setData( ContainerToSequence( aNewSequences ));
 }
 
 // static
-OUString DialogModel::ConvertRoleFromUIToInternal( const OUString & rRoleString )
-{
-    return lcl_ConvertRole( rRoleString, false );
-}
-
-// static
 OUString DialogModel::GetRoleDataLabel()
 {
     return OUString( String( ::chart::SchResId( STR_OBJECT_DATALABELS )));
     return 0;
 }
 
-// static
-bool DialogModel::isSeriesValid(
-        const Reference< chart2::XDataSeries > & xSeries,
-        const OUString & aRoleOfSequenceForLabel,
-        const Reference< chart2::XChartType > & xChartType )
-{
-    if( ! (xSeries.is() && xChartType.is()))
-        return false;
-
-    try
-    {
-        sal_Int32 nFoundRoles = 0;
-        DialogModel::tRolesWithRanges aRolesWithRanges;
-        Reference< data::XDataSource > xSource( xSeries, uno::UNO_QUERY_THROW );
-        const Sequence< Reference< data::XLabeledDataSequence > > aSeq( xSource->getDataSequences());
-        ::std::copy( aSeq.getConstArray(), aSeq.getConstArray() + aSeq.getLength(),
-                     lcl_RolesWithRangeAppend( aRolesWithRanges, aRoleOfSequenceForLabel ));
-        const Sequence< OUString > aRoles( xChartType->getSupportedMandatoryRoles());
-        for( sal_Int32 nI = 0; nI < aRoles.getLength(); ++nI )
-            if( !aRoles[nI].equals( lcl_aLabelRole ) && aRolesWithRanges.find( aRoles[nI] ) != aRolesWithRanges.end() )
-                ++nFoundRoles;
-        // strong condition: all mandatory roles exist (except the label)
-//             if( !aRoles[nI].equals( lcl_aLabelRole ) && aRolesWithRanges.find( aRoles[nI] ) == aRolesWithRanges.end() )
-//                 return false;
-        // weak condition: one mandatory role exists
-        if( aRoles.getLength() > 0 && nFoundRoles == 0 )
-            return false;
-    }
-    catch( uno::Exception & ex )
-    {
-        ASSERT_EXCEPTION( ex );
-        return false;
-    }
-
-    return true;
-}
-
 // private methods
 
 void DialogModel::createBackup()

chart2/source/controller/dialogs/DialogModel.hxx

     void startControllerLockTimer();
 
     static ::rtl::OUString ConvertRoleFromInternalToUI( const ::rtl::OUString & rRoleString );
-    static ::rtl::OUString ConvertRoleFromUIToInternal( const ::rtl::OUString & rRoleString );
     static ::rtl::OUString GetRoleDataLabel();
 
     // pass a role string (not translated) and get an index that serves for
     // relative ordering, to get e.g. x-values and y-values in the right order
     static sal_Int32 GetRoleIndexForSorting( const ::rtl::OUString & rInternalRoleString );
 
-    static bool isSeriesValid(
-        const ::com::sun::star::uno::Reference<
-            ::com::sun::star::chart2::XDataSeries > & xSeries,
-        const ::rtl::OUString & aRoleOfSequenceForLabel,
-        const ::com::sun::star::uno::Reference<
-            ::com::sun::star::chart2::XChartType > & xChartType );
-
 private:
     ::com::sun::star::uno::Reference<
             ::com::sun::star::chart2::XChartDocument >

chart2/source/controller/dialogs/Strings.src

 {
 	Text [ en-US ] = "Illumination" ;
 };
+
+String STR_PAGE_ASIAN
+{
+	Text [ en-US ] = "Asian Typography" ;
+};
+
 String STR_OBJECT_AVERAGE_LINE_WITH_PARAMETERS
 {
     Text [ en-US ] = "Mean value line with value %AVERAGE_VALUE and standard deviation %STD_DEVIATION";

chart2/source/controller/dialogs/Strings_Statistic.src

 //------------------------------------------------------------------------
 //------------------------------------------------------------------------
 
-String STR_REGRESSION_NONE
-{
-	Text [ en-US ] = "No Regression" ;
-};
 String STR_REGRESSION_LINEAR
 {
 	Text [ en-US ] = "Linear Regression" ;

chart2/source/controller/dialogs/dlg_InsertDataLabel.cxx

 	m_aBtnOK(this, SchResId(BTN_OK)),
 	m_aBtnCancel(this, SchResId(BTN_CANCEL)),
 	m_aBtnHelp(this, SchResId(BTN_HELP)),
-    m_apDataLabelResources( new DataLabelResources(this,rInAttrs,false) ),
+    m_apDataLabelResources( new DataLabelResources(this,rInAttrs) ),
 	m_rInAttrs(rInAttrs)
 {
 	FreeResource();

chart2/source/controller/dialogs/dlg_InsertDataLabel.src

 	HelpID = SID_INSERT_DESCRIPTION ;
 	OutputSize = TRUE ;
 	SVLook = TRUE ;
-	Size = MAP_APPFONT ( 200 , 136 ) ;
+	Size = MAP_APPFONT ( 316 , 185 ) ;
 	Moveable = TRUE ;
-	BUTTONS_OK_CANCEL_HELP_STACKED(144)
+	BUTTONS_OK_CANCEL_HELP_STACKED(260)
 	RESOURCE_DATALABEL( 6, 7 )
 };

chart2/source/controller/dialogs/dlg_ObjectProperties.cxx

 #include <svx/flagsdef.hxx>
 #include <svx/numinf.hxx>
 
+#include <svtools/cjkoptions.hxx>
+
 //.............................................................................
 namespace chart
 {
 
     this->SetText( pDialogParameter->getLocalizedName() );
 
+    SvtCJKOptions aCJKOptions;
+
     switch (eObjectType)
     {
         case OBJECTTYPE_TITLE:
             AddTabPage(RID_SVXPAGE_CHAR_NAME, String(SchResId(STR_PAGE_CHARACTERS)));
             AddTabPage(RID_SVXPAGE_CHAR_EFFECTS, String(SchResId(STR_PAGE_FONT_EFFECTS)));
             AddTabPage(TP_ALIGNMENT, String(SchResId(STR_PAGE_ALIGNMENT)), SchAlignmentTabPage::Create, NULL);
+            if( aCJKOptions.IsAsianTypographyEnabled() )
+                AddTabPage(RID_SVXPAGE_PARA_ASIAN, String(SchResId(STR_PAGE_ASIAN)));
             break;
 
         case OBJECTTYPE_LEGEND:
             AddTabPage(RID_SVXPAGE_CHAR_NAME, String(SchResId(STR_PAGE_CHARACTERS)));
             AddTabPage(RID_SVXPAGE_CHAR_EFFECTS, String(SchResId(STR_PAGE_FONT_EFFECTS)));
             AddTabPage(TP_LEGEND_POS, String(SchResId(STR_PAGE_POSITION)), SchLegendPosTabPage::Create, NULL);
+            if( aCJKOptions.IsAsianTypographyEnabled() )
+                AddTabPage(RID_SVXPAGE_PARA_ASIAN, String(SchResId(STR_PAGE_ASIAN)));
             break;
 
         case OBJECTTYPE_DATA_SERIES:
             }
             AddTabPage(RID_SVXPAGE_CHAR_NAME, String(SchResId(STR_PAGE_CHARACTERS)));
             AddTabPage(RID_SVXPAGE_CHAR_EFFECTS, String(SchResId(STR_PAGE_FONT_EFFECTS)));
+            if( aCJKOptions.IsAsianTypographyEnabled() )
+                AddTabPage(RID_SVXPAGE_PARA_ASIAN, String(SchResId(STR_PAGE_ASIAN)));
             AddTabPage(TP_DATA_DESCR, String(SchResId(STR_OBJECT_DATALABELS)), DataLabelsTabPage::Create, NULL);
 //             if( m_pParameter->HasStatisticProperties() )
 //                 AddTabPage(TP_YERRORBAR, String(SchResId(STR_PAGE_YERROR_BARS)), ErrorBarsTabPage::Create, NULL);
                 AddTabPage(RID_SVXPAGE_NUMBERFORMAT, String(SchResId(STR_PAGE_NUMBERS)));
             AddTabPage(RID_SVXPAGE_CHAR_NAME, String(SchResId(STR_PAGE_CHARACTERS)));
             AddTabPage(RID_SVXPAGE_CHAR_EFFECTS, String(SchResId(STR_PAGE_FONT_EFFECTS)));
+            if( aCJKOptions.IsAsianTypographyEnabled() )
+                AddTabPage(RID_SVXPAGE_PARA_ASIAN, String(SchResId(STR_PAGE_ASIAN)));
             break;
         }
 

chart2/source/controller/dialogs/hidother.src

 hidspecial HID_SCH_TEXTDIRECTION {HelpId= HID_SCH_TEXTDIRECTION; };
 hidspecial HID_SCH_TEXTDIRECTION_TITLE {HelpId= HID_SCH_TEXTDIRECTION_TITLE; };
 hidspecial HID_SCH_TEXTDIRECTION_EQUATION {HelpId= HID_SCH_TEXTDIRECTION_EQUATION; };
+hidspecial HID_SCH_DATALABEL_ROTATION_KNOB {HelpId= HID_SCH_DATALABEL_ROTATION_KNOB; };
+hidspecial HID_SCH_DATALABEL_ROTATION_EDIT {HelpId= HID_SCH_DATALABEL_ROTATION_EDIT; };
 
 hidspecial HID_SCH_TITLE_MAIN {HelpId= HID_SCH_TITLE_MAIN; };
 hidspecial HID_SCH_TITLE_SUB {HelpId= HID_SCH_TITLE_SUB; };

chart2/source/controller/dialogs/res_DataLabel.cxx

 
 }//end anonymous namespace
 
-DataLabelResources::DataLabelResources( Window* pWindow, const SfxItemSet& rInAttrs, bool bShowTextDirectionListBox )
+DataLabelResources::DataLabelResources( Window* pWindow, const SfxItemSet& rInAttrs )
     : m_aCBNumber(pWindow, SchResId(CB_VALUE_AS_NUMBER)),
     m_aPB_NumberFormatForValue(pWindow, SchResId(PB_NUMBERFORMAT)),
     m_aCBPercent(pWindow, SchResId(CB_VALUE_AS_PERCENTAGE)),
     m_aSeparatorResources(pWindow),
     m_aFT_LabelPlacement(pWindow, SchResId(FT_LABEL_PLACEMENT)),
     m_aLB_LabelPlacement(pWindow, SchResId(LB_LABEL_PLACEMENT)),
+    m_aFL_Rotate(pWindow, SchResId(FL_LABEL_ROTATE)),
+    m_aDC_Dial(pWindow, SchResId(CT_LABEL_DIAL)),
+    m_aFT_Degrees(pWindow, SchResId(FT_LABEL_DEGREES)),
+    m_aNF_Degrees(pWindow, SchResId(NF_LABEL_DEGREES)),
     m_aFT_TextDirection(pWindow, SchResId(FT_LABEL_TEXTDIR)),
     m_aLB_TextDirection(pWindow, SchResId(LB_LABEL_TEXTDIR), &m_aFT_TextDirection),
     m_pNumberFormatter(0),
     m_pWindow(pWindow),
     m_pPool(rInAttrs.GetPool())
 {
+    //fill label placement list
     std::map< sal_Int32, XubString > aPlacementToStringMap;
     for( sal_Int32 nEnum=0; nEnum<m_aLB_LabelPlacement.GetEntryCount(); ++nEnum )
         aPlacementToStringMap[nEnum]=m_aLB_LabelPlacement.GetEntry(static_cast<USHORT>(nEnum));
         aAvailabelPlacementList =((const SfxIntegerListItem*)pPoolItem)->GetConstSequence();
 
     m_aLB_LabelPlacement.Clear();
-
     for( sal_Int32 nN=0; nN<aAvailabelPlacementList.getLength(); ++nN )
     {
         USHORT nListBoxPos = static_cast<USHORT>( nN );
         m_aListBoxToPlacementMap[nListBoxPos]=nPlacement;
         m_aLB_LabelPlacement.InsertEntry( aPlacementToStringMap[nPlacement] );
     }
-
     m_aLB_LabelPlacement.SetDropDownLineCount(m_aLB_LabelPlacement.GetEntryCount());
 
+    //replace&resize push buttons and resize checkboxes
+    Size aControlDistance( pWindow->LogicToPixel( Size(RSC_SP_CTRL_DESC_X,RSC_SP_CTRL_GROUP_Y), MapMode(MAP_APPFONT) ) );
+    long nPBWidth = ::std::max( m_aPB_NumberFormatForPercent.CalcMinimumSize().getWidth(), m_aPB_NumberFormatForValue.CalcMinimumSize().getWidth() )
+        + 20; //the min with is to small to fit, hm... so add alittle
+    long nCBXWidth = ::std::max( m_aCBNumber.CalcMinimumSize().getWidth(), m_aCBPercent.CalcMinimumSize().getWidth() );
+    long nNewPBXPos = m_aCBNumber.GetPosPixel().X() + nCBXWidth + aControlDistance.Width();
+    long nPageWidth = pWindow->LogicToPixel( Size(260,185), MapMode(MAP_APPFONT) ).getWidth();
+    if( nNewPBXPos + nPBWidth > nPageWidth )
+    {
+        if( nPBWidth > nPageWidth/2 )
+            nPBWidth = nPageWidth/2;
+        nNewPBXPos = nPageWidth-nPBWidth;
+        nCBXWidth = nPageWidth-m_aCBNumber.GetPosPixel().X()-nPBWidth-aControlDistance.Width();
+    }
+    m_aPB_NumberFormatForValue.SetPosPixel( Point( nNewPBXPos, m_aPB_NumberFormatForValue.GetPosPixel().Y() ) );
+    m_aPB_NumberFormatForPercent.SetPosPixel( Point( nNewPBXPos, m_aPB_NumberFormatForPercent.GetPosPixel().Y() ) );
+
     Size aPBSize( m_aPB_NumberFormatForPercent.GetSizePixel() );
-    long nMinWidth = ::std::max( m_aPB_NumberFormatForPercent.CalcMinimumSize().getWidth(), m_aPB_NumberFormatForValue.CalcMinimumSize().getWidth() );
-    aPBSize.setWidth( nMinWidth+20 );//the min with is to small to fit, hm... so add alittle
-
+    aPBSize.setWidth( nPBWidth );
     m_aPB_NumberFormatForValue.SetSizePixel( aPBSize );
     m_aPB_NumberFormatForPercent.SetSizePixel( aPBSize );
 
-    long nWantedMinRightBorder = m_aPB_NumberFormatForPercent.GetPosPixel().X() +  m_aPB_NumberFormatForPercent.GetSizePixel().Width() - 1;
-
+    Size aCBSize( m_aCBNumber.GetSizePixel() );
+    aCBSize.setWidth(nCBXWidth);
+    m_aCBNumber.SetSizePixel( aCBSize );
+    m_aCBPercent.SetSizePixel( aCBSize );
+    
+    //place and align separator and label placement listboxes
     Size aSize( m_aFT_LabelPlacement.GetSizePixel() );
     aSize.setWidth( m_aFT_LabelPlacement.CalcMinimumSize().getWidth() );
     m_aFT_LabelPlacement.SetSizePixel(aSize);
 
-    Size aControlDistance( pWindow->LogicToPixel( Size(RSC_SP_CTRL_DESC_X,RSC_SP_CTRL_GROUP_Y), MapMode(MAP_APPFONT) ) );
-    long nWantedMinLeftBorder = m_aFT_LabelPlacement.GetPosPixel().X() + aSize.getWidth () + aControlDistance.Width();;
-
+    long nWantedMinLeftBorder = m_aFT_LabelPlacement.GetPosPixel().X() + aSize.getWidth () + aControlDistance.Width();
+    
     m_aSeparatorResources.PositionBelowControl(m_aCBSymbol);
-    m_aSeparatorResources.AlignListBoxWidthAndXPos( nWantedMinLeftBorder, nWantedMinRightBorder, m_aLB_LabelPlacement.CalcMinimumSize().getWidth() );
+    m_aSeparatorResources.AlignListBoxWidthAndXPos( nWantedMinLeftBorder, -1, m_aLB_LabelPlacement.CalcMinimumSize().getWidth() );
     m_aSeparatorResources.Show(true);
 
     aSize = m_aLB_LabelPlacement.GetSizePixel();
     aSize.setWidth( m_aSeparatorResources.GetCurrentListBoxSize().getWidth() );
     m_aLB_LabelPlacement.SetSizePixel(aSize);
+    m_aLB_LabelPlacement.SetPosPixel( Point( m_aSeparatorResources.GetCurrentListBoxPosition().X(), m_aLB_LabelPlacement.GetPosPixel().Y() ) );
 
-    long nYDiff = m_aFT_LabelPlacement.GetPosPixel().Y() - m_aLB_LabelPlacement.GetPosPixel().Y();
-    Point aPos( m_aSeparatorResources.GetCurrentListBoxPosition() );
-    aPos.Y() = m_aSeparatorResources.GetBottom();
-    aPos.Y() += aControlDistance.Height();
-    m_aLB_LabelPlacement.SetPosPixel(aPos);
-
-    aPos.X() = m_aFT_LabelPlacement.GetPosPixel().X();
-    aPos.Y() += nYDiff;
-    m_aFT_LabelPlacement.SetPosPixel(aPos);
-
-    // hide "text direction" listbox is specified by caller
-    if( !bShowTextDirectionListBox )
-    {
-        m_aFT_TextDirection.Hide();
-        m_aLB_TextDirection.Hide();
-    }
-    // move "text direction" listbox down below "label placement" listbox
-    long nNewY = m_aLB_LabelPlacement.GetPosPixel().Y() + m_aLB_LabelPlacement.GetSizePixel().Height() + aControlDistance.Height();
-    nYDiff = nNewY - m_aLB_TextDirection.GetPosPixel().Y();
-    m_aFT_TextDirection.SetPosPixel( m_aFT_TextDirection.GetPosPixel() + Point( 0, nYDiff ) );
-    m_aLB_TextDirection.SetPosPixel( m_aLB_TextDirection.GetPosPixel() + Point( 0, nYDiff ) );
-
+    //some click handler
     m_aPB_NumberFormatForValue.SetClickHdl( LINK( this, DataLabelResources, NumberFormatDialogHdl ) );
     m_aPB_NumberFormatForPercent.SetClickHdl( LINK( this, DataLabelResources, NumberFormatDialogHdl ) );
     m_aCBNumber.SetClickHdl( LINK( this, DataLabelResources, CheckHdl ));
 
     m_bNumberFormatMixedState = !lcl_ReadNumberFormatFromItemSet( rInAttrs, SID_ATTR_NUMBERFORMAT_VALUE, SID_ATTR_NUMBERFORMAT_SOURCE, m_nNumberFormatForValue, m_bSourceFormatForValue, m_bSourceFormatMixedState );
     m_bPercentFormatMixedState = !lcl_ReadNumberFormatFromItemSet( rInAttrs, SCHATTR_PERCENT_NUMBERFORMAT_VALUE, SCHATTR_PERCENT_NUMBERFORMAT_SOURCE, m_nNumberFormatForPercent, m_bSourceFormatForPercent , m_bPercentSourceMixedState);
+
+    m_aDC_Dial.SetLinkedField( &m_aNF_Degrees );
 }
 
 DataLabelResources::~DataLabelResources()
 
     m_aPB_NumberFormatForValue.Enable( m_pNumberFormatter && m_aCBNumber.IsChecked() );
     m_aPB_NumberFormatForPercent.Enable( m_pNumberFormatter && m_aCBPercent.IsChecked() );
+
+    bool bEnableRotation = ( m_aCBNumber.IsChecked() || m_aCBPercent.IsChecked() || m_aCBCategory.IsChecked() );
+    m_aFL_Rotate.Enable( bEnableRotation );
+    m_aDC_Dial.Enable( bEnableRotation );
+    m_aFT_Degrees.Enable( bEnableRotation );
+    m_aNF_Degrees.Enable( bEnableRotation );
 }
 
 BOOL DataLabelResources::FillItemSet( SfxItemSet& rOutAttrs ) const
     if( m_aLB_TextDirection.GetSelectEntryCount() > 0 )
         rOutAttrs.Put( SfxInt32Item( EE_PARA_WRITINGDIR, m_aLB_TextDirection.GetSelectEntryValue() ) );
 
+    if( m_aDC_Dial.IsVisible() )
+    {
+        sal_Int32 nDegrees = m_aDC_Dial.GetRotation();
+        rOutAttrs.Put(SfxInt32Item( SCHATTR_TEXT_DEGREES, nDegrees ) );
+    }
+
     return TRUE;
 }
 
     if( rInAttrs.GetItemState(EE_PARA_WRITINGDIR, TRUE, &pPoolItem ) == SFX_ITEM_SET )
         m_aLB_TextDirection.SelectEntryValue( SvxFrameDirection(((const SvxFrameDirectionItem*)pPoolItem)->GetValue()) );
 
+    if( rInAttrs.GetItemState( SCHATTR_TEXT_DEGREES, TRUE, &pPoolItem ) == SFX_ITEM_SET )
+    {
+        sal_Int32 nDegrees = static_cast< const SfxInt32Item * >( pPoolItem )->GetValue();
+        m_aDC_Dial.SetRotation( nDegrees );
+    }
+    else
+    m_aDC_Dial.SetRotation( 0 );
+
     EnableControls();
 }
 

chart2/source/controller/dialogs/res_DataLabel.hxx

 #include <svtools/itemset.hxx>
 #include "TextDirectionListBox.hxx"
 
+#include <svx/dialcontrol.hxx>
+
 class SvNumberFormatter;
 
 //.............................................................................
 class DataLabelResources
 {
 public:
-    DataLabelResources( Window* pParent, const SfxItemSet& rInAttrs, bool bShowTextDirectionListBox );
+    DataLabelResources( Window* pParent, const SfxItemSet& rInAttrs );
     virtual ~DataLabelResources();
 
     BOOL FillItemSet(SfxItemSet& rOutAttrs) const;
     FixedText           m_aFT_LabelPlacement;
     ListBox             m_aLB_LabelPlacement;
 
+    FixedLine           m_aFL_Rotate;
+    svx::DialControl    m_aDC_Dial;
+    FixedText           m_aFT_Degrees;
+    NumericField        m_aNF_Degrees;
+
     FixedText               m_aFT_TextDirection;
     TextDirectionListBox    m_aLB_TextDirection;
 

chart2/source/controller/dialogs/res_DataLabel_IDs.hrc

 #define FT_LABEL_TEXTDIR    31
 #define LB_LABEL_TEXTDIR    32
 
+#define FL_LABEL_ROTATE  40
+#define CT_LABEL_DIAL    40
+#define FT_LABEL_DEGREES 40
+#define NF_LABEL_DEGREES 40

chart2/source/controller/dialogs/res_DataLabel_tmpl.hrc

 { \
     HelpID = HID_SCH_PB_NUMBERFORMAT; \
     TabStop = TRUE ; \
-    Pos = MAP_APPFONT ( xpos+8 , ypos+12  ) ; \
+    Pos = MAP_APPFONT ( xpos+100 , ypos-3  ) ; \
     Size = MAP_APPFONT ( 100 , 14 ) ; \