chart2/source/controller/chartapiwrapper/DataSeriesPointWrapper.cxx |   35 
+++++++++-
 include/xmloff/xmltoken.hxx                                         |    4 +
 xmloff/source/chart/PropertyMap.hxx                                 |    7 ++
 xmloff/source/chart/PropertyMaps.cxx                                |   21 
++++++
 xmloff/source/core/xmltoken.cxx                                     |    4 +
 5 files changed, 70 insertions(+), 1 deletion(-)

New commits:
commit de58ba7b1ccb90633ca3e78187997f17b2a64d9e
Author: Kohei Yoshida <kohei.yosh...@collabora.com>
Date:   Sat Jul 26 14:44:38 2014 -0400

    bnc#885825: Handle ODF import and export of data label border properties.
    
    Change-Id: Ic8c7bc873768008537cd52a3fd4b11031b403139
    (cherry picked from commit 6c2c974dd3f0b21a23bc3bc5560487d28bbe0fad)
    Reviewed-on: https://gerrit.libreoffice.org/10563
    Reviewed-by: Markus Mohrhard <markus.mohrh...@googlemail.com>
    Tested-by: Markus Mohrhard <markus.mohrh...@googlemail.com>

diff --git 
a/chart2/source/controller/chartapiwrapper/DataSeriesPointWrapper.cxx 
b/chart2/source/controller/chartapiwrapper/DataSeriesPointWrapper.cxx
index f3c150e..1dc0cc9 100644
--- a/chart2/source/controller/chartapiwrapper/DataSeriesPointWrapper.cxx
+++ b/chart2/source/controller/chartapiwrapper/DataSeriesPointWrapper.cxx
@@ -80,7 +80,11 @@ enum
     PROP_SERIES_DATAPOINT_LABEL_PLACEMENT,
     //other series properties
     PROP_SERIES_ATTACHED_AXIS,
-    PROP_SERIES_DATAPOINT_TEXT_ROTATION
+    PROP_SERIES_DATAPOINT_TEXT_ROTATION,
+    PROP_SERIES_DATAPOINT_LABEL_BORDER_STYLE,
+    PROP_SERIES_DATAPOINT_LABEL_BORDER_WIDTH,
+    PROP_SERIES_DATAPOINT_LABEL_BORDER_COLOR,
+    PROP_SERIES_DATAPOINT_LABEL_BORDER_TRANS
 };
 
 void lcl_AddPropertiesToVector_PointProperties(
@@ -142,6 +146,35 @@ void lcl_AddPropertiesToVector_PointProperties(
                   cppu::UnoType<sal_Int32>::get(),
                   beans::PropertyAttribute::BOUND
                   | beans::PropertyAttribute::MAYBEDEFAULT ));
