drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx | 39 + drawinglayer/source/dumper/EnhancedShapeDumper.cxx | 454 +++++++++++++++++- drawinglayer/source/dumper/XShapeDumper.cxx | 10 3 files changed, 487 insertions(+), 16 deletions(-)
New commits: commit a68f47f6e817c86cc7eac5e7b5dfe5e114e80ad7 Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 15:32:32 2012 +0200 Added dumping of RadiusRangeMinimum & RadiusRangeMaximum properties Change-Id: I8ba86df74939d1267c8be622d29c8fdcea9cdb19 diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index e2f43da..a93a524 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -114,6 +114,8 @@ public: void dumpRangeXMaximumAsElement(com::sun::star::drawing::EnhancedCustomShapeParameter aRangeXMaximum); void dumpRangeYMinimumAsElement(com::sun::star::drawing::EnhancedCustomShapeParameter aRangeYMinimum); void dumpRangeYMaximumAsElement(com::sun::star::drawing::EnhancedCustomShapeParameter aRangeXMaximum); + void dumpRadiusRangeMinimumAsElement(com::sun::star::drawing::EnhancedCustomShapeParameter aRadiusRangeMinimum); + void dumpRadiusRangeMaximumAsElement(com::sun::star::drawing::EnhancedCustomShapeParameter aRadiusRangeMaximum); private: xmlTextWriterPtr xmlWriter; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index cf8eced..5f55913 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -700,6 +700,18 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeHandleService(uno::Reference< b if(anotherAny >>= aRangeYMaximum) dumpRangeYMaximumAsElement(aRangeYMaximum); } + { + uno::Any anotherAny = xPropSet->getPropertyValue("RadiusRangeMinimum"); + drawing::EnhancedCustomShapeParameter aRadiusRangeMinimum; + if(anotherAny >>= aRadiusRangeMinimum) + dumpRadiusRangeMinimumAsElement(aRadiusRangeMinimum); + } + { + uno::Any anotherAny = xPropSet->getPropertyValue("RadiusRangeMaximum"); + drawing::EnhancedCustomShapeParameter aRadiusRangeMaximum; + if(anotherAny >>= aRadiusRangeMaximum) + dumpRadiusRangeMaximumAsElement(aRadiusRangeMaximum); + } } void EnhancedShapeDumper::dumpSwitchedAsAttribute(sal_Bool bSwitched) @@ -785,3 +797,17 @@ void EnhancedShapeDumper::dumpRangeYMaximumAsElement(drawing::EnhancedCustomShap xmlTextWriterEndElement( xmlWriter ); } +void EnhancedShapeDumper::dumpRadiusRangeMinimumAsElement(drawing::EnhancedCustomShapeParameter aRadiusRangeMinimum) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "RadiusRangeMinimum" )); + dumpEnhancedCustomShapeParameter(aRadiusRangeMinimum); + xmlTextWriterEndElement( xmlWriter ); +} + +void EnhancedShapeDumper::dumpRadiusRangeMaximumAsElement(drawing::EnhancedCustomShapeParameter aRadiusRangeMaximum) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "RadiusRangeMaximum" )); + dumpEnhancedCustomShapeParameter(aRadiusRangeMaximum); + xmlTextWriterEndElement( xmlWriter ); +} + commit 60d911c2b58fc33298bb1633ba890fc5d1f979ad Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 15:29:38 2012 +0200 Added dumping of RangeYMinimum & RangeYMaximum properties Change-Id: I9ce489487676bd3182c6bdd4ce3969544d40c2ae diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index a98e685..e2f43da 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -112,6 +112,8 @@ public: void dumpRefRAsAttribute(sal_Int32 aRefR); void dumpRangeXMinimumAsElement(com::sun::star::drawing::EnhancedCustomShapeParameter aRangeXMinimum); void dumpRangeXMaximumAsElement(com::sun::star::drawing::EnhancedCustomShapeParameter aRangeXMaximum); + void dumpRangeYMinimumAsElement(com::sun::star::drawing::EnhancedCustomShapeParameter aRangeYMinimum); + void dumpRangeYMaximumAsElement(com::sun::star::drawing::EnhancedCustomShapeParameter aRangeXMaximum); private: xmlTextWriterPtr xmlWriter; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index e2e6d64..cf8eced 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -688,6 +688,18 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeHandleService(uno::Reference< b if(anotherAny >>= aRangeXMaximum) dumpRangeXMaximumAsElement(aRangeXMaximum); } + { + uno::Any anotherAny = xPropSet->getPropertyValue("RangeYMinimum"); + drawing::EnhancedCustomShapeParameter aRangeYMinimum; + if(anotherAny >>= aRangeYMinimum) + dumpRangeYMinimumAsElement(aRangeYMinimum); + } + { + uno::Any anotherAny = xPropSet->getPropertyValue("RangeYMaximum"); + drawing::EnhancedCustomShapeParameter aRangeYMaximum; + if(anotherAny >>= aRangeYMaximum) + dumpRangeYMaximumAsElement(aRangeYMaximum); + } } void EnhancedShapeDumper::dumpSwitchedAsAttribute(sal_Bool bSwitched) @@ -759,4 +771,17 @@ void EnhancedShapeDumper::dumpRangeXMaximumAsElement(drawing::EnhancedCustomShap xmlTextWriterEndElement( xmlWriter ); } +void EnhancedShapeDumper::dumpRangeYMinimumAsElement(drawing::EnhancedCustomShapeParameter aRangeYMinimum) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "RangeYMinimum" )); + dumpEnhancedCustomShapeParameter(aRangeYMinimum); + xmlTextWriterEndElement( xmlWriter ); +} + +void EnhancedShapeDumper::dumpRangeYMaximumAsElement(drawing::EnhancedCustomShapeParameter aRangeYMaximum) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "RangeYMaximum" )); + dumpEnhancedCustomShapeParameter(aRangeYMaximum); + xmlTextWriterEndElement( xmlWriter ); +} commit 5c53eb7092a39b40f7ed054a9683dcd848144692 Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 15:26:33 2012 +0200 Added dumping of RangeXMinimum & RangeXMaximum properties Change-Id: I5e5648a8aa4f8dd8942b87e36e5a85879d3ff0e8 diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index 322c613..a98e685 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -110,6 +110,8 @@ public: void dumpRefYAsAttribute(sal_Int32 aRefY); void dumpRefAngleAsAttribute(sal_Int32 aRefAngle); void dumpRefRAsAttribute(sal_Int32 aRefR); + void dumpRangeXMinimumAsElement(com::sun::star::drawing::EnhancedCustomShapeParameter aRangeXMinimum); + void dumpRangeXMaximumAsElement(com::sun::star::drawing::EnhancedCustomShapeParameter aRangeXMaximum); private: xmlTextWriterPtr xmlWriter; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 622b26e..e2e6d64 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -676,6 +676,18 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeHandleService(uno::Reference< b if(anotherAny >>= aRefR) dumpRefRAsAttribute(aRefR); } + { + uno::Any anotherAny = xPropSet->getPropertyValue("RangeXMinimum"); + drawing::EnhancedCustomShapeParameter aRangeXMinimum; + if(anotherAny >>= aRangeXMinimum) + dumpRangeXMinimumAsElement(aRangeXMinimum); + } + { + uno::Any anotherAny = xPropSet->getPropertyValue("RangeXMaximum"); + drawing::EnhancedCustomShapeParameter aRangeXMaximum; + if(anotherAny >>= aRangeXMaximum) + dumpRangeXMaximumAsElement(aRangeXMaximum); + } } void EnhancedShapeDumper::dumpSwitchedAsAttribute(sal_Bool bSwitched) @@ -733,4 +745,18 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeParameter(drawing::EnhancedCust xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("type"), "%" SAL_PRIdINT32, aType); } +void EnhancedShapeDumper::dumpRangeXMinimumAsElement(drawing::EnhancedCustomShapeParameter aRangeXMinimum) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "RangeXMinimum" )); + dumpEnhancedCustomShapeParameter(aRangeXMinimum); + xmlTextWriterEndElement( xmlWriter ); +} + +void EnhancedShapeDumper::dumpRangeXMaximumAsElement(drawing::EnhancedCustomShapeParameter aRangeXMaximum) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "RangeXMaximum" )); + dumpEnhancedCustomShapeParameter(aRangeXMaximum); + xmlTextWriterEndElement( xmlWriter ); +} + commit 3f27493909e471267934bd1093ab64d342ace636 Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 15:19:57 2012 +0200 improval - Enhanced...ParameterPair() now use Enhanced...Parameter() Change-Id: Ib19d92241c6fcd0edc00680bd876f43dac8bd5c3 diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 3d20747..622b26e 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -194,28 +194,12 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeParameterPair(drawing::Enhanced { { xmlTextWriterStartElement(xmlWriter, BAD_CAST( "First" )); - uno::Any aAny = aParameterPair.First.Value; - rtl::OUString sValue; - if(aAny >>= sValue) - { - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("value"), "%s", - rtl::OUStringToOString(sValue, RTL_TEXTENCODING_UTF8).getStr()); - } - sal_Int32 aType = aParameterPair.First.Type; - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("type"), "%" SAL_PRIdINT32, aType); + dumpEnhancedCustomShapeParameter(aParameterPair.First); xmlTextWriterEndElement( xmlWriter ); } { xmlTextWriterStartElement(xmlWriter, BAD_CAST( "Second" )); - uno::Any aAny = aParameterPair.Second.Value; - rtl::OUString sValue; - if(aAny >>= sValue) - { - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("value"), "%s", - rtl::OUStringToOString(sValue, RTL_TEXTENCODING_UTF8).getStr()); - } - sal_Int32 aType = aParameterPair.First.Type; - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("type"), "%" SAL_PRIdINT32, aType); + dumpEnhancedCustomShapeParameter(aParameterPair.Second); xmlTextWriterEndElement( xmlWriter ); } } commit bce9a5fd9247dbd053c28099e7eff7d7c405140a Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 15:12:57 2012 +0200 Added auxiliary method for dumping EnhancedCustomShapeParameter Change-Id: Icef3d19c36224f4afd1b1a08c08630e5d6522bf6 diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index 72c3948..322c613 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -40,6 +40,7 @@ #include <com/sun/star/drawing/EnhancedCustomShapeAdjustmentValue.hpp> #include <com/sun/star/beans/PropertyValue.hpp> #include <com/sun/star/beans/PropertyValues.hpp> +#include <com/sun/star/drawing/EnhancedCustomShapeParameter.hpp> #ifndef EnhancedShapeDumper_hxx #define EnhancedShapeDumper_hxx @@ -58,6 +59,7 @@ public: void dumpEnhancedCustomShapeParameterPair(com::sun::star::drawing::EnhancedCustomShapeParameterPair aParameterPair); void dumpDirection3D(com::sun::star::drawing::Direction3D aDirection3D); void dumpPropertyValueAsElement(com::sun::star::beans::PropertyValue aPropertyValue); + void dumpEnhancedCustomShapeParameter(com::sun::star::drawing::EnhancedCustomShapeParameter aParameter); // EnhancedCustomShapeExtrusion.idl void dumpEnhancedCustomShapeExtrusionService(com::sun::star::uno::Reference< com::sun::star::beans::XPropertySet > xPropSet); diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index e3efe68..3d20747 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -736,5 +736,17 @@ void EnhancedShapeDumper::dumpRefRAsAttribute(sal_Int32 aRefR) xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("refR"), "%" SAL_PRIdINT32, aRefR); } +void EnhancedShapeDumper::dumpEnhancedCustomShapeParameter(drawing::EnhancedCustomShapeParameter aParameter) +{ + uno::Any aAny = aParameter.Value; + rtl::OUString sValue; + if(aAny >>= sValue) + { + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("value"), "%s", + rtl::OUStringToOString(sValue, RTL_TEXTENCODING_UTF8).getStr()); + } + sal_Int32 aType = aParameter.Type; + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("type"), "%" SAL_PRIdINT32, aType); +} commit 2065674ef5e3eaeccca29ee2260d9e07c4290d01 Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 15:10:02 2012 +0200 Added dumping of RefAngle & RefR properties Change-Id: Iabd1c00a33477ca92d7525f46ad5a9c732a35eee diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index d0bca44..72c3948 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -106,6 +106,8 @@ public: void dumpPolarAsElement(com::sun::star::drawing::EnhancedCustomShapeParameterPair aPolar); void dumpRefXAsAttribute(sal_Int32 aRefX); void dumpRefYAsAttribute(sal_Int32 aRefY); + void dumpRefAngleAsAttribute(sal_Int32 aRefAngle); + void dumpRefRAsAttribute(sal_Int32 aRefR); private: xmlTextWriterPtr xmlWriter; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 5dc4f3e..e3efe68 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -680,6 +680,18 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeHandleService(uno::Reference< b if(anotherAny >>= aRefY) dumpRefYAsAttribute(aRefY); } + { + uno::Any anotherAny = xPropSet->getPropertyValue("RefAngle"); + sal_Int32 aRefAngle; + if(anotherAny >>= aRefAngle) + dumpRefAngleAsAttribute(aRefAngle); + } + { + uno::Any anotherAny = xPropSet->getPropertyValue("RefR"); + sal_Int32 aRefR; + if(anotherAny >>= aRefR) + dumpRefRAsAttribute(aRefR); + } } void EnhancedShapeDumper::dumpSwitchedAsAttribute(sal_Bool bSwitched) @@ -714,4 +726,15 @@ void EnhancedShapeDumper::dumpRefYAsAttribute(sal_Int32 aRefY) xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("refY"), "%" SAL_PRIdINT32, aRefY); } +void EnhancedShapeDumper::dumpRefAngleAsAttribute(sal_Int32 aRefAngle) +{ + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("refAngle"), "%" SAL_PRIdINT32, aRefAngle); +} + +void EnhancedShapeDumper::dumpRefRAsAttribute(sal_Int32 aRefR) +{ + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("refR"), "%" SAL_PRIdINT32, aRefR); +} + + commit e6055b0a23e81c5bbdb105db9c280ed6a038c41f Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 15:07:36 2012 +0200 Added dumping of Polar, RefX & RefY properties Change-Id: I43e690fef87091bdb47a36d3365df35b7e1fcdcb diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index 9922f30..d0bca44 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -103,6 +103,9 @@ public: void dumpEnhancedCustomShapeHandleService(com::sun::star::uno::Reference< com::sun::star::beans::XPropertySet > xPropSet); void dumpSwitchedAsAttribute(sal_Bool bSwitched); void dumpPositionAsElement(com::sun::star::drawing::EnhancedCustomShapeParameterPair aPosition); + void dumpPolarAsElement(com::sun::star::drawing::EnhancedCustomShapeParameterPair aPolar); + void dumpRefXAsAttribute(sal_Int32 aRefX); + void dumpRefYAsAttribute(sal_Int32 aRefY); private: xmlTextWriterPtr xmlWriter; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 4306b22..5dc4f3e 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -662,6 +662,24 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeHandleService(uno::Reference< b if(anotherAny >>= aPosition) dumpPositionAsElement(aPosition); } + { + uno::Any anotherAny = xPropSet->getPropertyValue("Polar"); + drawing::EnhancedCustomShapeParameterPair aPolar; + if(anotherAny >>= aPolar) + dumpPolarAsElement(aPolar); + } + { + uno::Any anotherAny = xPropSet->getPropertyValue("RefX"); + sal_Int32 aRefX; + if(anotherAny >>= aRefX) + dumpRefXAsAttribute(aRefX); + } + { + uno::Any anotherAny = xPropSet->getPropertyValue("RefY"); + sal_Int32 aRefY; + if(anotherAny >>= aRefY) + dumpRefYAsAttribute(aRefY); + } } void EnhancedShapeDumper::dumpSwitchedAsAttribute(sal_Bool bSwitched) @@ -679,4 +697,21 @@ void EnhancedShapeDumper::dumpPositionAsElement(drawing::EnhancedCustomShapePara xmlTextWriterEndElement( xmlWriter ); } +void EnhancedShapeDumper::dumpPolarAsElement(drawing::EnhancedCustomShapeParameterPair aPolar) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "Polar" )); + dumpEnhancedCustomShapeParameterPair(aPolar); + xmlTextWriterEndElement( xmlWriter ); +} + +void EnhancedShapeDumper::dumpRefXAsAttribute(sal_Int32 aRefX) +{ + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("refX"), "%" SAL_PRIdINT32, aRefX); +} + +void EnhancedShapeDumper::dumpRefYAsAttribute(sal_Int32 aRefY) +{ + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("refY"), "%" SAL_PRIdINT32, aRefY); +} + commit af63dcd5139441a530a55913b8f3e15b884eeea1 Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 15:01:16 2012 +0200 Added dumping of Switched & Position properties Change-Id: Ice30218ba8ec66807089174058951c7607f9b6cb diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index c4786ac..9922f30 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -101,6 +101,8 @@ public: // EnhancedCustomShapeHandle.idl void dumpEnhancedCustomShapeHandleService(com::sun::star::uno::Reference< com::sun::star::beans::XPropertySet > xPropSet); + void dumpSwitchedAsAttribute(sal_Bool bSwitched); + void dumpPositionAsElement(com::sun::star::drawing::EnhancedCustomShapeParameterPair aPosition); private: xmlTextWriterPtr xmlWriter; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 5754601..4306b22 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -650,4 +650,33 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeHandleService(uno::Reference< b if(anotherAny >>= bMirroredY) dumpMirroredYAsAttribute(bMirroredY); } + { + uno::Any anotherAny = xPropSet->getPropertyValue("Switched"); + sal_Bool bSwitched; + if(anotherAny >>= bSwitched) + dumpSwitchedAsAttribute(bSwitched); + } + { + uno::Any anotherAny = xPropSet->getPropertyValue("Position"); + drawing::EnhancedCustomShapeParameterPair aPosition; + if(anotherAny >>= aPosition) + dumpPositionAsElement(aPosition); + } +} + +void EnhancedShapeDumper::dumpSwitchedAsAttribute(sal_Bool bSwitched) +{ + if(bSwitched) + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("switched"), "%s", "true"); + else + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("switched"), "%s", "false"); } + +void EnhancedShapeDumper::dumpPositionAsElement(drawing::EnhancedCustomShapeParameterPair aPosition) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "Position" )); + dumpEnhancedCustomShapeParameterPair(aPosition); + xmlTextWriterEndElement( xmlWriter ); +} + + commit 546d372db0c7fe644e54bf22a5c432b76923be65 Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 14:16:15 2012 +0200 Added dumping of MirroredX & MirroredY properties Change-Id: Ic580cf7c7c7d75c8f1fa0fbba13f53318b285932 diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 698dcd1..5754601 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -638,5 +638,16 @@ void EnhancedShapeDumper::dumpHandlesAsElement(uno::Sequence< beans::PropertyVal void EnhancedShapeDumper::dumpEnhancedCustomShapeHandleService(uno::Reference< beans::XPropertySet > xPropSet) { - + { + uno::Any anotherAny = xPropSet->getPropertyValue("MirroredX"); + sal_Bool bMirroredX; + if(anotherAny >>= bMirroredX) + dumpMirroredXAsAttribute(bMirroredX); + } + { + uno::Any anotherAny = xPropSet->getPropertyValue("MirroredY"); + sal_Bool bMirroredY; + if(anotherAny >>= bMirroredY) + dumpMirroredYAsAttribute(bMirroredY); + } } commit 7c41095ee9bdcee4a593acaeee40a39b953da3ab Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 14:14:38 2012 +0200 Added dumping of EnhancedCustomShapeHandle service Change-Id: I0b9d2b7abd966bf4d8e1cf579fdc0cf319978a6e diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index d58299a..c4786ac 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -89,8 +89,8 @@ public: void dumpEnhancedCustomShapeGeometryService(com::sun::star::uno::Reference< com::sun::star::beans::XPropertySet > xPropSet); void dumpTypeAsAttribute(rtl::OUString sType); void dumpViewBoxAsElement(com::sun::star::awt::Rectangle aViewBox); - void dumpMirroredXAsAttribute(sal_Bool bMirroredX); - void dumpMirroredYAsAttribute(sal_Bool bMirroredY); + void dumpMirroredXAsAttribute(sal_Bool bMirroredX); // also used in EnhancedCustomShapeHandle + void dumpMirroredYAsAttribute(sal_Bool bMirroredY); // also used in EnhancedCustomShapeHandle void dumpTextRotateAngleAsAttribute(double aTextRotateAngle); void dumpAdjustmentValuesAsElement(com::sun::star::uno::Sequence< com::sun::star::drawing::EnhancedCustomShapeAdjustmentValue> aAdjustmentValues); void dumpExtrusionAsElement(com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue > aExtrusion); @@ -99,6 +99,9 @@ public: void dumpEquationsAsElement(com::sun::star::uno::Sequence< rtl::OUString > aEquations); void dumpHandlesAsElement(com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValues > aHandles); + // EnhancedCustomShapeHandle.idl + void dumpEnhancedCustomShapeHandleService(com::sun::star::uno::Reference< com::sun::star::beans::XPropertySet > xPropSet); + private: xmlTextWriterPtr xmlWriter; }; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 8556b3a..698dcd1 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -632,3 +632,11 @@ void EnhancedShapeDumper::dumpHandlesAsElement(uno::Sequence< beans::PropertyVal xmlTextWriterEndElement( xmlWriter ); } +// ------------------------------------------------------ +// ---------- EnhancedCustomShapeHandle.idl ----------- +// ------------------------------------------------------ + +void EnhancedShapeDumper::dumpEnhancedCustomShapeHandleService(uno::Reference< beans::XPropertySet > xPropSet) +{ + +} diff --git a/drawinglayer/source/dumper/XShapeDumper.cxx b/drawinglayer/source/dumper/XShapeDumper.cxx index 24b9d12..c0dc89e 100644 --- a/drawinglayer/source/dumper/XShapeDumper.cxx +++ b/drawinglayer/source/dumper/XShapeDumper.cxx @@ -1823,6 +1823,11 @@ namespace { EnhancedShapeDumper enhancedDumper(xmlWriter); enhancedDumper.dumpEnhancedCustomShapeGeometryService(xPropSet); } + if(xServiceInfo->supportsService("com.sun.star.drawing.EnhancedCustomShapeHandle")) + { + EnhancedShapeDumper enhancedDumper(xmlWriter); + enhancedDumper.dumpEnhancedCustomShapeHandleService(xPropSet); + } } // end of the 'try' block catch (com::sun::star::beans::UnknownPropertyException &e) { commit 672871df7281a36cd526e699a6698e83009bb10a Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 04:07:27 2012 +0200 Added Equations & Handles properties Change-Id: I7912399d2864c964483bbbbc0a6afac3bfa64f66 diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index a7d26f6..d58299a 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -27,6 +27,7 @@ */ #include <libxml/xmlwriter.h> + #include <drawinglayer/drawinglayerdllapi.h> #include <com/sun/star/beans/XPropertySet.hpp> #include <com/sun/star/drawing/EnhancedCustomShapeParameterPair.hpp> @@ -38,6 +39,7 @@ #include <com/sun/star/awt/Rectangle.hpp> #include <com/sun/star/drawing/EnhancedCustomShapeAdjustmentValue.hpp> #include <com/sun/star/beans/PropertyValue.hpp> +#include <com/sun/star/beans/PropertyValues.hpp> #ifndef EnhancedShapeDumper_hxx #define EnhancedShapeDumper_hxx @@ -94,6 +96,8 @@ public: void dumpExtrusionAsElement(com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue > aExtrusion); void dumpPathAsElement(com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue > aPath); void dumpTextPathAsElement(com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue > aTextPath); + void dumpEquationsAsElement(com::sun::star::uno::Sequence< rtl::OUString > aEquations); + void dumpHandlesAsElement(com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValues > aHandles); private: xmlTextWriterPtr xmlWriter; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 63fea5f..8556b3a 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -451,6 +451,18 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeGeometryService(uno::Reference< if(anotherAny >>= aTextPath) dumpTextPathAsElement(aTextPath); } + { + uno::Any anotherAny = xPropSet->getPropertyValue("Equations"); + uno::Sequence< rtl::OUString > aEquations; + if(anotherAny >>= aEquations) + dumpEquationsAsElement(aEquations); + } + { + uno::Any anotherAny = xPropSet->getPropertyValue("Handles"); + uno::Sequence< beans::PropertyValues > aHandles; + if(anotherAny >>= aHandles) + dumpHandlesAsElement(aHandles); + } } void EnhancedShapeDumper::dumpTypeAsAttribute(rtl::OUString sType) { @@ -587,3 +599,36 @@ void EnhancedShapeDumper::dumpTextPathAsElement(uno::Sequence< beans::PropertyVa xmlTextWriterEndElement( xmlWriter ); } +void EnhancedShapeDumper::dumpEquationsAsElement(uno::Sequence< rtl::OUString > aEquations) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "Equations" )); + sal_Int32 nLength = aEquations.getLength(); + for (sal_Int32 i = 0; i < nLength; ++i) + { + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("name"), "%s", + rtl::OUStringToOString(aEquations[i], RTL_TEXTENCODING_UTF8).getStr()); + } + xmlTextWriterEndElement( xmlWriter ); +} + +// PropertyValues specifies a sequence of PropertyValue instances. +// so in this case it's a Sequence of a Sequence of a PropertyValue instances. +// Welcome to Sequenception again. +void EnhancedShapeDumper::dumpHandlesAsElement(uno::Sequence< beans::PropertyValues > aHandles) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "Handles" )); + sal_Int32 nSequenceLength = aHandles.getLength(); + for (sal_Int32 i = 0; i < nSequenceLength; ++i) + { + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "PropertyValues" )); + uno::Sequence< beans::PropertyValue > propertyValueSequence = aHandles[i]; + sal_Int32 nLength = propertyValueSequence.getLength(); + for (sal_Int32 j = 0; j < nLength; ++j) + { + dumpPropertyValueAsElement(propertyValueSequence[j]); + } + xmlTextWriterEndElement( xmlWriter ); + } + xmlTextWriterEndElement( xmlWriter ); +} + commit 3f35ffaa5c6ff2db7fb71e292b11fc5c1186ba88 Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 03:50:09 2012 +0200 Added Extrusion, Path & TextPath properties Change-Id: I46e7d6e0c83d8f988f2e5a5b9e7a10cbaef83958 diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index afa0d10..a7d26f6 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -91,6 +91,9 @@ public: void dumpMirroredYAsAttribute(sal_Bool bMirroredY); void dumpTextRotateAngleAsAttribute(double aTextRotateAngle); void dumpAdjustmentValuesAsElement(com::sun::star::uno::Sequence< com::sun::star::drawing::EnhancedCustomShapeAdjustmentValue> aAdjustmentValues); + void dumpExtrusionAsElement(com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue > aExtrusion); + void dumpPathAsElement(com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue > aPath); + void dumpTextPathAsElement(com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue > aTextPath); private: xmlTextWriterPtr xmlWriter; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 8c6df68..63fea5f 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -433,93 +433,77 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeGeometryService(uno::Reference< if(anotherAny >>= aAdjustmentValues) dumpAdjustmentValuesAsElement(aAdjustmentValues); } -} -void EnhancedShapeDumper::dumpTypeAsAttribute(rtl::OUString sType) { - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("type"), "%s", - rtl::OUStringToOString(sType, RTL_TEXTENCODING_UTF8).getStr()); + uno::Any anotherAny = xPropSet->getPropertyValue("Extrusion"); + uno::Sequence< beans::PropertyValue > aExtrusion; + if(anotherAny >>= aExtrusion) + dumpExtrusionAsElement(aExtrusion); } - -void EnhancedShapeDumper::dumpViewBoxAsElement(awt::Rectangle aViewBox) { - xmlTextWriterStartElement(xmlWriter, BAD_CAST( "ViewBox" )); - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("x"), "%" SAL_PRIdINT32, aViewBox.X); - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("y"), "%" SAL_PRIdINT32, aViewBox.Y); - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("width"), "%" SAL_PRIdINT32, aViewBox.Width); - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("height"), "%" SAL_PRIdINT32, aViewBox.Height); - xmlTextWriterEndElement( xmlWriter ); + uno::Any anotherAny = xPropSet->getPropertyValue("Path"); + uno::Sequence< beans::PropertyValue > aPath; + if(anotherAny >>= aPath) + dumpPathAsElement(aPath); } - -void EnhancedShapeDumper::dumpMirroredXAsAttribute(sal_Bool bMirroredX) { - if(bMirroredX) - xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredX"), "%s", "true"); - else - xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredX"), "%s", "false"); + uno::Any anotherAny = xPropSet->getPropertyValue("TextPath"); + uno::Sequence< beans::PropertyValue > aTextPath; + if(anotherAny >>= aTextPath) + dumpTextPathAsElement(aTextPath); } +} +void EnhancedShapeDumper::dumpTypeAsAttribute(rtl::OUString sType) +{ + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("type"), "%s", + rtl::OUStringToOString(sType, RTL_TEXTENCODING_UTF8).getStr()); +} + +void EnhancedShapeDumper::dumpViewBoxAsElement(awt::Rectangle aViewBox) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "ViewBox" )); + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("x"), "%" SAL_PRIdINT32, aViewBox.X); + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("y"), "%" SAL_PRIdINT32, aViewBox.Y); + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("width"), "%" SAL_PRIdINT32, aViewBox.Width); + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("height"), "%" SAL_PRIdINT32, aViewBox.Height); + xmlTextWriterEndElement( xmlWriter ); +} + +void EnhancedShapeDumper::dumpMirroredXAsAttribute(sal_Bool bMirroredX) +{ + if(bMirroredX) + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredX"), "%s", "true"); + else + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredX"), "%s", "false"); +} void EnhancedShapeDumper::dumpMirroredYAsAttribute(sal_Bool bMirroredY) - { - if(bMirroredY) - xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredY"), "%s", "true"); - else - xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredY"), "%s", "false"); - } +{ + if(bMirroredY) + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredY"), "%s", "true"); + else + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredY"), "%s", "false"); +} void EnhancedShapeDumper::dumpTextRotateAngleAsAttribute(double aTextRotateAngle) - { - xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("textRotateAngle"), "%f", aTextRotateAngle); - } +{ + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("textRotateAngle"), "%f", aTextRotateAngle); +} void EnhancedShapeDumper::dumpAdjustmentValuesAsElement(uno::Sequence< drawing::EnhancedCustomShapeAdjustmentValue> aAdjustmentValues) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "AdjustmentValues" )); + sal_Int32 nLength = aAdjustmentValues.getLength(); + for (sal_Int32 i = 0; i < nLength; ++i) { - xmlTextWriterStartElement(xmlWriter, BAD_CAST( "AdjustmentValues" )); - sal_Int32 nLength = aAdjustmentValues.getLength(); - for (sal_Int32 i = 0; i < nLength; ++i) - { - xmlTextWriterStartElement(xmlWriter, BAD_CAST( "EnhancedCustomShapeAdjustmentValue" )); - uno::Any aAny = aAdjustmentValues[i].Value; - rtl::OUString sValue; - if(aAny >>= sValue) - { - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("value"), "%s", - rtl::OUStringToOString(sValue, RTL_TEXTENCODING_UTF8).getStr()); - } - switch(aAdjustmentValues[i].State) - { - case beans::PropertyState_DIRECT_VALUE: - xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "DIRECT_VALUE"); - break; - case beans::PropertyState_DEFAULT_VALUE: - xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "DEFAULT_VALUE"); - break; - case beans::PropertyState_AMBIGUOUS_VALUE: - xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "AMBIGUOUS_VALUE"); - break; - default: - break; - } - xmlTextWriterEndElement( xmlWriter ); - } - xmlTextWriterEndElement( xmlWriter ); - } - -void EnhancedShapeDumper::dumpPropertyValueAsElement(beans::PropertyValue aPropertyValue) - { - xmlTextWriterStartElement(xmlWriter, BAD_CAST( "PropertyValue" )); - - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("name"), "%s", - rtl::OUStringToOString(aPropertyValue.Name, RTL_TEXTENCODING_UTF8).getStr()); - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("handle"), "%" SAL_PRIdINT32, aPropertyValue.Handle); - - uno::Any aAny = aPropertyValue.Value; + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "EnhancedCustomShapeAdjustmentValue" )); + uno::Any aAny = aAdjustmentValues[i].Value; rtl::OUString sValue; if(aAny >>= sValue) { xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("value"), "%s", rtl::OUStringToOString(sValue, RTL_TEXTENCODING_UTF8).getStr()); } - switch(aPropertyValue.State) + switch(aAdjustmentValues[i].State) { case beans::PropertyState_DIRECT_VALUE: xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "DIRECT_VALUE"); @@ -535,4 +519,71 @@ void EnhancedShapeDumper::dumpPropertyValueAsElement(beans::PropertyValue aPrope } xmlTextWriterEndElement( xmlWriter ); } + xmlTextWriterEndElement( xmlWriter ); +} + +void EnhancedShapeDumper::dumpPropertyValueAsElement(beans::PropertyValue aPropertyValue) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "PropertyValue" )); + + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("name"), "%s", + rtl::OUStringToOString(aPropertyValue.Name, RTL_TEXTENCODING_UTF8).getStr()); + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("handle"), "%" SAL_PRIdINT32, aPropertyValue.Handle); + + uno::Any aAny = aPropertyValue.Value; + rtl::OUString sValue; + if(aAny >>= sValue) + { + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("value"), "%s", + rtl::OUStringToOString(sValue, RTL_TEXTENCODING_UTF8).getStr()); + } + switch(aPropertyValue.State) + { + case beans::PropertyState_DIRECT_VALUE: + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "DIRECT_VALUE"); + break; + case beans::PropertyState_DEFAULT_VALUE: + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "DEFAULT_VALUE"); + break; + case beans::PropertyState_AMBIGUOUS_VALUE: + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "AMBIGUOUS_VALUE"); + break; + default: + break; + } + xmlTextWriterEndElement( xmlWriter ); +} + +void EnhancedShapeDumper::dumpExtrusionAsElement(uno::Sequence< beans::PropertyValue > aExtrusion) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "Extrusion" )); + sal_Int32 nLength = aExtrusion.getLength(); + for (sal_Int32 i = 0; i < nLength; ++i) + { + dumpPropertyValueAsElement(aExtrusion[i]); + } + xmlTextWriterEndElement( xmlWriter ); +} + +void EnhancedShapeDumper::dumpPathAsElement(uno::Sequence< beans::PropertyValue > aPath) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "Path" )); + sal_Int32 nLength = aPath.getLength(); + for (sal_Int32 i = 0; i < nLength; ++i) + { + dumpPropertyValueAsElement(aPath[i]); + } + xmlTextWriterEndElement( xmlWriter ); +} + +void EnhancedShapeDumper::dumpTextPathAsElement(uno::Sequence< beans::PropertyValue > aTextPath) +{ + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "TextPath" )); + sal_Int32 nLength = aTextPath.getLength(); + for (sal_Int32 i = 0; i < nLength; ++i) + { + dumpPropertyValueAsElement(aTextPath[i]); + } + xmlTextWriterEndElement( xmlWriter ); +} commit b6258225d5803b20ace9220374f0b5814b10c780 Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 03:42:50 2012 +0200 Added auxiliary method for dumping PropertyValue Change-Id: Ie060ea82bda32bd62ea0fa82da037a47a78f3bf9 diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index 375864a..afa0d10 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -37,6 +37,7 @@ #include <com/sun/star/awt/Rectangle.hpp> #include <com/sun/star/drawing/EnhancedCustomShapeAdjustmentValue.hpp> +#include <com/sun/star/beans/PropertyValue.hpp> #ifndef EnhancedShapeDumper_hxx #define EnhancedShapeDumper_hxx @@ -54,6 +55,7 @@ public: // auxiliary functions void dumpEnhancedCustomShapeParameterPair(com::sun::star::drawing::EnhancedCustomShapeParameterPair aParameterPair); void dumpDirection3D(com::sun::star::drawing::Direction3D aDirection3D); + void dumpPropertyValueAsElement(com::sun::star::beans::PropertyValue aPropertyValue); // EnhancedCustomShapeExtrusion.idl void dumpEnhancedCustomShapeExtrusionService(com::sun::star::uno::Reference< com::sun::star::beans::XPropertySet > xPropSet); diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 7336db7..8c6df68 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -504,3 +504,35 @@ void EnhancedShapeDumper::dumpAdjustmentValuesAsElement(uno::Sequence< drawing:: xmlTextWriterEndElement( xmlWriter ); } +void EnhancedShapeDumper::dumpPropertyValueAsElement(beans::PropertyValue aPropertyValue) + { + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "PropertyValue" )); + + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("name"), "%s", + rtl::OUStringToOString(aPropertyValue.Name, RTL_TEXTENCODING_UTF8).getStr()); + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("handle"), "%" SAL_PRIdINT32, aPropertyValue.Handle); + + uno::Any aAny = aPropertyValue.Value; + rtl::OUString sValue; + if(aAny >>= sValue) + { + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("value"), "%s", + rtl::OUStringToOString(sValue, RTL_TEXTENCODING_UTF8).getStr()); + } + switch(aPropertyValue.State) + { + case beans::PropertyState_DIRECT_VALUE: + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "DIRECT_VALUE"); + break; + case beans::PropertyState_DEFAULT_VALUE: + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "DEFAULT_VALUE"); + break; + case beans::PropertyState_AMBIGUOUS_VALUE: + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "AMBIGUOUS_VALUE"); + break; + default: + break; + } + xmlTextWriterEndElement( xmlWriter ); + } + commit 9b169646885bb1cc72a9228eb18f6c54cb0c276e Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 03:39:53 2012 +0200 Added dumping property AdjustmentValues Change-Id: Iac59e89f3d7dd5e75ca43b43c19639880fc2b3d5 diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index 42cdd21..375864a 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -36,6 +36,7 @@ #include <com/sun/star/drawing/Position3D.hpp> #include <com/sun/star/awt/Rectangle.hpp> +#include <com/sun/star/drawing/EnhancedCustomShapeAdjustmentValue.hpp> #ifndef EnhancedShapeDumper_hxx #define EnhancedShapeDumper_hxx @@ -87,6 +88,7 @@ public: void dumpMirroredXAsAttribute(sal_Bool bMirroredX); void dumpMirroredYAsAttribute(sal_Bool bMirroredY); void dumpTextRotateAngleAsAttribute(double aTextRotateAngle); + void dumpAdjustmentValuesAsElement(com::sun::star::uno::Sequence< com::sun::star::drawing::EnhancedCustomShapeAdjustmentValue> aAdjustmentValues); private: xmlTextWriterPtr xmlWriter; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index a79c8f4..7336db7 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -427,6 +427,12 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeGeometryService(uno::Reference< if(anotherAny >>= aTextRotateAngle) dumpTextRotateAngleAsAttribute(aTextRotateAngle); } + { + uno::Any anotherAny = xPropSet->getPropertyValue("AdjustmentValues"); + uno::Sequence< drawing::EnhancedCustomShapeAdjustmentValue> aAdjustmentValues; + if(anotherAny >>= aAdjustmentValues) + dumpAdjustmentValuesAsElement(aAdjustmentValues); + } } void EnhancedShapeDumper::dumpTypeAsAttribute(rtl::OUString sType) { @@ -465,4 +471,36 @@ void EnhancedShapeDumper::dumpTextRotateAngleAsAttribute(double aTextRotateAngle xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("textRotateAngle"), "%f", aTextRotateAngle); } +void EnhancedShapeDumper::dumpAdjustmentValuesAsElement(uno::Sequence< drawing::EnhancedCustomShapeAdjustmentValue> aAdjustmentValues) + { + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "AdjustmentValues" )); + sal_Int32 nLength = aAdjustmentValues.getLength(); + for (sal_Int32 i = 0; i < nLength; ++i) + { + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "EnhancedCustomShapeAdjustmentValue" )); + uno::Any aAny = aAdjustmentValues[i].Value; + rtl::OUString sValue; + if(aAny >>= sValue) + { + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("value"), "%s", + rtl::OUStringToOString(sValue, RTL_TEXTENCODING_UTF8).getStr()); + } + switch(aAdjustmentValues[i].State) + { + case beans::PropertyState_DIRECT_VALUE: + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "DIRECT_VALUE"); + break; + case beans::PropertyState_DEFAULT_VALUE: + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "DEFAULT_VALUE"); + break; + case beans::PropertyState_AMBIGUOUS_VALUE: + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("propertyState"), "%s", "AMBIGUOUS_VALUE"); + break; + default: + break; + } + xmlTextWriterEndElement( xmlWriter ); + } + xmlTextWriterEndElement( xmlWriter ); + } commit ddcadccf253273eea30c72402d2176d74f62c9c8 Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 03:34:19 2012 +0200 Added properties MirroredY & TextRotateAngle Change-Id: I46a6d47b7eeab91522c63364684532bc731f271e diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index 74f434f..42cdd21 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -85,6 +85,8 @@ public: void dumpTypeAsAttribute(rtl::OUString sType); void dumpViewBoxAsElement(com::sun::star::awt::Rectangle aViewBox); void dumpMirroredXAsAttribute(sal_Bool bMirroredX); + void dumpMirroredYAsAttribute(sal_Bool bMirroredY); + void dumpTextRotateAngleAsAttribute(double aTextRotateAngle); private: xmlTextWriterPtr xmlWriter; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 9497099..a79c8f4 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -415,6 +415,18 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeGeometryService(uno::Reference< if(anotherAny >>= bMirroredX) dumpMirroredXAsAttribute(bMirroredX); } + { + uno::Any anotherAny = xPropSet->getPropertyValue("MirroredY"); + sal_Bool bMirroredY; + if(anotherAny >>= bMirroredY) + dumpMirroredYAsAttribute(bMirroredY); + } + { + uno::Any anotherAny = xPropSet->getPropertyValue("TextRotateAngle"); + double aTextRotateAngle; + if(anotherAny >>= aTextRotateAngle) + dumpTextRotateAngleAsAttribute(aTextRotateAngle); + } } void EnhancedShapeDumper::dumpTypeAsAttribute(rtl::OUString sType) { @@ -440,4 +452,17 @@ void EnhancedShapeDumper::dumpMirroredXAsAttribute(sal_Bool bMirroredX) xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredX"), "%s", "false"); } +void EnhancedShapeDumper::dumpMirroredYAsAttribute(sal_Bool bMirroredY) + { + if(bMirroredY) + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredY"), "%s", "true"); + else + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredY"), "%s", "false"); + } + +void EnhancedShapeDumper::dumpTextRotateAngleAsAttribute(double aTextRotateAngle) + { + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("textRotateAngle"), "%f", aTextRotateAngle); + } + commit b075d9c4fb2e7978f4477d7409ee9c37a6f48b38 Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 03:30:51 2012 +0200 Added properties ViewBox & MirroredX Change-Id: I0ab8e656a46688f28cdaa095e54cf23a64cff83c diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index a461a88..74f434f 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -35,6 +35,8 @@ #include <com/sun/star/drawing/ProjectionMode.hpp> #include <com/sun/star/drawing/Position3D.hpp> +#include <com/sun/star/awt/Rectangle.hpp> + #ifndef EnhancedShapeDumper_hxx #define EnhancedShapeDumper_hxx @@ -81,6 +83,8 @@ public: // EnhancedCustomShapeGeometry.idl void dumpEnhancedCustomShapeGeometryService(com::sun::star::uno::Reference< com::sun::star::beans::XPropertySet > xPropSet); void dumpTypeAsAttribute(rtl::OUString sType); + void dumpViewBoxAsElement(com::sun::star::awt::Rectangle aViewBox); + void dumpMirroredXAsAttribute(sal_Bool bMirroredX); private: xmlTextWriterPtr xmlWriter; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 10f7572..9497099 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -403,9 +403,41 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeGeometryService(uno::Reference< if(anotherAny >>= sType) dumpTypeAsAttribute(sType); } + { + uno::Any anotherAny = xPropSet->getPropertyValue("ViewBox"); + awt::Rectangle aViewBox; + if(anotherAny >>= aViewBox) + dumpViewBoxAsElement(aViewBox); + } + { + uno::Any anotherAny = xPropSet->getPropertyValue("MirroredX"); + sal_Bool bMirroredX; + if(anotherAny >>= bMirroredX) + dumpMirroredXAsAttribute(bMirroredX); + } } void EnhancedShapeDumper::dumpTypeAsAttribute(rtl::OUString sType) { xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("type"), "%s", rtl::OUStringToOString(sType, RTL_TEXTENCODING_UTF8).getStr()); } + +void EnhancedShapeDumper::dumpViewBoxAsElement(awt::Rectangle aViewBox) + { + xmlTextWriterStartElement(xmlWriter, BAD_CAST( "ViewBox" )); + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("x"), "%" SAL_PRIdINT32, aViewBox.X); + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("y"), "%" SAL_PRIdINT32, aViewBox.Y); + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("width"), "%" SAL_PRIdINT32, aViewBox.Width); + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("height"), "%" SAL_PRIdINT32, aViewBox.Height); + xmlTextWriterEndElement( xmlWriter ); + } + +void EnhancedShapeDumper::dumpMirroredXAsAttribute(sal_Bool bMirroredX) + { + if(bMirroredX) + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredX"), "%s", "true"); + else + xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("mirroredX"), "%s", "false"); + } + + commit 4638c5aa1d4bc4088badc1b17d16205dbb44ea92 Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Wed Jul 4 03:20:19 2012 +0200 Added EnhancedCustomShapeGeometry service & Type property Change-Id: I38c60a10fc378a840f4bd267a9d6bec529906ca8 diff --git a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx index eaf7e9e..a461a88 100644 --- a/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx +++ b/drawinglayer/inc/drawinglayer/EnhancedShapeDumper.hxx @@ -78,6 +78,10 @@ public: void dumpOriginAsElement(com::sun::star::drawing::EnhancedCustomShapeParameterPair aOrigin); void dumpExtrusionColorAsAttribute(sal_Bool bExtrusionColor); + // EnhancedCustomShapeGeometry.idl + void dumpEnhancedCustomShapeGeometryService(com::sun::star::uno::Reference< com::sun::star::beans::XPropertySet > xPropSet); + void dumpTypeAsAttribute(rtl::OUString sType); + private: xmlTextWriterPtr xmlWriter; }; diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 3006e37..10f7572 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -391,3 +391,21 @@ void EnhancedShapeDumper::dumpExtrusionColorAsAttribute(sal_Bool bExtrusionColor xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST("extrusionColor"), "%s", "false"); } +// ------------------------------------------------------ +// ---------- EnhancedCustomShapeGeometry.idl ----------- +// ------------------------------------------------------ + +void EnhancedShapeDumper::dumpEnhancedCustomShapeGeometryService(uno::Reference< beans::XPropertySet > xPropSet) +{ + { + uno::Any anotherAny = xPropSet->getPropertyValue("Type"); + rtl::OUString sType; + if(anotherAny >>= sType) + dumpTypeAsAttribute(sType); + } +} +void EnhancedShapeDumper::dumpTypeAsAttribute(rtl::OUString sType) + { + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("type"), "%s", + rtl::OUStringToOString(sType, RTL_TEXTENCODING_UTF8).getStr()); + } diff --git a/drawinglayer/source/dumper/XShapeDumper.cxx b/drawinglayer/source/dumper/XShapeDumper.cxx index 7a3a18a..24b9d12 100644 --- a/drawinglayer/source/dumper/XShapeDumper.cxx +++ b/drawinglayer/source/dumper/XShapeDumper.cxx @@ -1818,7 +1818,12 @@ namespace { EnhancedShapeDumper enhancedDumper(xmlWriter); enhancedDumper.dumpEnhancedCustomShapeExtrusionService(xPropSet); } + if(xServiceInfo->supportsService("com.sun.star.drawing.EnhancedCustomShapeGeometry")) + { + EnhancedShapeDumper enhancedDumper(xmlWriter); + enhancedDumper.dumpEnhancedCustomShapeGeometryService(xPropSet); } + } // end of the 'try' block catch (com::sun::star::beans::UnknownPropertyException &e) { printf("Problem in the XShapeDumper"); commit 65db509a2091b373834e408fa8690b278d652ccf Author: Artur Dorda <artur.dorda+l...@gmail.com> Date: Tue Jul 3 21:54:47 2012 +0200 Fixed warning with incompatible arguments Change-Id: Id39143163a570a06020eecc5ddc5ec82c8d12f2c diff --git a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx index 51caccc..3006e37 100644 --- a/drawinglayer/source/dumper/EnhancedShapeDumper.cxx +++ b/drawinglayer/source/dumper/EnhancedShapeDumper.cxx @@ -201,7 +201,8 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeParameterPair(drawing::Enhanced xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("value"), "%s", rtl::OUStringToOString(sValue, RTL_TEXTENCODING_UTF8).getStr()); } - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("type"), "%" SAL_PRIdINT32, aParameterPair.First.Type); + sal_Int32 aType = aParameterPair.First.Type; + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("type"), "%" SAL_PRIdINT32, aType); xmlTextWriterEndElement( xmlWriter ); } { @@ -213,7 +214,8 @@ void EnhancedShapeDumper::dumpEnhancedCustomShapeParameterPair(drawing::Enhanced xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("value"), "%s", rtl::OUStringToOString(sValue, RTL_TEXTENCODING_UTF8).getStr()); } - xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("type"), "%" SAL_PRIdINT32, aParameterPair.Second.Type); + sal_Int32 aType = aParameterPair.First.Type; + xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST("type"), "%" SAL_PRIdINT32, aType); xmlTextWriterEndElement( xmlWriter ); } } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits