[Libreoffice-commits] core.git: 2 commits - offapi/com sw/inc sw/source writerfilter/source

Miklos Vajna vmiklos at collabora.co.uk
Tue Aug 5 06:10:10 PDT 2014


 offapi/com/sun/star/text/TextTableRow.idl    |   10 ++++++++++
 sw/inc/unoprnms.hxx                          |    1 +
 sw/source/core/bastyp/init.cxx               |    1 +
 sw/source/core/unocore/unomap.cxx            |    1 +
 writerfilter/source/ooxml/modelpreprocess.py |    8 ++++++++
 5 files changed, 21 insertions(+)

New commits:
commit e0a2be865f31457b154acf2e0dd1baeae65f7f93
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Tue Aug 5 14:37:47 2014 +0200

    sw: add RowInteropGrabBag UNO property for table rows
    
    Change-Id: I59e0d24e04ebabdaa2fdb23fbc47c649d4872853

diff --git a/offapi/com/sun/star/text/TextTableRow.idl b/offapi/com/sun/star/text/TextTableRow.idl
index 8bd2f97..1755068 100644
--- a/offapi/com/sun/star/text/TextTableRow.idl
+++ b/offapi/com/sun/star/text/TextTableRow.idl
@@ -85,6 +85,16 @@ published service TextTableRow
          */
         [optional, property, maybevoid] boolean IsSplitAllowed;
 
+    /** Grab bag of row properties, used as a string-any map for interop purposes.
+
+        @since LibreOffice 4.4
+
+        <p>This property is intentionally not handled by the ODF filter. Any
+        member that should be handled there should be first moved out from this grab
+        bag to a separate property.</p>
+    */
+    [optional, property] sequence<com::sun::star::beans::PropertyValue> RowInteropGrabBag;
+
 
 };
 
diff --git a/sw/inc/unoprnms.hxx b/sw/inc/unoprnms.hxx
index 863b5ce..1a89a01 100644
--- a/sw/inc/unoprnms.hxx
+++ b/sw/inc/unoprnms.hxx
@@ -897,6 +897,7 @@
 #define UNO_NAME_CHAR_INTEROP_GRAB_BAG "CharInteropGrabBag"
 #define UNO_NAME_TEXT_VERT_ADJUST "TextVerticalAdjust"
 #define UNO_NAME_CELL_INTEROP_GRAB_BAG "CellInteropGrabBag"
+#define UNO_NAME_ROW_INTEROP_GRAB_BAG "RowInteropGrabBag"
 #define UNO_NAME_TABLE_INTEROP_GRAB_BAG "TableInteropGrabBag"
 
 #endif
diff --git a/sw/source/core/bastyp/init.cxx b/sw/source/core/bastyp/init.cxx
index b2fb605..8e716bf 100644
--- a/sw/source/core/bastyp/init.cxx
+++ b/sw/source/core/bastyp/init.cxx
@@ -209,6 +209,7 @@ sal_uInt16 aTableLineSetRange[] = {
     RES_PROTECT,        RES_PROTECT,
     RES_VERT_ORIENT,    RES_VERT_ORIENT,
     RES_UNKNOWNATR_BEGIN, RES_UNKNOWNATR_END-1,
+    RES_FRMATR_GRABBAG, RES_FRMATR_GRABBAG,
     0
 };
 
diff --git a/sw/source/core/unocore/unomap.cxx b/sw/source/core/unocore/unomap.cxx
index 2a3ad60..c70c075 100644
--- a/sw/source/core/unocore/unomap.cxx
+++ b/sw/source/core/unocore/unomap.cxx
@@ -1697,6 +1697,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
                     { OUString(UNO_NAME_SIZE_TYPE), RES_FRM_SIZE,           cppu::UnoType<sal_Int16>::get()  ,         PROPERTY_NONE,   MID_FRMSIZE_SIZE_TYPE  },
                     { OUString(UNO_NAME_WIDTH_TYPE), RES_FRM_SIZE,          cppu::UnoType<sal_Int16>::get()  ,         PROPERTY_NONE,   MID_FRMSIZE_WIDTH_TYPE },
                     { OUString(UNO_NAME_IS_SPLIT_ALLOWED), RES_ROW_SPLIT,       cppu::UnoType<bool>::get()  , PropertyAttribute::MAYBEVOID, 0},
+                    { OUString(UNO_NAME_ROW_INTEROP_GRAB_BAG), RES_FRMATR_GRABBAG, cppu::UnoType< cppu::UnoSequenceType<css::beans::PropertyValue> >::get(), PROPERTY_NONE, 0 },
                     { OUString(), 0, css::uno::Type(), 0, 0 }
                 };
 
commit a37c6614acea66b20502998edc88eb3c61267106
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Tue Aug 5 13:52:42 2014 +0200

    writerfilter: prevent introducing new references to non-existing defines
    
    f77981e3c89f428c648da1a550f8d36344e1a927 fixed the last such problem,
    let's not introduce those again.
    
    Change-Id: I8f193b7e234242b5c283d04ca20f83ee901dfbed

diff --git a/writerfilter/source/ooxml/modelpreprocess.py b/writerfilter/source/ooxml/modelpreprocess.py
index cdb1382..100056d 100644
--- a/writerfilter/source/ooxml/modelpreprocess.py
+++ b/writerfilter/source/ooxml/modelpreprocess.py
@@ -57,6 +57,13 @@ def defaultNamespaceAliases():
     }
 
 
+def check(model):
+    defines = [i.getAttribute("name") for i in model.getElementsByTagName("define")]
+    for reference in [i.getAttribute("name") for i in model.getElementsByTagName("ref")]:
+        if not reference in defines:
+            raise Exception("Unknown define with name '%s'" % reference)
+
+
 def preprocess(model):
     for i in model.getElementsByTagName("namespace-alias"):
         name = i.getAttribute("name")
@@ -163,6 +170,7 @@ parseNamespaces(namespacesPath)
 # URL -> alias
 namespaceAliases = {}
 model = minidom.parse(modelPath)
+check(model)
 preprocess(model)
 model.writexml(sys.stdout)
 


More information about the Libreoffice-commits mailing list