+
+    rOutProperties.push_back(
+        Property( CHART_UNONAME_LABEL_BORDER_STYLE,
+                  PROP_SERIES_DATAPOINT_LABEL_BORDER_STYLE,
+                  cppu::UnoType<drawing::LineStyle>::get(),
+                  beans::PropertyAttribute::BOUND
+                  | beans::PropertyAttribute::MAYBEDEFAULT ));
+
+    rOutProperties.push_back(
+        Property( CHART_UNONAME_LABEL_BORDER_WIDTH,
+                  PROP_SERIES_DATAPOINT_LABEL_BORDER_WIDTH,
+                  cppu::UnoType<sal_Int32>::get(),
+                  beans::PropertyAttribute::BOUND
+                  | beans::PropertyAttribute::MAYBEDEFAULT ));
+
+    rOutProperties.push_back(
+        Property( CHART_UNONAME_LABEL_BORDER_COLOR,
+                  PROP_SERIES_DATAPOINT_LABEL_BORDER_COLOR,
+                  cppu::UnoType<sal_Int32>::get(),
+                  beans::PropertyAttribute::BOUND
+                  | beans::PropertyAttribute::MAYBEVOID         // "maybe auto"
+                  | beans::PropertyAttribute::MAYBEDEFAULT ));
+
+    rOutProperties.push_back(
+        Property( CHART_UNONAME_LABEL_BORDER_TRANS,
+                  PROP_SERIES_DATAPOINT_LABEL_BORDER_TRANS,
+                  cppu::UnoType<sal_Int16>::get(),
+                  beans::PropertyAttribute::BOUND
+                  | beans::PropertyAttribute::MAYBEDEFAULT ));
 }
 
 void lcl_AddPropertiesToVector_SeriesOnly(
diff --git a/include/xmloff/xmltoken.hxx b/include/xmloff/xmltoken.hxx
index 9e206d8..e03dcfd 100644
--- a/include/xmloff/xmltoken.hxx
+++ b/include/xmloff/xmltoken.hxx
@@ -1067,6 +1067,10 @@ namespace xmloff { namespace token {
         XML_LABEL_RANGE,
         XML_LABEL_RANGES,
         XML_LABEL_STRING,
+        XML_LABEL_STROKE,
+        XML_LABEL_STROKE_COLOR,
+        XML_LABEL_STROKE_OPACITY,
+        XML_LABEL_STROKE_WIDTH,
         XML_LAMBDA,
         XML_LANDSCAPE,
         XML_LANGUAGE,
diff --git a/xmloff/source/chart/PropertyMap.hxx 
b/xmloff/source/chart/PropertyMap.hxx
index c6b63e5..a876c2b 100644
--- a/xmloff/source/chart/PropertyMap.hxx
+++ b/xmloff/source/chart/PropertyMap.hxx
@@ -53,6 +53,8 @@
 #define XML_SCH_TYPE_AXIS_POSITION_VALUE    ( XML_SCH_TYPES_START + 14 )
 #define XML_SCH_TYPE_AXIS_LABEL_POSITION    ( XML_SCH_TYPES_START + 15 )
 #define XML_SCH_TYPE_TICK_MARK_POSITION     ( XML_SCH_TYPES_START + 16 )
+#define XML_SCH_TYPE_LABEL_BORDER_STYLE     ( XML_SCH_TYPES_START + 17 )
+#define XML_SCH_TYPE_LABEL_BORDER_OPACITY   ( XML_SCH_TYPES_START + 18 )
 
 // context ids
 #define XML_SCH_CONTEXT_USER_SYMBOL                 ( XML_SCH_CTF_START + 0 )
@@ -146,6 +148,11 @@ const XMLPropertyMapEntry aXMLChartPropMap[] =
     // OpenGL 3D chart flags
     MAP_ENTRY_ODF_EXT( "RoundedEdge", LO_EXT, XML_ROUNDED_EDGE, XML_TYPE_BOOL),
 
+    MAP_ENTRY_ODF_EXT( "LabelBorderColor", LO_EXT, XML_LABEL_STROKE_COLOR, 
XML_TYPE_COLOR ),
+    MAP_ENTRY_ODF_EXT( "LabelBorderStyle", LO_EXT, XML_LABEL_STROKE, 
XML_SCH_TYPE_LABEL_BORDER_STYLE ),
+    MAP_ENTRY_ODF_EXT( "LabelBorderTransparency", LO_EXT, 
XML_LABEL_STROKE_OPACITY, XML_SCH_TYPE_LABEL_BORDER_OPACITY ),
+    MAP_ENTRY_ODF_EXT( "LabelBorderWidth", LO_EXT, XML_LABEL_STROKE_WIDTH, 
XML_TYPE_MEASURE ),
+
     MAP_ENTRY( "ScaleText", CHART, XML_SCALE_TEXT, XML_TYPE_BOOL ),
 
     // spline settings
diff --git a/xmloff/source/chart/PropertyMaps.cxx 
b/xmloff/source/chart/PropertyMaps.cxx
index 5642414..4cb8fa0 100644
--- a/xmloff/source/chart/PropertyMaps.cxx
+++ b/xmloff/source/chart/PropertyMaps.cxx
@@ -34,6 +34,7 @@
 #include "XMLTextOrientationHdl.hxx"
 #include "XMLSymbolTypePropertyHdl.hxx"
 #include "XMLAxisPositionPropertyHdl.hxx"
+#include "../draw/propimp0.hxx"
 
 #include <xmloff/EnumPropertyHdl.hxx>
 #include <xmloff/XMLConstantsPropertyHandler.hxx>
@@ -66,6 +67,18 @@
 using namespace com::sun::star;
 using namespace ::xmloff::token;
 
+namespace {
+
+SvXMLEnumMapEntry const aLineStyleMap[] =
+{
+    { XML_NONE,     drawing::LineStyle_NONE },
+    { XML_SOLID,    drawing::LineStyle_SOLID },
+    { XML_DASH,     drawing::LineStyle_DASH },
+    { XML_TOKEN_INVALID, 0 }
+};
+
+}
+
 // the following class implementations are in this file:
 
 // * XMLChartPropHdlFactory
@@ -154,6 +167,14 @@ const XMLPropertyHandler* 
XMLChartPropHdlFactory::GetPropertyHandler( sal_Int32
                 pHdl = new XMLEnumPropertyHdl( 
aXMLChartMissingValueTreatmentEnumMap,
                                                
::cppu::UnoType<sal_Int32>::get() );
                 break;
+            case XML_SCH_TYPE_LABEL_BORDER_STYLE:
+                pHdl = new XMLEnumPropertyHdl(aLineStyleMap, 
cppu::UnoType<drawing::LineStyle>::get());
+            break;
+            case XML_SCH_TYPE_LABEL_BORDER_OPACITY:
+                pHdl = new XMLOpacityPropertyHdl(NULL);
+            break;
+            default:
+                ;
         }
         if( pHdl )
             PutHdlCache( nType, pHdl );
diff --git a/xmloff/source/core/xmltoken.cxx b/xmloff/source/core/xmltoken.cxx
index 09027cd..6c4c098 100644
--- a/xmloff/source/core/xmltoken.cxx
+++ b/xmloff/source/core/xmltoken.cxx
@@ -1072,6 +1072,10 @@ namespace xmloff { namespace token {
         TOKEN( "label-range",                     XML_LABEL_RANGE ),
         TOKEN( "label-ranges",                    XML_LABEL_RANGES ),
         TOKEN( "label-string",                    XML_LABEL_STRING ),
+        TOKEN( "label-stroke",                    XML_LABEL_STROKE ),
+        TOKEN( "label-stroke-color",              XML_LABEL_STROKE_COLOR ),
+        TOKEN( "label-stroke-opacity",            XML_LABEL_STROKE_OPACITY ),
+        TOKEN( "label-stroke-width",              XML_LABEL_STROKE_WIDTH ),
         TOKEN( "lambda",                          XML_LAMBDA ),
         TOKEN( "landscape",                       XML_LANDSCAPE ),
         TOKEN( "language",                        XML_LANGUAGE ),
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to