LibreOffice Module xmloff (master) 1
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
XMLPropertyMapEntry Struct Reference

Represents a property with its API-name, its XML-name and the type of its value. More...

#include <maptype.hxx>

Public Member Functions

template<std::size_t N>
constexpr XMLPropertyMapEntry (const OUStringLiteral< N > &sApiName, sal_uInt16 nNameSpace, enum ::xmloff::token::XMLTokenEnum eXMLName, sal_uInt32 nType, sal_Int16 nContextId, SvtSaveOptions::ODFSaneDefaultVersion nEarliestODFVersionForExport, bool bImportOnly)
 
constexpr XMLPropertyMapEntry (std::nullptr_t)
 used to mark the end of the array More...
 
const OUString & getApiName () const
 
bool IsEnd () const
 

Public Attributes

rtl::OUStringConstExpr msApiName
 
enum::xmloff::token::XMLTokenEnum meXMLName
 Property-Name. More...
 
sal_uInt16 mnNameSpace
 XML-Name. More...
 
sal_uInt32 mnType
 declares the Namespace in which this property exists More...
 
sal_Int16 mnContextId
 
SvtSaveOptions::ODFSaneDefaultVersion mnEarliestODFVersionForExport
 User defined id for context filtering. More...
 
bool mbImportOnly
 Flag to specify whether entry is only used during import. More...
 

Static Public Attributes

static constexpr OUStringLiteral EMPTY {u""}
 

Detailed Description

Represents a property with its API-name, its XML-name and the type of its value.

Definition at line 32 of file maptype.hxx.

Constructor & Destructor Documentation

◆ XMLPropertyMapEntry() [1/2]

template<std::size_t N>
constexpr XMLPropertyMapEntry::XMLPropertyMapEntry ( const OUStringLiteral< N > &  sApiName,
sal_uInt16  nNameSpace,
enum ::xmloff::token::XMLTokenEnum  eXMLName,
sal_uInt32  nType,
sal_Int16  nContextId,
SvtSaveOptions::ODFSaneDefaultVersion  nEarliestODFVersionForExport,
bool  bImportOnly 
)
inlineconstexpr

Definition at line 105 of file maptype.hxx.

References nType.

◆ XMLPropertyMapEntry() [2/2]

constexpr XMLPropertyMapEntry::XMLPropertyMapEntry ( std::nullptr_t  )
inlineconstexpr

used to mark the end of the array

Definition at line 121 of file maptype.hxx.

References ODFSVER_010.

Member Function Documentation

◆ getApiName()

const OUString & XMLPropertyMapEntry::getApiName ( ) const
inline

◆ IsEnd()

bool XMLPropertyMapEntry::IsEnd ( ) const
inline

Member Data Documentation

◆ EMPTY

constexpr OUStringLiteral XMLPropertyMapEntry::EMPTY {u""}
staticconstexpr

Definition at line 102 of file maptype.hxx.

◆ mbImportOnly

bool XMLPropertyMapEntry::mbImportOnly

Flag to specify whether entry is only used during import.

Allows to handle more than one Namespace/XML-Name to Property-Name mapping, i.e. for extensions. If several entries for the same Property-Name exist, all except one must have this flag set.

Definition at line 100 of file maptype.hxx.

Referenced by XMLPropertySetMapper::XMLPropertySetMapper().

◆ meXMLName

enum::xmloff::token::XMLTokenEnum XMLPropertyMapEntry::meXMLName

Property-Name.

Definition at line 35 of file maptype.hxx.

Referenced by IsEnd(), lcl_txtprmap_getMap(), and SdXMLTableShapeContext::processAttribute().

◆ mnContextId

sal_Int16 XMLPropertyMapEntry::mnContextId

Definition at line 88 of file maptype.hxx.

◆ mnEarliestODFVersionForExport

SvtSaveOptions::ODFSaneDefaultVersion XMLPropertyMapEntry::mnEarliestODFVersionForExport

User defined id for context filtering.

no export to standard namespace when the used ODF version is lower than this; no export to extension namespace when the used ODF version is at least this

Definition at line 92 of file maptype.hxx.

◆ mnNameSpace

sal_uInt16 XMLPropertyMapEntry::mnNameSpace

XML-Name.

Definition at line 36 of file maptype.hxx.

◆ mnType

sal_uInt32 XMLPropertyMapEntry::mnType

declares the Namespace in which this property exists

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.

The next 4 bits specify the family type of the property value. This can be one of the following:

  • XML_TYPE_PROP_GRAPHIC
  • XML_TYPE_PROP_DRAWING_PAGE
  • XML_TYPE_PROP_PAGE_LAYOUT
  • XML_TYPE_PROP_HEADER_FOOTER
  • XML_TYPE_PROP_TEXT
  • XML_TYPE_PROP_PARAGRAPH
  • XML_TYPE_PROP_RUBY
  • XML_TYPE_PROP_SECTION
  • XML_TYPE_PROP_TABLE
  • XML_TYPE_PROP_TABLE_COLUMN
  • XML_TYPE_PROP_TABLE_ROW
  • XML_TYPE_PROP_TABLE_CELL
  • XML_TYPE_PROP_LIST_LEVEL
  • XML_TYPE_PROP_CHART

The next 2 bits are not used.

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:

  • MID_FLAG_PROPERTY_MAY_THROW
  • MID_FLAG_DEFAULT_ITEM_EXPORT
  • MID_FLAG_MUST_EXIST
  • MID_FLAG_MERGE_ATTRIBUTE
  • MID_FLAG_MERGE_PROPERTY
  • MID_FLAG_MULTI_PROPERTY
  • MID_FLAG_ELEMENT_ITEM_IMPORT
  • MID_FLAG_ELEMENT_ITEM_EXPORT
  • MID_FLAG_SPECIAL_ITEM_IMPORT
  • MID_FLAG_SPECIAL_ITEM_EXPORT
  • MID_FLAG_NO_PROPERTY_IMPORT
  • MID_FLAG_NO_PROPERTY_EXPORT

Definition at line 86 of file maptype.hxx.

◆ msApiName

rtl::OUStringConstExpr XMLPropertyMapEntry::msApiName

Definition at line 34 of file maptype.hxx.

Referenced by getApiName().


The documentation for this struct was generated from the following file: