summaryrefslogtreecommitdiff
path: root/include/xmloff/maptype.hxx
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2014-07-25 13:58:12 -0400
committerKohei Yoshida <kohei.yoshida@collabora.com>2014-07-25 14:04:56 -0400
commit0915d82bec64fbf597a3778bcc314392e00a4cca (patch)
tree00b628cd1d6735240980467b5943539801312c41 /include/xmloff/maptype.hxx
parentb6bfd2c79504cbe9b34867150fdbc74f57f4b43d (diff)
Document what's in the type of the map entry.
And organize xmltypes.hxx a bit to make it easier to follow. Also rename MID_FLAG_PROPERTY_MAY_EXCEPT to MID_FLAG_PROPERTY_MAY_THROW. Change-Id: If18f07159a613555cf031bea5e07c04c7c45abec
Diffstat (limited to 'include/xmloff/maptype.hxx')
-rw-r--r--include/xmloff/maptype.hxx54
1 files changed, 50 insertions, 4 deletions
diff --git a/include/xmloff/maptype.hxx b/include/xmloff/maptype.hxx
index 8bff58daec76..7b263fba0f2b 100644
--- a/include/xmloff/maptype.hxx
+++ b/include/xmloff/maptype.hxx
@@ -36,10 +36,56 @@ struct XMLPropertyMapEntry
sal_uInt16 mnNameSpace; /** declares the Namespace in which this
property exists */
enum ::xmloff::token::XMLTokenEnum meXMLName; /// XML-Name
- sal_uInt32 mnType; /** Bit 0..23 : XML-Type of its value
- Bit 24..31: The flags specifies
- additional rules how
- to im/export the porperty */
+
+ /**
+ * The lowest 14 bits specify the basic XML type of the property value, of
+ * which the 11th bit specifies the application type. The basic type has
+ * the 11th bit off and the 14th bit on. For the most part, the lower 14
+ * bits are used as a single value.
+ *
+ * <p>The next 4 bits specify the family type of the property value. This
+ * can be one of the following:</p>
+ *
+ * <ul>
+ * <li>XML_TYPE_PROP_GRAPHIC</li>
+ * <li>XML_TYPE_PROP_DRAWING_PAGE</li>
+ * <li>XML_TYPE_PROP_PAGE_LAYOUT</li>
+ * <li>XML_TYPE_PROP_HEADER_FOOTER</li>
+ * <li>XML_TYPE_PROP_TEXT</li>
+ * <li>XML_TYPE_PROP_PARAGRAPH</li>
+ * <li>XML_TYPE_PROP_RUBY</li>
+ * <li>XML_TYPE_PROP_SECTION</li>
+ * <li>XML_TYPE_PROP_TABLE</li>
+ * <li>XML_TYPE_PROP_TABLE_COLUMN</li>
+ * <li>XML_TYPE_PROP_TABLE_ROW</li>
+ * <li>XML_TYPE_PROP_TABLE_CELL</li>
+ * <li>XML_TYPE_PROP_LIST_LEVEL</li>
+ * <li>XML_TYPE_PROP_CHART</li>
+ * </ul>
+ *
+ * <p>The next 6 bits are not used.</p>
+ *
+ * <p>The last 12 bits specify additional rules on how to special-case the
+ * value during import and export. This value may be a combination of the
+ * following flags:</p>
+ *
+ * <ul>
+ * <li>MID_FLAG_PROPERTY_MAY_THROW</li>
+ * <li>MID_FLAG_DEFAULT_ITEM_EXPORT</li>
+ * <li>MID_FLAG_MUST_EXIST</li>
+ * <li>MID_FLAG_MERGE_ATTRIBUTE</li>
+ * <li>MID_FLAG_MERGE_PROPERTY</li>
+ * <li>MID_FLAG_MULTI_PROPERTY</li>
+ * <li>MID_FLAG_ELEMENT_ITEM_IMPORT</li>
+ * <li>MID_FLAG_ELEMENT_ITEM_EXPORT</li>
+ * <li>MID_FLAG_SPECIAL_ITEM_IMPORT</li>
+ * <li>MID_FLAG_SPECIAL_ITEM_EXPORT</li>
+ * <li>MID_FLAG_NO_PROPERTY_IMPORT</li>
+ * <li>MID_FLAG_NO_PROPERTY_EXPORT</li>
+ * </ul>
+ */
+ sal_uInt32 mnType;
+
sal_Int16 mnContextId; /// User defined id for context filtering
SvtSaveOptions::ODFDefaultVersion mnEarliestODFVersionForExport;// no export when the used ODF version is lower than this