include/oox/drawingml/chart/axisconverter.hxx | 15 +++++++++++++++ include/oox/drawingml/chart/axismodel.hxx | 2 +- oox/source/drawingml/chart/axiscontext.cxx | 2 +- oox/source/drawingml/chart/axisconverter.cxx | 24 ++++++++++++++++++++++++ oox/source/drawingml/chart/axismodel.cxx | 3 +-- oox/source/token/properties.txt | 2 ++ 6 files changed, 44 insertions(+), 4 deletions(-)
New commits: commit 3ec8d33e46046b13abad2daf850e23f896ad05bc Author: sushil_shinde <[email protected]> Date: Wed Jan 29 13:33:23 2014 +0530 fdo#74112 Added properties to store chart display unit information in import. - added display unit properties. - added axis display unit converter class. Change-Id: Iaa1f9a175b1109c8da7321a1567a04fb981568d1 Reviewed-on: https://gerrit.libreoffice.org/7720 Reviewed-by: Markus Mohrhard <[email protected]> Tested-by: Markus Mohrhard <[email protected]> diff --git a/include/oox/drawingml/chart/axisconverter.hxx b/include/oox/drawingml/chart/axisconverter.hxx index e107057..7224b97 100644 --- a/include/oox/drawingml/chart/axisconverter.hxx +++ b/include/oox/drawingml/chart/axisconverter.hxx @@ -33,6 +33,21 @@ namespace chart { // ============================================================================ +struct AxisDispUnitsModel; + +class AxisDispUnitsConverter : public ConverterBase< AxisDispUnitsModel > +{ +public: + explicit AxisDispUnitsConverter( + const ConverterRoot& rParent, + AxisDispUnitsModel& rModel ); + virtual ~AxisDispUnitsConverter(); + + /** Creates a chart2 axis and inserts it into the passed coordinate system. */ + void convertFromModel( + const ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XAxis >& rxAxis); +}; + struct AxisModel; class TypeGroupConverter; diff --git a/include/oox/drawingml/chart/axismodel.hxx b/include/oox/drawingml/chart/axismodel.hxx index dd543d0..d29af7f 100644 --- a/include/oox/drawingml/chart/axismodel.hxx +++ b/include/oox/drawingml/chart/axismodel.hxx @@ -41,7 +41,7 @@ struct AxisDispUnitsModel LayoutRef mxLayout; /// Layout/position of the axis units label. TextRef mxText; /// Text source of the axis units label. double mfCustomUnit; /// Custom unit size on value axis. - sal_Int32 mnBuiltInUnit; /// Built-in unit on value axis. + OUString mnBuiltInUnit; /// Built-in unit on value axis. explicit AxisDispUnitsModel(); ~AxisDispUnitsModel(); diff --git a/oox/source/drawingml/chart/axiscontext.cxx b/oox/source/drawingml/chart/axiscontext.cxx index cf023f2..2160354 100644 --- a/oox/source/drawingml/chart/axiscontext.cxx +++ b/oox/source/drawingml/chart/axiscontext.cxx @@ -52,7 +52,7 @@ ContextHandlerRef AxisDispUnitsContext::onCreateContext( sal_Int32 nElement, con switch( nElement ) { case C_TOKEN( builtInUnit ): - mrModel.mnBuiltInUnit = rAttribs.getToken( XML_val, XML_thousands ); + mrModel.mnBuiltInUnit = rAttribs.getString( XML_val, "thousands" ); return 0; case C_TOKEN( custUnit ): mrModel.mfCustomUnit = rAttribs.getDouble( XML_val, 0.0 ); diff --git a/oox/source/drawingml/chart/axisconverter.cxx b/oox/source/drawingml/chart/axisconverter.cxx index 5efa7d9..23e4829 100644 --- a/oox/source/drawingml/chart/axisconverter.cxx +++ b/oox/source/drawingml/chart/axisconverter.cxx @@ -342,6 +342,10 @@ void AxisConverter::convertFromModel( const Reference< XCoordinateSystem >& rxCo TitleConverter aTitleConv( *this, *mrModel.mxTitle ); aTitleConv.convertFromModel( xTitled, "Axis Title", OBJECTTYPE_AXISTITLE, nAxesSetIdx, nAxisIdx ); } + + // axis data unit label ----------------------------------------------- + AxisDispUnitsConverter axisDispUnitsConverter (*this, mrModel.mxDispUnits.getOrCreate()); + axisDispUnitsConverter.convertFromModel(xAxis); } catch( Exception& ) { @@ -360,6 +364,26 @@ void AxisConverter::convertFromModel( const Reference< XCoordinateSystem >& rxCo // ============================================================================ +AxisDispUnitsConverter::AxisDispUnitsConverter( const ConverterRoot& rParent, AxisDispUnitsModel& rModel ) : + ConverterBase< AxisDispUnitsModel >( rParent, rModel ) +{ +} + +AxisDispUnitsConverter::~AxisDispUnitsConverter() +{ +} + +void AxisDispUnitsConverter::convertFromModel( const Reference< XAxis >& rxAxis ) +{ + PropertySet aPropSet( rxAxis ); + if (!(mrModel.mnBuiltInUnit).isEmpty() ) + { + aPropSet.setProperty(PROP_DisplayUnits, true); + aPropSet.setProperty( PROP_BuiltInUnit, mrModel.mnBuiltInUnit ); + } +} +// ============================================================================ + } // namespace chart } // namespace drawingml } // namespace oox diff --git a/oox/source/drawingml/chart/axismodel.cxx b/oox/source/drawingml/chart/axismodel.cxx index b628146..e91c2ec 100644 --- a/oox/source/drawingml/chart/axismodel.cxx +++ b/oox/source/drawingml/chart/axismodel.cxx @@ -26,8 +26,7 @@ namespace chart { // ============================================================================ AxisDispUnitsModel::AxisDispUnitsModel() : - mfCustomUnit( 0.0 ), - mnBuiltInUnit( XML_TOKEN_INVALID ) + mfCustomUnit( 0.0 ) { } diff --git a/oox/source/token/properties.txt b/oox/source/token/properties.txt index 7080d9b..7a41af2 100644 --- a/oox/source/token/properties.txt +++ b/oox/source/token/properties.txt @@ -37,6 +37,7 @@ BorderWidth BottomBorder BottomBorderDistance BottomMargin +BuiltInUnit BulletChar BulletColor BulletFont @@ -135,6 +136,7 @@ DialogLibraries DisableComplexChartTypes DisableDataTableDialog DisplayLabels +DisplayUnits DrillDownOnDoubleClick Dropdown Duration _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
