path: root/oox/inc/oox/vml/vmltextbox.hxx
diff options
authorMiklos Vajna <>2012-12-14 18:16:56 +0100
committerAndras Timar <>2013-01-22 11:36:55 +0100
commit22f8333ea6ca8e5c74b8be8a9900136e13874d7c (patch)
treef5ec010ad0c5f9c3850c34a590be0a3f40b87ec1 /oox/inc/oox/vml/vmltextbox.hxx
parentfb286e44b862c12d0e84632f9d0a9ae6fd3ea2c1 (diff)
n#792778 DOCX import: parse group shapes in oox only
Previously textframes inside groupshapes were tried to be imported as TextFrames, but then their addition to a GroupShape failed, so the text simply ended up as a normal paragraph. Fix this by importing members of groupshapes as drawinglayer objects, just like how the WW8 import does. Also fix two testcases, which implicitely tested that the groupshape VML element is ignored on import. Change-Id: I1a9fba8a5fd532203a825e55b1d5996277ea12fa Signed-off-by: Andras Timar <>
Diffstat (limited to 'oox/inc/oox/vml/vmltextbox.hxx')
1 files changed, 10 insertions, 1 deletions
diff --git a/oox/inc/oox/vml/vmltextbox.hxx b/oox/inc/oox/vml/vmltextbox.hxx
index af69e779e601..49814439a91f 100644
--- a/oox/inc/oox/vml/vmltextbox.hxx
+++ b/oox/inc/oox/vml/vmltextbox.hxx
@@ -24,10 +24,17 @@
#include <rtl/ustring.hxx>
#include "oox/helper/helper.hxx"
#include "oox/dllapi.h"
+#include <com/sun/star/uno/Reference.h>
+namespace com { namespace sun { namespace star {
+ namespace drawing { class XShape; }
+} } }
namespace oox {
namespace vml {
+class ShapeTypeModel;
// ============================================================================
/** Font settings for a text portion in a textbox. */
@@ -62,7 +69,7 @@ struct TextPortionModel
- explicit TextBox();
+ explicit TextBox(ShapeTypeModel& rTypeModel);
/** Appends a new text portion to the textbox. */
void appendPortion( const TextFontModel& rFont, const ::rtl::OUString& rText );
@@ -73,7 +80,9 @@ public:
const TextFontModel* getFirstFont() const;
/** Returns the entire text of all text portions. */
::rtl::OUString getText() const;
+ void convert(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> xShape) const;
+ ShapeTypeModel& mrTypeModel;
/// Text distance from the border (inset attribute of v:textbox), valid only if set.
bool borderDistanceSet;
int borderDistanceLeft, borderDistanceTop, borderDistanceRight, borderDistanceBottom;