dbaccess/inc/strings.hxx                                  |  309 +--
 dbaccess/source/core/api/definitioncolumn.cxx             |   26 
 dbaccess/source/filter/xml/xmlHelper.cxx                  |   26 
 include/xmloff/maptype.hxx                                |   35 
 reportdesign/inc/strings.hxx                              |  418 ++--
 reportdesign/source/filter/xml/xmlHelper.cxx              |   24 
 reportdesign/source/ui/inspection/DataProviderHandler.cxx |   10 
 reportdesign/source/ui/inspection/metadata.cxx            |   52 
 sc/inc/unonames.hxx                                       | 1136 ++++++-------
 sc/source/filter/xml/xmlstyle.cxx                         |    2 
 sc/source/ui/unoobj/styleuno.cxx                          |  530 +++---
 xmloff/inc/xmlprop.hxx                                    |  670 +++++++
 xmloff/source/chart/PropertyMaps.cxx                      |  247 +-
 xmloff/source/draw/sdpropls.cxx                           |  477 ++---
 xmloff/source/draw/shapeexport.cxx                        |    6 
 xmloff/source/draw/ximpshap.cxx                           |    7 
 xmloff/source/forms/controlpropertymap.cxx                |   63 
 xmloff/source/forms/elementexport.cxx                     |   66 
 xmloff/source/forms/elementimport.cxx                     |   44 
 xmloff/source/forms/propertyexport.cxx                    |    5 
 xmloff/source/forms/propertyexport.hxx                    |    2 
 xmloff/source/forms/strings.hxx                           |  230 +-
 xmloff/source/forms/valueproperties.cxx                   |   12 
 xmloff/source/forms/valueproperties.hxx                   |   13 
 xmloff/source/style/PageMasterStyleMap.cxx                |  438 ++---
 xmloff/source/style/xmlprmap.cxx                          |    7 
 xmloff/source/table/XMLTableExport.cxx                    |   39 
 xmloff/source/text/txtprmap.cxx                           | 1199 +++++++-------
 28 files changed, 3385 insertions(+), 2708 deletions(-)

New commits:
commit e14a3ebf801848236bd9559f64c134412e498a32
Author:     Noel Grandin <noel.gran...@collabora.co.uk>
AuthorDate: Thu Nov 3 08:29:41 2022 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Fri Nov 4 06:50:43 2022 +0100

    tdf#54857 use OUStringConstExpr in XMLPropertyMapEntry
    
    which means we don't need to allocate a bunch of strings
    when building the property maps in xmloff
    
    Change-Id: I83cb013f816d9b7bcb0dd55c59e5151b33b91c9c
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142192
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/dbaccess/inc/strings.hxx b/dbaccess/inc/strings.hxx
index eb90a6c04d82..021f34cc70b5 100644
--- a/dbaccess/inc/strings.hxx
+++ b/dbaccess/inc/strings.hxx
@@ -12,147 +12,152 @@
 
 // property names
 
-#define PROPERTY_URL "URL"
-#define PROPERTY_INFO "Info"
-#define PROPERTY_SETTINGS "Settings"
-#define PROPERTY_ISPASSWORDREQUIRED "IsPasswordRequired"
-#define PROPERTY_TABLEFILTER "TableFilter"
-#define PROPERTY_TABLETYPEFILTER "TableTypeFilter"
-#define PROPERTY_NAME "Name"
-#define PROPERTY_SCHEMANAME "SchemaName"
-#define PROPERTY_CATALOGNAME "CatalogName"
-#define PROPERTY_PRIVILEGES "Privileges"
-#define PROPERTY_ESCAPE_PROCESSING "EscapeProcessing"
-#define PROPERTY_COMMAND "Command"
-#define PROPERTY_TYPE "Type"
-#define PROPERTY_TYPENAME "TypeName"
-#define PROPERTY_PRECISION "Precision"
-#define PROPERTY_SCALE "Scale"
-#define PROPERTY_ISNULLABLE "IsNullable"
-#define PROPERTY_ISAUTOINCREMENT "IsAutoIncrement"
-#define PROPERTY_ISROWVERSION "IsRowVersion"
-#define PROPERTY_DESCRIPTION "Description"
-#define PROPERTY_DEFAULTVALUE "DefaultValue"
-#define PROPERTY_NUMBERFORMAT "FormatKey"
-#define PROPERTY_QUERYTIMEOUT "QueryTimeOut"
-#define PROPERTY_MAXFIELDSIZE "MaxFieldSize"
-#define PROPERTY_MAXROWS "MaxRows"
-#define PROPERTY_CURSORNAME "CursorName"
-#define PROPERTY_RESULTSETCONCURRENCY "ResultSetConcurrency"
-#define PROPERTY_RESULTSETTYPE "ResultSetType"
-#define PROPERTY_FETCHDIRECTION "FetchDirection"
-#define PROPERTY_FETCHSIZE "FetchSize"
-#define PROPERTY_USEBOOKMARKS "UseBookmarks"
-#define PROPERTY_ISSEARCHABLE "IsSearchable"
-#define PROPERTY_ISCURRENCY "IsCurrency"
-#define PROPERTY_ISSIGNED "IsSigned"
-#define PROPERTY_DISPLAYSIZE "DisplaySize"
-#define PROPERTY_LABEL "Label"
-#define PROPERTY_ISREADONLY "IsReadOnly"
-#define PROPERTY_ISWRITABLE "IsWritable"
-#define PROPERTY_ISDEFINITELYWRITABLE "IsDefinitelyWritable"
-#define PROPERTY_VALUE "Value"
-#define PROPERTY_TABLENAME "TableName"
-#define PROPERTY_ISCASESENSITIVE "IsCaseSensitive"
-#define PROPERTY_SERVICENAME "ServiceName"
-#define PROPERTY_ISBOOKMARKABLE "IsBookmarkable"
-#define PROPERTY_CANUPDATEINSERTEDROWS "CanUpdateInsertedRows"
-#define PROPERTY_NUMBERFORMATSSUPPLIER "NumberFormatsSupplier"
-#define PROPERTY_DATASOURCENAME "DataSourceName"
-#define PROPERTY_DATABASE_LOCATION "DatabaseLocation"
-#define PROPERTY_CONNECTION_RESOURCE "ConnectionResource"
-#define PROPERTY_CONNECTION_INFO "ConnectionInfo"
-#define PROPERTY_RESULT_SET "ResultSet"
-#define PROPERTY_SELECTION "Selection"
-#define PROPERTY_BOOKMARK_SELECTION "BookmarkSelection"
-#define PROPERTY_COLUMN_NAME "ColumnName"
-#define PROPERTY_COLUMN "Column"
-#define PROPERTY_DATASOURCE "DataSource"
-#define PROPERTY_TRANSACTIONISOLATION "TransactionIsolation"
-#define PROPERTY_TYPEMAP "TypeMap"
-#define PROPERTY_USER "User"
-#define PROPERTY_PASSWORD "Password"
-#define PROPERTY_COMMAND_TYPE "CommandType"
-#define PROPERTY_ACTIVECOMMAND "ActiveCommand"
-#define PROPERTY_ACTIVE_CONNECTION "ActiveConnection"
-#define PROPERTY_FILTER "Filter"
-#define PROPERTY_APPLYFILTER "ApplyFilter"
-#define PROPERTY_ORDER "Order"
-#define PROPERTY_APPLYORDER "ApplyOrder"
-#define PROPERTY_ISMODIFIED "IsModified"
-#define PROPERTY_ISNEW "IsNew"
-#define PROPERTY_ROWCOUNT "RowCount"
-#define PROPERTY_ISROWCOUNTFINAL "IsRowCountFinal"
-#define PROPERTY_WIDTH "Width"
-#define PROPERTY_ROW_HEIGHT "RowHeight"
-#define PROPERTY_AUTOGROW "AutoGrow"
-#define PROPERTY_FORMATKEY "FormatKey"
-#define PROPERTY_ALIGN "Align"
-#define PROPERTY_FONT "FontDescriptor"
-#define PROPERTY_TEXTCOLOR "TextColor"
-#define PROPERTY_BOUNDFIELD "BoundField"
-#define PROPERTY_CONTROLSOURCE "DataField"
-#define PROPERTY_REALNAME "RealName"
-#define PROPERTY_UPDATE_TABLENAME "UpdateTableName"
-#define PROPERTY_UPDATE_SCHEMANAME "UpdateSchemaName"
-#define PROPERTY_UPDATE_CATALOGNAME "UpdateCatalogName"
-#define PROPERTY_RELATIVEPOSITION "RelativePosition"
-#define PROPERTY_CONTROLMODEL "ControlModel"
-#define PROPERTY_RELATEDCOLUMN "RelatedColumn"
-#define PROPERTY_ISUNIQUE "IsUnique"
-#define PROPERTY_ISPRIMARYKEYINDEX "IsPrimaryKeyIndex"
-#define PROPERTY_IGNORERESULT "IgnoreResult"
-#define PROPERTY_UPDATERULE "UpdateRule"
-#define PROPERTY_DELETERULE "DeleteRule"
-#define PROPERTY_REFERENCEDTABLE "ReferencedTable"
-#define PROPERTY_SQLEXCEPTION "SQLException"
-#define PROPERTY_BORDER "Border"
-#define PROPERTY_HELPTEXT "HelpText"
-#define PROPERTY_CONTROLDEFAULT "ControlDefault"
-#define PROPERTY_HIDDEN "Hidden"
-#define PROPERTY_DEFAULTSTATE "DefaultState"
-#define PROPERTY_SUPPRESSVERSIONCL "SuppressVersionColumns"
-#define PROPERTY_SHOW_BROWSER "ShowBrowser"
-#define PROPERTY_ENABLE_BROWSER "EnableBrowser"
-#define PROPERTY_SHOWMENU "ShowMenu"
-#define PROPERTY_LAYOUTINFORMATION "LayoutInformation"
-#define PROPERTY_CURRENTTABLE "CurrentTable"
-#define PROPERTY_TEXTLINECOLOR "TextLineColor"
-#define PROPERTY_TEXTEMPHASIS "FontEmphasisMark"
-#define PROPERTY_TEXTRELIEF "FontRelief"
-#define PROPERTY_DEFAULTTEXT "DefaultText"
-#define PROPERTY_EFFECTIVEDEFAULT "EffectiveDefault"
-#define PROPERTY_AUTOINCREMENTCREATION "AutoIncrementCreation"
-#define PROPERTY_BOOLEANCOMPARISONMODE "BooleanComparisonMode"
-#define PROPERTY_ENABLESQL92CHECK "EnableSQL92Check"
-#define PROPERTY_FONTCHARWIDTH "FontCharWidth"
-#define PROPERTY_FONTCHARSET "FontCharset"
-#define PROPERTY_FONTFAMILY "FontFamily"
-#define PROPERTY_FONTHEIGHT "FontHeight"
-#define PROPERTY_FONTKERNING "FontKerning"
-#define PROPERTY_FONTNAME "FontName"
-#define PROPERTY_FONTORIENTATION "FontOrientation"
-#define PROPERTY_FONTPITCH "FontPitch"
-#define PROPERTY_FONTSLANT "FontSlant"
-#define PROPERTY_FONTSTRIKEOUT "FontStrikeout"
-#define PROPERTY_FONTSTYLENAME "FontStyleName"
-#define PROPERTY_FONTUNDERLINE "FontUnderline"
-#define PROPERTY_FONTWEIGHT "FontWeight"
-#define PROPERTY_FONTWIDTH "FontWidth"
-#define PROPERTY_FONTWORDLINEMODE "FontWordLineMode"
-#define PROPERTY_FONTTYPE "FontType"
-#define PROPERTY_PERSISTENT_NAME "PersistentName"
-#define PROPERTY_EMBEDDEDOBJECT "EmbeddedObject"
-#define PROPERTY_ORIGINAL "Original"
-#define PROPERTY_USECATALOGINSELECT "UseCatalogInSelect"
-#define PROPERTY_USESCHEMAINSELECT "UseSchemaInSelect"
-#define PROPERTY_OUTERJOINESCAPE "EnableOuterJoinEscape"
-#define PROPERTY_AS_TEMPLATE "AsTemplate"
-#define PROPERTY_HAVING_CLAUSE "HavingClause"
-#define PROPERTY_GROUP_BY "GroupBy"
-#define PROPERTY_EDIT_WIDTH "EditWidth"
-#define PROPERTY_SINGLESELECTQUERYCOMPOSER "SingleSelectQueryComposer"
-#define PROPERTY_CHANGE_NOTIFICATION_ENABLED 
"PropertyChangeNotificationEnabled"
+inline constexpr OUStringLiteral PROPERTY_URL(u"URL");
+inline constexpr OUStringLiteral PROPERTY_INFO(u"Info");
+inline constexpr OUStringLiteral PROPERTY_SETTINGS(u"Settings");
+inline constexpr OUStringLiteral 
PROPERTY_ISPASSWORDREQUIRED(u"IsPasswordRequired");
+inline constexpr OUStringLiteral PROPERTY_TABLEFILTER(u"TableFilter");
+inline constexpr OUStringLiteral PROPERTY_TABLETYPEFILTER(u"TableTypeFilter");
+inline constexpr OUStringLiteral PROPERTY_NAME(u"Name");
+inline constexpr OUStringLiteral PROPERTY_SCHEMANAME(u"SchemaName");
+inline constexpr OUStringLiteral PROPERTY_CATALOGNAME(u"CatalogName");
+inline constexpr OUStringLiteral PROPERTY_PRIVILEGES(u"Privileges");
+inline constexpr OUStringLiteral 
PROPERTY_ESCAPE_PROCESSING(u"EscapeProcessing");
+inline constexpr OUStringLiteral PROPERTY_COMMAND(u"Command");
+inline constexpr OUStringLiteral PROPERTY_TYPE(u"Type");
+inline constexpr OUStringLiteral PROPERTY_TYPENAME(u"TypeName");
+inline constexpr OUStringLiteral PROPERTY_PRECISION(u"Precision");
+inline constexpr OUStringLiteral PROPERTY_SCALE(u"Scale");
+inline constexpr OUStringLiteral PROPERTY_ISNULLABLE(u"IsNullable");
+inline constexpr OUStringLiteral PROPERTY_ISAUTOINCREMENT(u"IsAutoIncrement");
+inline constexpr OUStringLiteral PROPERTY_ISROWVERSION(u"IsRowVersion");
+inline constexpr OUStringLiteral PROPERTY_DESCRIPTION(u"Description");
+inline constexpr OUStringLiteral PROPERTY_DEFAULTVALUE(u"DefaultValue");
+inline constexpr OUStringLiteral PROPERTY_NUMBERFORMAT(u"FormatKey");
+inline constexpr OUStringLiteral PROPERTY_QUERYTIMEOUT(u"QueryTimeOut");
+inline constexpr OUStringLiteral PROPERTY_MAXFIELDSIZE(u"MaxFieldSize");
+inline constexpr OUStringLiteral PROPERTY_MAXROWS(u"MaxRows");
+inline constexpr OUStringLiteral PROPERTY_CURSORNAME(u"CursorName");
+inline constexpr OUStringLiteral 
PROPERTY_RESULTSETCONCURRENCY(u"ResultSetConcurrency");
+inline constexpr OUStringLiteral PROPERTY_RESULTSETTYPE(u"ResultSetType");
+inline constexpr OUStringLiteral PROPERTY_FETCHDIRECTION(u"FetchDirection");
+inline constexpr OUStringLiteral PROPERTY_FETCHSIZE(u"FetchSize");
+inline constexpr OUStringLiteral PROPERTY_USEBOOKMARKS(u"UseBookmarks");
+inline constexpr OUStringLiteral PROPERTY_ISSEARCHABLE(u"IsSearchable");
+inline constexpr OUStringLiteral PROPERTY_ISCURRENCY(u"IsCurrency");
+inline constexpr OUStringLiteral PROPERTY_ISSIGNED(u"IsSigned");
+inline constexpr OUStringLiteral PROPERTY_DISPLAYSIZE(u"DisplaySize");
+inline constexpr OUStringLiteral PROPERTY_LABEL(u"Label");
+inline constexpr OUStringLiteral PROPERTY_ISREADONLY(u"IsReadOnly");
+inline constexpr OUStringLiteral PROPERTY_ISWRITABLE(u"IsWritable");
+inline constexpr OUStringLiteral 
PROPERTY_ISDEFINITELYWRITABLE(u"IsDefinitelyWritable");
+inline constexpr OUStringLiteral PROPERTY_VALUE(u"Value");
+inline constexpr OUStringLiteral PROPERTY_TABLENAME(u"TableName");
+inline constexpr OUStringLiteral PROPERTY_ISCASESENSITIVE(u"IsCaseSensitive");
+inline constexpr OUStringLiteral PROPERTY_SERVICENAME(u"ServiceName");
+inline constexpr OUStringLiteral PROPERTY_ISBOOKMARKABLE(u"IsBookmarkable");
+inline constexpr OUStringLiteral 
PROPERTY_CANUPDATEINSERTEDROWS(u"CanUpdateInsertedRows");
+inline constexpr OUStringLiteral 
PROPERTY_NUMBERFORMATSSUPPLIER(u"NumberFormatsSupplier");
+inline constexpr OUStringLiteral PROPERTY_DATASOURCENAME(u"DataSourceName");
+inline constexpr OUStringLiteral 
PROPERTY_DATABASE_LOCATION(u"DatabaseLocation");
+inline constexpr OUStringLiteral 
PROPERTY_CONNECTION_RESOURCE(u"ConnectionResource");
+inline constexpr OUStringLiteral PROPERTY_CONNECTION_INFO(u"ConnectionInfo");
+inline constexpr OUStringLiteral PROPERTY_RESULT_SET(u"ResultSet");
+inline constexpr OUStringLiteral PROPERTY_SELECTION(u"Selection");
+inline constexpr OUStringLiteral 
PROPERTY_BOOKMARK_SELECTION(u"BookmarkSelection");
+inline constexpr OUStringLiteral PROPERTY_COLUMN_NAME(u"ColumnName");
+inline constexpr OUStringLiteral PROPERTY_COLUMN(u"Column");
+inline constexpr OUStringLiteral PROPERTY_DATASOURCE(u"DataSource");
+inline constexpr OUStringLiteral 
PROPERTY_TRANSACTIONISOLATION(u"TransactionIsolation");
+inline constexpr OUStringLiteral PROPERTY_TYPEMAP(u"TypeMap");
+inline constexpr OUStringLiteral PROPERTY_USER(u"User");
+inline constexpr OUStringLiteral PROPERTY_PASSWORD(u"Password");
+inline constexpr OUStringLiteral PROPERTY_COMMAND_TYPE(u"CommandType");
+inline constexpr OUStringLiteral PROPERTY_ACTIVECOMMAND(u"ActiveCommand");
+inline constexpr OUStringLiteral 
PROPERTY_ACTIVE_CONNECTION(u"ActiveConnection");
+inline constexpr OUStringLiteral PROPERTY_FILTER(u"Filter");
+inline constexpr OUStringLiteral PROPERTY_APPLYFILTER(u"ApplyFilter");
+inline constexpr OUStringLiteral PROPERTY_ORDER(u"Order");
+inline constexpr OUStringLiteral PROPERTY_APPLYORDER(u"ApplyOrder");
+inline constexpr OUStringLiteral PROPERTY_ISMODIFIED(u"IsModified");
+inline constexpr OUStringLiteral PROPERTY_ISNEW(u"IsNew");
+inline constexpr OUStringLiteral PROPERTY_ROWCOUNT(u"RowCount");
+inline constexpr OUStringLiteral PROPERTY_ISROWCOUNTFINAL(u"IsRowCountFinal");
+inline constexpr OUStringLiteral PROPERTY_WIDTH(u"Width");
+inline constexpr OUStringLiteral PROPERTY_ROW_HEIGHT(u"RowHeight");
+inline constexpr OUStringLiteral PROPERTY_AUTOGROW(u"AutoGrow");
+inline constexpr OUStringLiteral PROPERTY_FORMATKEY(u"FormatKey");
+inline constexpr OUStringLiteral PROPERTY_ALIGN(u"Align");
+inline constexpr OUStringLiteral PROPERTY_FONT(u"FontDescriptor");
+inline constexpr OUStringLiteral PROPERTY_TEXTCOLOR(u"TextColor");
+inline constexpr OUStringLiteral PROPERTY_BOUNDFIELD(u"BoundField");
+inline constexpr OUStringLiteral PROPERTY_CONTROLSOURCE(u"DataField");
+inline constexpr OUStringLiteral PROPERTY_REALNAME(u"RealName");
+inline constexpr OUStringLiteral PROPERTY_UPDATE_TABLENAME(u"UpdateTableName");
+inline constexpr OUStringLiteral 
PROPERTY_UPDATE_SCHEMANAME(u"UpdateSchemaName");
+inline constexpr OUStringLiteral 
PROPERTY_UPDATE_CATALOGNAME(u"UpdateCatalogName");
+inline constexpr OUStringLiteral 
PROPERTY_RELATIVEPOSITION(u"RelativePosition");
+inline constexpr OUStringLiteral PROPERTY_CONTROLMODEL(u"ControlModel");
+inline constexpr OUStringLiteral PROPERTY_RELATEDCOLUMN(u"RelatedColumn");
+inline constexpr OUStringLiteral PROPERTY_ISUNIQUE(u"IsUnique");
+inline constexpr OUStringLiteral 
PROPERTY_ISPRIMARYKEYINDEX(u"IsPrimaryKeyIndex");
+inline constexpr OUStringLiteral PROPERTY_IGNORERESULT(u"IgnoreResult");
+inline constexpr OUStringLiteral PROPERTY_UPDATERULE(u"UpdateRule");
+inline constexpr OUStringLiteral PROPERTY_DELETERULE(u"DeleteRule");
+inline constexpr OUStringLiteral PROPERTY_REFERENCEDTABLE(u"ReferencedTable");
+inline constexpr OUStringLiteral PROPERTY_SQLEXCEPTION(u"SQLException");
+inline constexpr OUStringLiteral PROPERTY_BORDER(u"Border");
+inline constexpr OUStringLiteral PROPERTY_HELPTEXT(u"HelpText");
+inline constexpr OUStringLiteral PROPERTY_CONTROLDEFAULT(u"ControlDefault");
+inline constexpr OUStringLiteral PROPERTY_HIDDEN(u"Hidden");
+inline constexpr OUStringLiteral PROPERTY_DEFAULTSTATE(u"DefaultState");
+inline constexpr OUStringLiteral 
PROPERTY_SUPPRESSVERSIONCL(u"SuppressVersionColumns");
+inline constexpr OUStringLiteral PROPERTY_SHOW_BROWSER(u"ShowBrowser");
+inline constexpr OUStringLiteral PROPERTY_ENABLE_BROWSER(u"EnableBrowser");
+inline constexpr OUStringLiteral PROPERTY_SHOWMENU(u"ShowMenu");
+inline constexpr OUStringLiteral 
PROPERTY_LAYOUTINFORMATION(u"LayoutInformation");
+inline constexpr OUStringLiteral PROPERTY_CURRENTTABLE(u"CurrentTable");
+inline constexpr OUStringLiteral PROPERTY_TEXTLINECOLOR(u"TextLineColor");
+inline constexpr OUStringLiteral PROPERTY_TEXTEMPHASIS(u"FontEmphasisMark");
+inline constexpr OUStringLiteral PROPERTY_TEXTRELIEF(u"FontRelief");
+inline constexpr OUStringLiteral PROPERTY_DEFAULTTEXT(u"DefaultText");
+inline constexpr OUStringLiteral 
PROPERTY_EFFECTIVEDEFAULT(u"EffectiveDefault");
+inline constexpr OUStringLiteral 
PROPERTY_AUTOINCREMENTCREATION(u"AutoIncrementCreation");
+inline constexpr OUStringLiteral 
PROPERTY_BOOLEANCOMPARISONMODE(u"BooleanComparisonMode");
+inline constexpr OUStringLiteral 
PROPERTY_ENABLESQL92CHECK(u"EnableSQL92Check");
+inline constexpr OUStringLiteral PROPERTY_FONTCHARWIDTH(u"FontCharWidth");
+inline constexpr OUStringLiteral PROPERTY_FONTCHARSET(u"FontCharset");
+inline constexpr OUStringLiteral PROPERTY_FONTFAMILY(u"FontFamily");
+inline constexpr OUStringLiteral PROPERTY_FONTHEIGHT(u"FontHeight");
+inline constexpr OUStringLiteral PROPERTY_FONTKERNING(u"FontKerning");
+inline constexpr OUStringLiteral PROPERTY_FONTNAME(u"FontName");
+inline constexpr OUStringLiteral PROPERTY_FONTORIENTATION(u"FontOrientation");
+inline constexpr OUStringLiteral PROPERTY_FONTPITCH(u"FontPitch");
+inline constexpr OUStringLiteral PROPERTY_FONTSLANT(u"FontSlant");
+inline constexpr OUStringLiteral PROPERTY_FONTSTRIKEOUT(u"FontStrikeout");
+inline constexpr OUStringLiteral PROPERTY_FONTSTYLENAME(u"FontStyleName");
+inline constexpr OUStringLiteral PROPERTY_FONTUNDERLINE(u"FontUnderline");
+inline constexpr OUStringLiteral PROPERTY_FONTWEIGHT(u"FontWeight");
+inline constexpr OUStringLiteral PROPERTY_FONTWIDTH(u"FontWidth");
+inline constexpr OUStringLiteral 
PROPERTY_FONTWORDLINEMODE(u"FontWordLineMode");
+inline constexpr OUStringLiteral PROPERTY_FONTTYPE(u"FontType");
+inline constexpr OUStringLiteral PROPERTY_PERSISTENT_NAME(u"PersistentName");
+inline constexpr OUStringLiteral PROPERTY_EMBEDDEDOBJECT(u"EmbeddedObject");
+inline constexpr OUStringLiteral PROPERTY_ORIGINAL(u"Original");
+inline constexpr OUStringLiteral 
PROPERTY_USECATALOGINSELECT(u"UseCatalogInSelect");
+inline constexpr OUStringLiteral 
PROPERTY_USESCHEMAINSELECT(u"UseSchemaInSelect");
+inline constexpr OUStringLiteral 
PROPERTY_OUTERJOINESCAPE(u"EnableOuterJoinEscape");
+inline constexpr OUStringLiteral PROPERTY_AS_TEMPLATE(u"AsTemplate");
+inline constexpr OUStringLiteral PROPERTY_HAVING_CLAUSE(u"HavingClause");
+inline constexpr OUStringLiteral PROPERTY_GROUP_BY(u"GroupBy");
+inline constexpr OUStringLiteral PROPERTY_EDIT_WIDTH(u"EditWidth");
+inline constexpr OUStringLiteral 
PROPERTY_SINGLESELECTQUERYCOMPOSER(u"SingleSelectQueryComposer");
+inline constexpr OUStringLiteral
+    PROPERTY_CHANGE_NOTIFICATION_ENABLED(u"PropertyChangeNotificationEnabled");
+inline constexpr OUStringLiteral PROPERTY_CHAR_STRIKEOUT(u"CharStrikeout");
+inline constexpr OUStringLiteral PROPERTY_CHAR_UNDERLINE(u"CharUnderline");
+inline constexpr OUStringLiteral 
PROPERTY_CHAR_UNDERLINE_COLOR(u"CharUnderlineColor");
+inline constexpr OUStringLiteral 
PROPERTY_CHAR_UNDERLINE_HAS_COLOR(u"CharUnderlineHasColor");
 
 // service names
 
@@ -236,7 +241,7 @@ inline constexpr OUStringLiteral URL_COMPONENT_FORMGRIDVIEW 
= u".component:DB/Fo
 inline constexpr OUStringLiteral URL_COMPONENT_DATASOURCEBROWSER
     = u".component:DB/DataSourceBrowser";
 inline constexpr OUStringLiteral URL_COMPONENT_RELATIONDESIGN = 
u".component:DB/RelationDesign";
-#define URL_COMPONENT_REPORTDESIGN ".component:DB/ReportDesign"
+inline constexpr OUStringLiteral 
URL_COMPONENT_REPORTDESIGN(u".component:DB/ReportDesign");
 
 // service names
 
@@ -245,24 +250,24 @@ inline constexpr OUStringLiteral 
SERVICE_SDB_DIRECTSQLDIALOG
 
 // other DBU relevant strings
 
-#define PROPERTY_QUERYDESIGNVIEW "QueryDesignView"
-#define PROPERTY_GRAPHICAL_DESIGN "GraphicalDesign"
-#define PROPERTY_HELP_URL "HelpURL"
+inline constexpr OUStringLiteral PROPERTY_QUERYDESIGNVIEW(u"QueryDesignView");
+inline constexpr OUStringLiteral PROPERTY_GRAPHICAL_DESIGN(u"GraphicalDesign");
+inline constexpr OUStringLiteral PROPERTY_HELP_URL(u"HelpURL");
 inline constexpr OUStringLiteral FRAME_NAME_QUERY_PREVIEW = u"QueryPreview";
 inline constexpr OUStringLiteral SERVICE_CONTROLDEFAULT = 
u"com.sun.star.comp.dbu.OColumnControl";
 
 // other DBU properties
 
-#define PROPERTY_ENABLEOUTERJOIN "EnableOuterJoinEscape"
-#define PROPERTY_TABSTOP "TabStop"
-#define PROPERTY_DEFAULTCONTROL "DefaultControl"
-#define PROPERTY_ENABLED "Enabled"
-#define PROPERTY_MOUSE_WHEEL_BEHAVIOR "MouseWheelBehavior"
+inline constexpr OUStringLiteral 
PROPERTY_ENABLEOUTERJOIN(u"EnableOuterJoinEscape");
+inline constexpr OUStringLiteral PROPERTY_TABSTOP(u"TabStop");
+inline constexpr OUStringLiteral PROPERTY_DEFAULTCONTROL(u"DefaultControl");
+inline constexpr OUStringLiteral PROPERTY_ENABLED(u"Enabled");
+inline constexpr OUStringLiteral 
PROPERTY_MOUSE_WHEEL_BEHAVIOR(u"MouseWheelBehavior");
 
 inline constexpr OUStringLiteral SQLSTATE_GENERAL = u"01000";
 
-#define PROPERTY_IS_FORM "IsForm"
-#define PROPERTY_PERSISTENT_PATH "PersistentPath"
+inline constexpr OUStringLiteral PROPERTY_IS_FORM(u"IsForm");
+inline constexpr OUStringLiteral PROPERTY_PERSISTENT_PATH(u"PersistentPath");
 
 inline constexpr OUStringLiteral STR_AUTOTEXTSEPARATORLIST = u"\"\t34\t'\t39";
 
diff --git a/dbaccess/source/core/api/definitioncolumn.cxx 
b/dbaccess/source/core/api/definitioncolumn.cxx
index e2cedbddf92e..a385079fcae7 100644
--- a/dbaccess/source/core/api/definitioncolumn.cxx
+++ b/dbaccess/source/core/api/definitioncolumn.cxx
@@ -170,35 +170,35 @@ OQueryColumn::OQueryColumn( const Reference< XPropertySet 
>& _rxParserColumn, co
 
 
     if( ! (_rxParserColumn->getPropertyValue( PROPERTY_TYPENAME ) >>= 
m_aTypeName) )
-        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " 
PROPERTY_TYPENAME);
+        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " + 
PROPERTY_TYPENAME);
 
     if( ! (_rxParserColumn->getPropertyValue( PROPERTY_ISNULLABLE ) >>= 
m_nIsNullable) )
-        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " 
PROPERTY_ISNULLABLE);
+        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " + 
PROPERTY_ISNULLABLE);
 
     if( ! (_rxParserColumn->getPropertyValue( PROPERTY_PRECISION ) >>= 
m_nPrecision) )
-        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " 
PROPERTY_PRECISION);
+        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " + 
PROPERTY_PRECISION);
 
     if( ! (_rxParserColumn->getPropertyValue( PROPERTY_SCALE ) >>= m_nScale) )
-        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " 
PROPERTY_SCALE);
+        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " + 
PROPERTY_SCALE);
 
     if( ! (_rxParserColumn->getPropertyValue( PROPERTY_TYPE ) >>= m_nType) )
-        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " 
PROPERTY_TYPE);
+        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " + 
PROPERTY_TYPE);
 
     if( ! (_rxParserColumn->getPropertyValue( PROPERTY_ISAUTOINCREMENT ) >>= 
m_bAutoIncrement) )
-        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " 
PROPERTY_ISAUTOINCREMENT);
+        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " + 
PROPERTY_ISAUTOINCREMENT);
 
     if( ! (_rxParserColumn->getPropertyValue( PROPERTY_ISCURRENCY ) >>= 
m_bCurrency) )
-        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " 
PROPERTY_ISCURRENCY);
+        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " + 
PROPERTY_ISCURRENCY);
 
     if( ! (_rxParserColumn->getPropertyValue( PROPERTY_NAME ) >>= m_sName) )
-        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " 
PROPERTY_NAME);
+        SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " + 
PROPERTY_NAME);
 
     m_bRowVersion = false;
 
     Reference< XPropertySetInfo > xPSI( _rxParserColumn->getPropertySetInfo(), 
UNO_SET_THROW );
     if ( xPSI->hasPropertyByName( PROPERTY_DEFAULTVALUE ) )
         if( ! (_rxParserColumn->getPropertyValue( PROPERTY_DEFAULTVALUE ) >>= 
m_aDefaultValue) )
-            SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " 
PROPERTY_DEFAULTVALUE);
+            SAL_WARN("dbaccess.core", "OQueryColumn: unable to get property " 
+ PROPERTY_DEFAULTVALUE);
 
     // copy some optional properties from the parser column
     struct PropertyDescriptor
@@ -244,11 +244,11 @@ Reference< XPropertySet > 
OQueryColumn::impl_determineOriginalTableColumn( const
         // respective properties
         OUString sCatalog, sSchema, sTable;
         if( ! (getPropertyValue( PROPERTY_CATALOGNAME ) >>= sCatalog) )
-            SAL_WARN("dbaccess.core", "impl_determineOriginalTableColumn: 
unable to get property " PROPERTY_CATALOGNAME);
+            SAL_WARN("dbaccess.core", "impl_determineOriginalTableColumn: 
unable to get property " + PROPERTY_CATALOGNAME);
         if( ! (getPropertyValue( PROPERTY_SCHEMANAME ) >>= sSchema) )
-            SAL_WARN("dbaccess.core", "impl_determineOriginalTableColumn: 
unable to get property " PROPERTY_SCHEMANAME);
+            SAL_WARN("dbaccess.core", "impl_determineOriginalTableColumn: 
unable to get property " + PROPERTY_SCHEMANAME);
         if( ! (getPropertyValue( PROPERTY_TABLENAME ) >>= sTable) )
-            SAL_WARN("dbaccess.core", "impl_determineOriginalTableColumn: 
unable to get property " PROPERTY_TABLENAME);
+            SAL_WARN("dbaccess.core", "impl_determineOriginalTableColumn: 
unable to get property " + PROPERTY_TABLENAME);
         if ( sCatalog.isEmpty() && sSchema.isEmpty() && sTable.isEmpty() )
             return nullptr;
 
@@ -266,7 +266,7 @@ Reference< XPropertySet > 
OQueryColumn::impl_determineOriginalTableColumn( const
 
         OUString sColumn;
         if( ! (getPropertyValue( PROPERTY_REALNAME ) >>= sColumn) )
-            SAL_WARN("dbaccess.core", "impl_determineOriginalTableColumn: 
unable to get property " PROPERTY_REALNAME);
+            SAL_WARN("dbaccess.core", "impl_determineOriginalTableColumn: 
unable to get property " + PROPERTY_REALNAME);
         if ( !xColumns->hasByName( sColumn ) )
             return nullptr;
 
diff --git a/dbaccess/source/filter/xml/xmlHelper.cxx 
b/dbaccess/source/filter/xml/xmlHelper.cxx
index 85b98ec1eb70..546c67abf5f7 100644
--- a/dbaccess/source/filter/xml/xmlHelper.cxx
+++ b/dbaccess/source/filter/xml/xmlHelper.cxx
@@ -72,7 +72,7 @@ rtl::Reference < XMLPropertySetMapper > 
OXMLHelper::GetTableStylesPropertySetMap
 {
     static const XMLPropertyMapEntry s_aTableStylesProperties[] =
     {
-        { nullptr, 0, XML_TOKEN_INVALID, 0 , 0, SvtSaveOptions::ODFSVER_010, 
false}
+        { nullptr }
     };
     rtl::Reference < XMLPropertyHandlerFactory> xFac = new 
::xmloff::OControlPropertyHandlerFactory();
     return new XMLPropertySetMapper(s_aTableStylesProperties, xFac, 
bForExport);
@@ -87,7 +87,7 @@ rtl::Reference < XMLPropertySetMapper > 
OXMLHelper::GetColumnStylesPropertySetMa
           CTF_DB_ISVISIBLE, SvtSaveOptions::ODFSVER_010, false },
         { PROPERTY_NUMBERFORMAT, XML_NAMESPACE_STYLE, XML_DATA_STYLE_NAME, 
XML_TYPE_NUMBER|MID_FLAG_SPECIAL_ITEM|XML_TYPE_PROP_TABLE_COLUMN,
            CTF_DB_NUMBERFORMAT, SvtSaveOptions::ODFSVER_010, false },
-        { nullptr, 0, XML_TOKEN_INVALID, 0 , 0, SvtSaveOptions::ODFSVER_010, 
false}
+        { nullptr }
     };
     rtl::Reference < XMLPropertyHandlerFactory> xFac = new 
OPropertyHandlerFactory();
     return new XMLPropertySetMapper(s_aColumnStylesProperties, xFac, 
bForExport);
@@ -113,29 +113,29 @@ rtl::Reference < XMLPropertySetMapper > 
OXMLHelper::GetCellStylesPropertySetMapp
         { PROPERTY_FONTORIENTATION, XML_NAMESPACE_STYLE, XML_ROTATION_ANGLE, 
XML_TYPE_ROTATION_ANGLE|XML_TYPE_PROP_TEXT, 0 , SvtSaveOptions::ODFSVER_010, 
false },
         { PROPERTY_FONTPITCH, XML_NAMESPACE_STYLE, XML_FONT_PITCH, 
XML_TYPE_TEXT_FONTPITCH|XML_TYPE_PROP_TEXT, 0 , SvtSaveOptions::ODFSVER_010, 
false },
         { PROPERTY_FONTSLANT, XML_NAMESPACE_FO, XML_FONT_STYLE, 
XML_TYPE_TEXT_POSTURE|XML_TYPE_PROP_TEXT, 0 , SvtSaveOptions::ODFSVER_010, 
false },
-        { "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_STYLE,
+        { PROPERTY_CHAR_STRIKEOUT, XML_NAMESPACE_STYLE, 
XML_TEXT_LINE_THROUGH_STYLE,
            
XML_TYPE_TEXT_CROSSEDOUT_STYLE|MID_FLAG_MERGE_PROPERTY|XML_TYPE_PROP_TEXT, 0, 
SvtSaveOptions::ODFSVER_010, false },
-        { "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_TYPE,
+        { PROPERTY_CHAR_STRIKEOUT, XML_NAMESPACE_STYLE, 
XML_TEXT_LINE_THROUGH_TYPE,
           
XML_TYPE_TEXT_CROSSEDOUT_TYPE|MID_FLAG_MERGE_PROPERTY|XML_TYPE_PROP_TEXT, 0, 
SvtSaveOptions::ODFSVER_010, false },
-        { "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_WIDTH,
+        { PROPERTY_CHAR_STRIKEOUT, XML_NAMESPACE_STYLE, 
XML_TEXT_LINE_THROUGH_WIDTH,
           
XML_TYPE_TEXT_CROSSEDOUT_WIDTH|MID_FLAG_MERGE_PROPERTY|XML_TYPE_PROP_TEXT, 0, 
SvtSaveOptions::ODFSVER_010, false },
-        { "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_TEXT,
+        { PROPERTY_CHAR_STRIKEOUT, XML_NAMESPACE_STYLE, 
XML_TEXT_LINE_THROUGH_TEXT,
           
XML_TYPE_TEXT_CROSSEDOUT_TEXT|MID_FLAG_MERGE_PROPERTY|XML_TYPE_PROP_TEXT, 0, 
SvtSaveOptions::ODFSVER_010, false },
         { PROPERTY_FONTSTYLENAME, XML_NAMESPACE_STYLE, XML_FONT_STYLE_NAME, 
XML_TYPE_STRING|XML_TYPE_PROP_TEXT, 0 , SvtSaveOptions::ODFSVER_010, false },
-        { "CharUnderline", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_STYLE,
+        { PROPERTY_CHAR_UNDERLINE, XML_NAMESPACE_STYLE, 
XML_TEXT_UNDERLINE_STYLE,
            
XML_TYPE_TEXT_UNDERLINE_STYLE|MID_FLAG_MERGE_PROPERTY|XML_TYPE_PROP_TEXT, 0 , 
SvtSaveOptions::ODFSVER_010, false },
-        { "CharUnderline", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_TYPE,
+        { PROPERTY_CHAR_UNDERLINE, XML_NAMESPACE_STYLE, 
XML_TEXT_UNDERLINE_TYPE,
            
XML_TYPE_TEXT_UNDERLINE_TYPE|MID_FLAG_MERGE_PROPERTY|XML_TYPE_PROP_TEXT, 0 , 
SvtSaveOptions::ODFSVER_010, false },
-        { "CharUnderline", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_WIDTH,
+        { PROPERTY_CHAR_UNDERLINE, XML_NAMESPACE_STYLE, 
XML_TEXT_UNDERLINE_WIDTH,
            
XML_TYPE_TEXT_UNDERLINE_WIDTH|MID_FLAG_MERGE_PROPERTY|XML_TYPE_PROP_TEXT, 0 , 
SvtSaveOptions::ODFSVER_010, false },
-        { "CharUnderlineColor", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_COLOR,
+        { PROPERTY_CHAR_UNDERLINE_COLOR, XML_NAMESPACE_STYLE, 
XML_TEXT_UNDERLINE_COLOR,
           
XML_TYPE_TEXT_UNDERLINE_COLOR|MID_FLAG_MULTI_PROPERTY|XML_TYPE_PROP_TEXT, 0    
, SvtSaveOptions::ODFSVER_010, false },
-        { "CharUnderlineHasColor", XML_NAMESPACE_STYLE, 
XML_TEXT_UNDERLINE_COLOR, 
XML_TYPE_TEXT_UNDERLINE_HASCOLOR|MID_FLAG_MERGE_ATTRIBUTE|XML_TYPE_PROP_TEXT, 0 
   , SvtSaveOptions::ODFSVER_010, false },
+        { PROPERTY_CHAR_UNDERLINE_HAS_COLOR, XML_NAMESPACE_STYLE, 
XML_TEXT_UNDERLINE_COLOR, 
XML_TYPE_TEXT_UNDERLINE_HASCOLOR|MID_FLAG_MERGE_ATTRIBUTE|XML_TYPE_PROP_TEXT, 0 
   , SvtSaveOptions::ODFSVER_010, false },
         { PROPERTY_FONTWEIGHT, XML_NAMESPACE_FO, XML_FONT_WEIGHT, 
XML_TYPE_TEXT_WEIGHT|XML_TYPE_PROP_TEXT, 0 , SvtSaveOptions::ODFSVER_010, false 
},
         { PROPERTY_FONTWIDTH, XML_NAMESPACE_STYLE, XML_FONT_WIDTH, 
XML_TYPE_FONT_WIDTH|XML_TYPE_PROP_TEXT, 0 , SvtSaveOptions::ODFSVER_010, false 
},
         { PROPERTY_FONTWORDLINEMODE, XML_NAMESPACE_STYLE, 
XML_TEXT_UNDERLINE_MODE,
           XML_TYPE_TEXT_LINE_MODE|MID_FLAG_MERGE_PROPERTY|XML_TYPE_PROP_TEXT, 
0 , SvtSaveOptions::ODFSVER_010, false },
-        { nullptr, 0, XML_TOKEN_INVALID, 0 , 0, SvtSaveOptions::ODFSVER_010, 
false}
+        { nullptr }
     };
     rtl::Reference < XMLPropertyHandlerFactory> xFac = new 
/*OPropertyHandlerFactory*/::xmloff::OControlPropertyHandlerFactory();
     return new XMLPropertySetMapper(s_aCellStylesProperties, xFac, bForExport);
@@ -146,7 +146,7 @@ rtl::Reference < XMLPropertySetMapper > 
OXMLHelper::GetRowStylesPropertySetMappe
     static const XMLPropertyMapEntry s_aStylesProperties[] =
     {
         { PROPERTY_ROW_HEIGHT, XML_NAMESPACE_STYLE, XML_ROW_HEIGHT, 
XML_TYPE_MEASURE|XML_TYPE_PROP_TABLE_ROW, 0, SvtSaveOptions::ODFSVER_010, false 
},
-        { nullptr, 0, XML_TOKEN_INVALID, 0 , 0, SvtSaveOptions::ODFSVER_010, 
false}
+        { nullptr }
     };
     rtl::Reference < XMLPropertyHandlerFactory> xFac = new 
OPropertyHandlerFactory();
     return new XMLPropertySetMapper(s_aStylesProperties, xFac, 
true/*bForExport*/);
diff --git a/include/xmloff/maptype.hxx b/include/xmloff/maptype.hxx
index 8ea0bebb75fc..942f7c46279a 100644
--- a/include/xmloff/maptype.hxx
+++ b/include/xmloff/maptype.hxx
@@ -31,8 +31,7 @@
 */
 struct XMLPropertyMapEntry
 {
-    const char*     msApiName;      /// Property-Name
-    sal_Int32       nApiNameLength; /// length of property name
+    rtl::OUStringConstExpr  msApiName;      /// Property-Name
     enum ::xmloff::token::XMLTokenEnum meXMLName;       /// XML-Name
     sal_uInt16      mnNameSpace;    /** declares the Namespace in which this
                                         property exists */
@@ -100,9 +99,11 @@ struct XMLPropertyMapEntry
      */
     bool            mbImportOnly;
 
-    template< std::size_t N >
+    static constexpr OUStringLiteral EMPTY{u""};
+
+    template<std::size_t N>
     XMLPropertyMapEntry(
-            const char (&sApiName)[N],
+            const OUStringLiteral<N>& sApiName,
             sal_uInt16      nNameSpace,
             enum ::xmloff::token::XMLTokenEnum eXMLName,
             sal_uInt32 nType,
@@ -111,26 +112,24 @@ struct XMLPropertyMapEntry
             bool            bImportOnly)
         :
         msApiName(sApiName),
-        nApiNameLength(N-1),
         meXMLName(eXMLName), mnNameSpace(nNameSpace), mnType(nType),
         mnContextId(nContextId), 
mnEarliestODFVersionForExport(nEarliestODFVersionForExport),
         mbImportOnly(bImportOnly)
     {}
-    XMLPropertyMapEntry(
-            std::nullptr_t ,
-            sal_uInt16      nNameSpace,
-            enum ::xmloff::token::XMLTokenEnum eXMLName,
-            sal_uInt32 nType,
-            sal_Int16       nContextId,
-            SvtSaveOptions::ODFSaneDefaultVersion nEarliestODFVersionForExport,
-            bool            bImportOnly)
+
+    /// used to mark the end of the array
+    XMLPropertyMapEntry(std::nullptr_t)
         :
-        msApiName(nullptr),
-        nApiNameLength(0),
-        meXMLName(eXMLName), mnNameSpace(nNameSpace), mnType(nType),
-        mnContextId(nContextId), 
mnEarliestODFVersionForExport(nEarliestODFVersionForExport),
-        mbImportOnly(bImportOnly)
+        msApiName(EMPTY),
+        meXMLName(xmloff::token::XML_TOKEN_INVALID), mnNameSpace(0), mnType(0),
+        mnContextId(0), 
mnEarliestODFVersionForExport(SvtSaveOptions::ODFSVER_010),
+        mbImportOnly(false)
     {}
+
+    const OUString & getApiName() const { return static_cast<const OUString 
&>(msApiName); }
+
+    // use token because an empty API name is a valid entry
+    bool IsEnd() const { return meXMLName == xmloff::token::XML_TOKEN_INVALID; 
}
 };
 
 
diff --git a/reportdesign/inc/strings.hxx b/reportdesign/inc/strings.hxx
index 565658b24a7b..90703b94f20d 100644
--- a/reportdesign/inc/strings.hxx
+++ b/reportdesign/inc/strings.hxx
@@ -32,215 +32,215 @@ inline constexpr OUStringLiteral SERVICE_GROUP = 
u"com.sun.star.report.Group";
 
 //= property names
 
-#define PROPERTY_VISIBLE "Visible"
-#define PROPERTY_NAME "Name"
-#define PROPERTY_HEIGHT "Height"
-#define PROPERTY_BACKCOLOR "BackColor"
-#define PROPERTY_BACKTRANSPARENT "BackTransparent"
-#define PROPERTY_CONTROLBACKGROUND "ControlBackground"
-#define PROPERTY_CONTROLBACKGROUNDTRANSPARENT "ControlBackgroundTransparent"
-#define PROPERTY_FORCENEWPAGE "ForceNewPage"
-#define PROPERTY_NEWROWORCOL "NewRowOrCol"
-#define PROPERTY_KEEPTOGETHER "KeepTogether"
-#define PROPERTY_CANGROW "CanGrow"
-#define PROPERTY_CANSHRINK "CanShrink"
-#define PROPERTY_REPEATSECTION "RepeatSection"
-#define PROPERTY_GROUP "Group"
-#define PROPERTY_REPORTDEFINITION "ReportDefinition"
+inline constexpr OUStringLiteral PROPERTY_VISIBLE = u"Visible";
+inline constexpr OUStringLiteral PROPERTY_NAME = u"Name";
+inline constexpr OUStringLiteral PROPERTY_HEIGHT = u"Height";
+inline constexpr OUStringLiteral PROPERTY_BACKCOLOR = u"BackColor";
+inline constexpr OUStringLiteral PROPERTY_BACKTRANSPARENT = u"BackTransparent";
+inline constexpr OUStringLiteral PROPERTY_CONTROLBACKGROUND = 
u"ControlBackground";
+inline constexpr OUStringLiteral PROPERTY_CONTROLBACKGROUNDTRANSPARENT = 
u"ControlBackgroundTransparent";
+inline constexpr OUStringLiteral PROPERTY_FORCENEWPAGE = u"ForceNewPage";
+inline constexpr OUStringLiteral PROPERTY_NEWROWORCOL = u"NewRowOrCol";
+inline constexpr OUStringLiteral PROPERTY_KEEPTOGETHER = u"KeepTogether";
+inline constexpr OUStringLiteral PROPERTY_CANGROW = u"CanGrow";
+inline constexpr OUStringLiteral PROPERTY_CANSHRINK = u"CanShrink";
+inline constexpr OUStringLiteral PROPERTY_REPEATSECTION = u"RepeatSection";
+inline constexpr OUStringLiteral PROPERTY_GROUP = u"Group";
+inline constexpr OUStringLiteral PROPERTY_REPORTDEFINITION = 
u"ReportDefinition";
 
-#define PROPERTY_GROUPINTERVAL "GroupInterval"
-#define PROPERTY_EXPRESSION "Expression"
-#define PROPERTY_GROUPON "GroupOn"
-#define PROPERTY_SORTASCENDING "SortAscending"
+inline constexpr OUStringLiteral PROPERTY_GROUPINTERVAL = u"GroupInterval";
+inline constexpr OUStringLiteral PROPERTY_EXPRESSION = u"Expression";
+inline constexpr OUStringLiteral PROPERTY_GROUPON = u"GroupOn";
+inline constexpr OUStringLiteral PROPERTY_SORTASCENDING = u"SortAscending";
 
-#define PROPERTY_MASTERFIELDS "MasterFields"
-#define PROPERTY_DETAILFIELDS "DetailFields"
-#define PROPERTY_CAPTION "Caption"
-#define PROPERTY_COMMAND "Command"
-#define PROPERTY_BACKGRAPHICLOCATION "BackGraphicLocation"
-#define PROPERTY_ORIENTATION "Orientation"
-#define PROPERTY_PAPERSIZE "Size"
-#define PROPERTY_GROUPKEEPTOGETHER "GroupKeepTogether"
-#define PROPERTY_PAGEHEADEROPTION "PageHeaderOption"
-#define PROPERTY_PAGEFOOTEROPTION "PageFooterOption"
-#define PROPERTY_COMMANDTYPE "CommandType"
-#define PROPERTY_REPORTHEADERON "ReportHeaderOn"
-#define PROPERTY_REPORTFOOTERON "ReportFooterOn"
-#define PROPERTY_PAGEHEADERON "PageHeaderOn"
-#define PROPERTY_PAGEFOOTERON "PageFooterOn"
-#define PROPERTY_HEADERON u"HeaderOn"
-#define PROPERTY_FOOTERON u"FooterOn"
-#define PROPERTY_WIDTH "Width"
-#define PROPERTY_POSITIONX "PositionX"
-#define PROPERTY_POSITIONY "PositionY"
-#define PROPERTY_AUTOGROW "AutoGrow"
-#define PROPERTY_MINHEIGHT "MinHeight"
-#define PROPERTY_DATAFIELD "DataField"
-#define PROPERTY_PARAADJUST "ParaAdjust"
-#define PROPERTY_FONTDESCRIPTOR "FontDescriptor"
-#define PROPERTY_FONTDESCRIPTORASIAN "FontDescriptorAsian"
-#define PROPERTY_FONTDESCRIPTORCOMPLEX "FontDescriptorComplex"
-#define PROPERTY_CONTROLTEXTEMPHASISMARK "ControlTextEmphasis"
-#define PROPERTY_CHARRELIEF "CharRelief"
-#define PROPERTY_CHARCOLOR "CharColor"
-#define PROPERTY_VERTICALALIGN "VerticalAlign"
-#define PROPERTY_IMAGEURL "ImageURL"
-#define PROPERTY_CHARUNDERLINECOLOR "CharUnderlineColor"
-#define PROPERTY_LABEL "Label"
-#define PROPERTY_EFFECTIVEDEFAULT "EffectiveDefault"
-#define PROPERTY_EFFECTIVEMAX "EffectiveMax"
-#define PROPERTY_EFFECTIVEMIN "EffectiveMin"
-#define PROPERTY_FORMATKEY "FormatKey"
-#define PROPERTY_MAXTEXTLEN "MaxTextLen"
-#define PROPERTY_FORMATSSUPPLIER "FormatsSupplier"
-#define PROPERTY_CONTROLBORDER "ControlBorder"
-#define PROPERTY_CONTROLBORDERCOLOR "ControlBorderColor"
-#define PROPERTY_BORDER "Border"
-#define PROPERTY_BORDERCOLOR "BorderColor"
-#define PROPERTY_DEFAULTCONTROL "DefaultControl"
+inline constexpr OUStringLiteral PROPERTY_MASTERFIELDS = u"MasterFields";
+inline constexpr OUStringLiteral PROPERTY_DETAILFIELDS = u"DetailFields";
+inline constexpr OUStringLiteral PROPERTY_CAPTION = u"Caption";
+inline constexpr OUStringLiteral PROPERTY_COMMAND = u"Command";
+inline constexpr OUStringLiteral PROPERTY_BACKGRAPHICLOCATION = 
u"BackGraphicLocation";
+inline constexpr OUStringLiteral PROPERTY_ORIENTATION = u"Orientation";
+inline constexpr OUStringLiteral PROPERTY_PAPERSIZE = u"Size";
+inline constexpr OUStringLiteral PROPERTY_GROUPKEEPTOGETHER = 
u"GroupKeepTogether";
+inline constexpr OUStringLiteral PROPERTY_PAGEHEADEROPTION = 
u"PageHeaderOption";
+inline constexpr OUStringLiteral PROPERTY_PAGEFOOTEROPTION = 
u"PageFooterOption";
+inline constexpr OUStringLiteral PROPERTY_COMMANDTYPE = u"CommandType";
+inline constexpr OUStringLiteral PROPERTY_REPORTHEADERON = u"ReportHeaderOn";
+inline constexpr OUStringLiteral PROPERTY_REPORTFOOTERON = u"ReportFooterOn";
+inline constexpr OUStringLiteral PROPERTY_PAGEHEADERON = u"PageHeaderOn";
+inline constexpr OUStringLiteral PROPERTY_PAGEFOOTERON = u"PageFooterOn";
+inline constexpr OUStringLiteral PROPERTY_HEADERON = u"HeaderOn";
+inline constexpr OUStringLiteral PROPERTY_FOOTERON = u"FooterOn";
+inline constexpr OUStringLiteral PROPERTY_WIDTH = u"Width";
+inline constexpr OUStringLiteral PROPERTY_POSITIONX = u"PositionX";
+inline constexpr OUStringLiteral PROPERTY_POSITIONY = u"PositionY";
+inline constexpr OUStringLiteral PROPERTY_AUTOGROW = u"AutoGrow";
+inline constexpr OUStringLiteral PROPERTY_MINHEIGHT = u"MinHeight";
+inline constexpr OUStringLiteral PROPERTY_DATAFIELD = u"DataField";
+inline constexpr OUStringLiteral PROPERTY_PARAADJUST = u"ParaAdjust";
+inline constexpr OUStringLiteral PROPERTY_FONTDESCRIPTOR = u"FontDescriptor";
+inline constexpr OUStringLiteral PROPERTY_FONTDESCRIPTORASIAN = 
u"FontDescriptorAsian";
+inline constexpr OUStringLiteral PROPERTY_FONTDESCRIPTORCOMPLEX = 
u"FontDescriptorComplex";
+inline constexpr OUStringLiteral PROPERTY_CONTROLTEXTEMPHASISMARK = 
u"ControlTextEmphasis";
+inline constexpr OUStringLiteral PROPERTY_CHARRELIEF = u"CharRelief";
+inline constexpr OUStringLiteral PROPERTY_CHARCOLOR = u"CharColor";
+inline constexpr OUStringLiteral PROPERTY_VERTICALALIGN = u"VerticalAlign";
+inline constexpr OUStringLiteral PROPERTY_IMAGEURL = u"ImageURL";
+inline constexpr OUStringLiteral PROPERTY_CHARUNDERLINECOLOR = 
u"CharUnderlineColor";
+inline constexpr OUStringLiteral PROPERTY_LABEL = u"Label";
+inline constexpr OUStringLiteral PROPERTY_EFFECTIVEDEFAULT = 
u"EffectiveDefault";
+inline constexpr OUStringLiteral PROPERTY_EFFECTIVEMAX = u"EffectiveMax";
+inline constexpr OUStringLiteral PROPERTY_EFFECTIVEMIN = u"EffectiveMin";
+inline constexpr OUStringLiteral PROPERTY_FORMATKEY = u"FormatKey";
+inline constexpr OUStringLiteral PROPERTY_MAXTEXTLEN = u"MaxTextLen";
+inline constexpr OUStringLiteral PROPERTY_FORMATSSUPPLIER = u"FormatsSupplier";
+inline constexpr OUStringLiteral PROPERTY_CONTROLBORDER = u"ControlBorder";
+inline constexpr OUStringLiteral PROPERTY_CONTROLBORDERCOLOR = 
u"ControlBorderColor";
+inline constexpr OUStringLiteral PROPERTY_BORDER = u"Border";
+inline constexpr OUStringLiteral PROPERTY_BORDERCOLOR = u"BorderColor";
+inline constexpr OUStringLiteral PROPERTY_DEFAULTCONTROL = u"DefaultControl";
 
-#define PROPERTY_LEFTMARGIN "LeftMargin"
-#define PROPERTY_RIGHTMARGIN "RightMargin"
-#define PROPERTY_TOPMARGIN "TopMargin"
-#define PROPERTY_BOTTOMMARGIN "BottomMargin"
+inline constexpr OUStringLiteral PROPERTY_LEFTMARGIN = u"LeftMargin";
+inline constexpr OUStringLiteral PROPERTY_RIGHTMARGIN = u"RightMargin";
+inline constexpr OUStringLiteral PROPERTY_TOPMARGIN = u"TopMargin";
+inline constexpr OUStringLiteral PROPERTY_BOTTOMMARGIN = u"BottomMargin";
 
-#define PROPERTY_PRINTREPEATEDVALUES "PrintRepeatedValues"
-#define PROPERTY_CONDITIONALPRINTEXPRESSION "ConditionalPrintExpression"
-#define PROPERTY_STARTNEWCOLUMN "StartNewColumn"
-#define PROPERTY_RESETPAGENUMBER "ResetPageNumber"
-#define PROPERTY_PRINTWHENGROUPCHANGE "PrintWhenGroupChange"
-#define PROPERTY_STATE "State"
-#define PROPERTY_TIME_STATE "TimeState"
-#define PROPERTY_DATE_STATE "DateState"
-#define PROPERTY_FONTCHARWIDTH    "FontCharWidth"
-#define PROPERTY_FONTCHARSET      "CharFontCharSet"
-#define PROPERTY_FONTFAMILY       "CharFontFamily"
-#define PROPERTY_CHARFONTHEIGHT   "CharHeight"
-#define PROPERTY_FONTHEIGHT       "FontHeight"
-#define PROPERTY_FONTKERNING      "FontKerning"
-#define PROPERTY_FONT             "FontDescriptor"
-#define PROPERTY_FONTNAME         "FontName"
-#define PROPERTY_FONTORIENTATION  "CharRotation"
-#define PROPERTY_FONTPITCH        "CharFontPitch"
-#define PROPERTY_CHARSTRIKEOUT    "CharStrikeout"
-#define PROPERTY_FONTSTRIKEOUT    "FontStrikeout"
-#define PROPERTY_FONTSTYLENAME    "CharFontStyleName"
-#define PROPERTY_FONTUNDERLINE    "CharUnderline"
-#define PROPERTY_FONTWEIGHT       "CharWeight"
-#define PROPERTY_FONTWIDTH        "FontWidth"
-#define PROPERTY_FONTTYPE         "FontType"
+inline constexpr OUStringLiteral PROPERTY_PRINTREPEATEDVALUES = 
u"PrintRepeatedValues";
+inline constexpr OUStringLiteral PROPERTY_CONDITIONALPRINTEXPRESSION = 
u"ConditionalPrintExpression";
+inline constexpr OUStringLiteral PROPERTY_STARTNEWCOLUMN = u"StartNewColumn";
+inline constexpr OUStringLiteral PROPERTY_RESETPAGENUMBER = u"ResetPageNumber";
+inline constexpr OUStringLiteral PROPERTY_PRINTWHENGROUPCHANGE = 
u"PrintWhenGroupChange";
+inline constexpr OUStringLiteral PROPERTY_STATE = u"State";
+inline constexpr OUStringLiteral PROPERTY_TIME_STATE = u"TimeState";
+inline constexpr OUStringLiteral PROPERTY_DATE_STATE = u"DateState";
+inline constexpr OUStringLiteral PROPERTY_FONTCHARWIDTH    = u"FontCharWidth";
+inline constexpr OUStringLiteral PROPERTY_FONTCHARSET      = 
u"CharFontCharSet";
+inline constexpr OUStringLiteral PROPERTY_FONTFAMILY       = u"CharFontFamily";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTHEIGHT   = u"CharHeight";
+inline constexpr OUStringLiteral PROPERTY_FONTHEIGHT       = u"FontHeight";
+inline constexpr OUStringLiteral PROPERTY_FONTKERNING      = u"FontKerning";
+inline constexpr OUStringLiteral PROPERTY_FONT             = u"FontDescriptor";
+inline constexpr OUStringLiteral PROPERTY_FONTNAME         = u"FontName";
+inline constexpr OUStringLiteral PROPERTY_FONTORIENTATION  = u"CharRotation";
+inline constexpr OUStringLiteral PROPERTY_FONTPITCH        = u"CharFontPitch";
+inline constexpr OUStringLiteral PROPERTY_CHARSTRIKEOUT    = u"CharStrikeout";
+inline constexpr OUStringLiteral PROPERTY_FONTSTRIKEOUT    = u"FontStrikeout";
+inline constexpr OUStringLiteral PROPERTY_FONTSTYLENAME    = 
u"CharFontStyleName";
+inline constexpr OUStringLiteral PROPERTY_FONTUNDERLINE    = u"CharUnderline";
+inline constexpr OUStringLiteral PROPERTY_FONTWEIGHT       = u"CharWeight";
+inline constexpr OUStringLiteral PROPERTY_FONTWIDTH        = u"FontWidth";
+inline constexpr OUStringLiteral PROPERTY_FONTTYPE         = u"FontType";
 
-#define PROPERTY_ENABLED       "Enabled"
+inline constexpr OUStringLiteral PROPERTY_ENABLED       = u"Enabled";
 
-#define PROPERTY_CHAREMPHASIS     "CharEmphasis"
-#define PROPERTY_CHARFONTNAME     "CharFontName"
-#define PROPERTY_CHARFONTSTYLENAME "CharFontStyleName"
-#define PROPERTY_CHARFONTFAMILY   "CharFontFamily"
-#define PROPERTY_CHARFONTCHARSET  "CharFontCharSet"
-#define PROPERTY_CHARFONTPITCH    "CharFontPitch"
-#define PROPERTY_CHARHEIGHT       "CharHeight"
-#define PROPERTY_CHARUNDERLINE    "CharUnderline"
-#define PROPERTY_CHARWEIGHT       "CharWeight"
-#define PROPERTY_CHARPOSTURE      "CharPosture"
-#define PROPERTY_CHARWORDMODE     "CharWordMode"
-#define PROPERTY_CHARROTATION     "CharRotation"
-#define PROPERTY_CHARSCALEWIDTH   "CharScaleWidth"
+inline constexpr OUStringLiteral PROPERTY_CHAREMPHASIS     = u"CharEmphasis";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTNAME     = u"CharFontName";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTSTYLENAME = 
u"CharFontStyleName";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTFAMILY   = u"CharFontFamily";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTCHARSET  = 
u"CharFontCharSet";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTPITCH    = u"CharFontPitch";
+inline constexpr OUStringLiteral PROPERTY_CHARHEIGHT       = u"CharHeight";
+inline constexpr OUStringLiteral PROPERTY_CHARUNDERLINE    = u"CharUnderline";
+inline constexpr OUStringLiteral PROPERTY_CHARWEIGHT       = u"CharWeight";
+inline constexpr OUStringLiteral PROPERTY_CHARPOSTURE      = u"CharPosture";
+inline constexpr OUStringLiteral PROPERTY_CHARWORDMODE     = u"CharWordMode";
+inline constexpr OUStringLiteral PROPERTY_CHARROTATION     = u"CharRotation";
+inline constexpr OUStringLiteral PROPERTY_CHARSCALEWIDTH   = u"CharScaleWidth";
 
 // Asian
-#define PROPERTY_CHAREMPHASISASIAN        "CharEmphasisAsian"
-#define PROPERTY_CHARFONTNAMEASIAN        "CharFontNameAsian"
-#define PROPERTY_CHARFONTSTYLENAMEASIAN   "CharFontStyleNameAsian"
-#define PROPERTY_CHARFONTFAMILYASIAN      "CharFontFamilyAsian"
-#define PROPERTY_CHARFONTCHARSETASIAN     "CharFontCharSetAsian"
-#define PROPERTY_CHARFONTPITCHASIAN       "CharFontPitchAsian"
-#define PROPERTY_CHARHEIGHTASIAN          "CharHeightAsian"
-#define PROPERTY_CHARUNDERLINEASIAN       "CharUnderlineAsian"
-#define PROPERTY_CHARWEIGHTASIAN          "CharWeightAsian"
-#define PROPERTY_CHARPOSTUREASIAN         "CharPostureAsian"
-#define PROPERTY_CHARWORDMODEASIAN        "CharWordModeAsian"
-#define PROPERTY_CHARROTATIONASIAN        "CharRotationAsian"
-#define PROPERTY_CHARSCALEWIDTHASIAN      "CharScaleWidthAsian"
-#define PROPERTY_CHARLOCALEASIAN           "CharLocaleAsian"
+inline constexpr OUStringLiteral PROPERTY_CHAREMPHASISASIAN        = 
u"CharEmphasisAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTNAMEASIAN        = 
u"CharFontNameAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTSTYLENAMEASIAN   = 
u"CharFontStyleNameAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTFAMILYASIAN      = 
u"CharFontFamilyAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTCHARSETASIAN     = 
u"CharFontCharSetAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTPITCHASIAN       = 
u"CharFontPitchAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARHEIGHTASIAN          = 
u"CharHeightAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARUNDERLINEASIAN       = 
u"CharUnderlineAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARWEIGHTASIAN          = 
u"CharWeightAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARPOSTUREASIAN         = 
u"CharPostureAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARWORDMODEASIAN        = 
u"CharWordModeAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARROTATIONASIAN        = 
u"CharRotationAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARSCALEWIDTHASIAN      = 
u"CharScaleWidthAsian";
+inline constexpr OUStringLiteral PROPERTY_CHARLOCALEASIAN          = 
u"CharLocaleAsian";
 
 // Complex
-#define PROPERTY_CHAREMPHASISCOMPLEX      "CharEmphasisComplex"
-#define PROPERTY_CHARFONTNAMECOMPLEX      "CharFontNameComplex"
-#define PROPERTY_CHARFONTSTYLENAMECOMPLEX "CharFontStyleNameComplex"
-#define PROPERTY_CHARFONTFAMILYCOMPLEX    "CharFontFamilyComplex"
-#define PROPERTY_CHARFONTCHARSETCOMPLEX   "CharFontCharSetComplex"
-#define PROPERTY_CHARFONTPITCHCOMPLEX     "CharFontPitchComplex"
-#define PROPERTY_CHARHEIGHTCOMPLEX        "CharHeightComplex"
-#define PROPERTY_CHARUNDERLINECOMPLEX     "CharUnderlineComplex"
-#define PROPERTY_CHARWEIGHTCOMPLEX        "CharWeightComplex"
-#define PROPERTY_CHARPOSTURECOMPLEX       "CharPostureComplex"
-#define PROPERTY_CHARWORDMODECOMPLEX      "CharWordModeComplex"
-#define PROPERTY_CHARROTATIONCOMPLEX      "CharRotationComplex"
-#define PROPERTY_CHARSCALEWIDTHCOMPLEX    "CharScaleWidthComplex"
-#define PROPERTY_CHARLOCALECOMPLEX        "CharLocaleComplex"
+inline constexpr OUStringLiteral PROPERTY_CHAREMPHASISCOMPLEX      = 
u"CharEmphasisComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTNAMECOMPLEX      = 
u"CharFontNameComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTSTYLENAMECOMPLEX = 
u"CharFontStyleNameComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTFAMILYCOMPLEX    = 
u"CharFontFamilyComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTCHARSETCOMPLEX   = 
u"CharFontCharSetComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARFONTPITCHCOMPLEX     = 
u"CharFontPitchComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARHEIGHTCOMPLEX        = 
u"CharHeightComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARUNDERLINECOMPLEX     = 
u"CharUnderlineComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARWEIGHTCOMPLEX        = 
u"CharWeightComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARPOSTURECOMPLEX       = 
u"CharPostureComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARWORDMODECOMPLEX      = 
u"CharWordModeComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARROTATIONCOMPLEX      = 
u"CharRotationComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARSCALEWIDTHCOMPLEX    = 
u"CharScaleWidthComplex";
+inline constexpr OUStringLiteral PROPERTY_CHARLOCALECOMPLEX        = 
u"CharLocaleComplex";
 
-#define PROPERTY_STATUSINDICATOR  "StatusIndicator"
-#define PROPERTY_SECTION          "Section"
-#define PROPERTY_FILTER           "Filter"
-#define PROPERTY_ESCAPEPROCESSING "EscapeProcessing"
+inline constexpr OUStringLiteral PROPERTY_STATUSINDICATOR  = 
u"StatusIndicator";
+inline constexpr OUStringLiteral PROPERTY_SECTION          = u"Section";
+inline constexpr OUStringLiteral PROPERTY_FILTER           = u"Filter";
+inline constexpr OUStringLiteral PROPERTY_ESCAPEPROCESSING = 
u"EscapeProcessing";
 
-#define PROPERTY_MULTILINE        "MultiLine"
-#define PROPERTY_ACTIVECONNECTION "ActiveConnection"
-#define PROPERTY_DATASOURCENAME   "DataSourceName"
-#define PROPERTY_FORMULA          "Formula"
-#define PROPERTY_INITIALFORMULA   "InitialFormula"
-#define PROPERTY_PREEVALUATED     "PreEvaluated"
-#define PROPERTY_DEEPTRAVERSING   "DeepTraversing"
-#define PROPERTY_MIMETYPE         "MimeType"
-#define PROPERTY_BACKGROUNDCOLOR  "BackgroundColor"
-#define PROPERTY_TEXT             "Text"
-#define PROPERTY_TEXTCOLOR        "TextColor"
-#define PROPERTY_TEXTLINECOLOR   "TextLineColor"
-#define PROPERTY_FONTRELIEF   "FontRelief"
-#define PROPERTY_FONTEMPHASISMARK "FontEmphasisMark"
-#define PROPERTY_ZORDER           "ZOrder"
-#define PROPERTY_OPAQUE           "Opaque"
-#define PROPERTY_TRANSFORMATION    "Transformation"
-#define PROPERTY_CUSTOMSHAPEENGINE "CustomShapeEngine"
-#define PROPERTY_CUSTOMSHAPEDATA   "CustomShapeData"
-#define PROPERTY_CUSTOMSHAPEGEOMETRY "CustomShapeGeometry"
+inline constexpr OUStringLiteral PROPERTY_MULTILINE        = u"MultiLine";
+inline constexpr OUStringLiteral PROPERTY_ACTIVECONNECTION = 
u"ActiveConnection";
+inline constexpr OUStringLiteral PROPERTY_DATASOURCENAME   = u"DataSourceName";
+inline constexpr OUStringLiteral PROPERTY_FORMULA          = u"Formula";
+inline constexpr OUStringLiteral PROPERTY_INITIALFORMULA   = u"InitialFormula";
+inline constexpr OUStringLiteral PROPERTY_PREEVALUATED     = u"PreEvaluated";
+inline constexpr OUStringLiteral PROPERTY_DEEPTRAVERSING   = u"DeepTraversing";
+inline constexpr OUStringLiteral PROPERTY_MIMETYPE         = u"MimeType";
+inline constexpr OUStringLiteral PROPERTY_BACKGROUNDCOLOR  = 
u"BackgroundColor";
+inline constexpr OUStringLiteral PROPERTY_TEXT             = u"Text";
+inline constexpr OUStringLiteral PROPERTY_TEXTCOLOR        = u"TextColor";
+inline constexpr OUStringLiteral PROPERTY_TEXTLINECOLOR   = u"TextLineColor";
+inline constexpr OUStringLiteral PROPERTY_FONTRELIEF   = u"FontRelief";
+inline constexpr OUStringLiteral PROPERTY_FONTEMPHASISMARK = 
u"FontEmphasisMark";
+inline constexpr OUStringLiteral PROPERTY_ZORDER           = u"ZOrder";
+inline constexpr OUStringLiteral PROPERTY_OPAQUE           = u"Opaque";
+inline constexpr OUStringLiteral PROPERTY_TRANSFORMATION    = 
u"Transformation";
+inline constexpr OUStringLiteral PROPERTY_CUSTOMSHAPEENGINE = 
u"CustomShapeEngine";
+inline constexpr OUStringLiteral PROPERTY_CUSTOMSHAPEDATA   = 
u"CustomShapeData";
+inline constexpr OUStringLiteral PROPERTY_CUSTOMSHAPEGEOMETRY = 
u"CustomShapeGeometry";
 
-#define PROPERTY_NUMBERINGTYPE     "NumberingType"
-#define PROPERTY_PAGESTYLELAYOUT   "PageStyleLayout"
-#define PROPERTY_ISLANDSCAPE       "IsLandscape"
-#define PROPERTY_ALIGN "Align"
-#define PROPERTY_TYPE  "Type"
+inline constexpr OUStringLiteral PROPERTY_NUMBERINGTYPE     = u"NumberingType";
+inline constexpr OUStringLiteral PROPERTY_PAGESTYLELAYOUT   = 
u"PageStyleLayout";
+inline constexpr OUStringLiteral PROPERTY_ISLANDSCAPE       = u"IsLandscape";
+inline constexpr OUStringLiteral PROPERTY_ALIGN = u"Align";
+inline constexpr OUStringLiteral PROPERTY_TYPE  = u"Type";
 
-#define PROPERTY_PRESERVEIRI  "PreserveIRI"
-#define PROPERTY_SCALEMODE  "ScaleMode"
+inline constexpr OUStringLiteral PROPERTY_PRESERVEIRI  = u"PreserveIRI";
+inline constexpr OUStringLiteral PROPERTY_SCALEMODE  = u"ScaleMode";
 
-#define PROPERTY_LINESTYLE  "LineStyle"
-#define PROPERTY_LINEDASH  "LineDash"
-#define PROPERTY_LINECOLOR  "LineColor"
-#define PROPERTY_LINETRANSPARENCE  "LineTransparence"
-#define PROPERTY_LINEWIDTH  "LineWidth"
+inline constexpr OUStringLiteral PROPERTY_LINESTYLE  = u"LineStyle";
+inline constexpr OUStringLiteral PROPERTY_LINEDASH  = u"LineDash";
+inline constexpr OUStringLiteral PROPERTY_LINECOLOR  = u"LineColor";
+inline constexpr OUStringLiteral PROPERTY_LINETRANSPARENCE  = 
u"LineTransparence";
+inline constexpr OUStringLiteral PROPERTY_LINEWIDTH  = u"LineWidth";
 
-#define PROPERTY_CHARFLASH            "CharFlash"
-#define PROPERTY_CHARESCAPEMENTHEIGHT "CharEscapementHeight"
-#define PROPERTY_CHARLOCALE           "CharLocale"
-#define PROPERTY_CHARESCAPEMENT       "CharEscapement"
-#define PROPERTY_CHARCASEMAP          "CharCaseMap"
-#define PROPERTY_CHARCOMBINEISON      "CharCombineIsOn"
-#define PROPERTY_CHARCOMBINEPREFIX    "CharCombinePrefix"
-#define PROPERTY_CHARCOMBINESUFFIX    "CharCombineSuffix"
-#define PROPERTY_CHARHIDDEN           "CharHidden"
-#define PROPERTY_CHARSHADOWED         "CharShadowed"
-#define PROPERTY_CHARCONTOURED        "CharContoured"
-#define PROPERTY_CHARAUTOKERNING      "CharAutoKerning"
-#define PROPERTY_CHARKERNING          "CharKerning"
-#define PROPERTY_HYPERLINKURL "HyperLinkURL"
-#define PROPERTY_HYPERLINKTARGET "HyperLinkTarget"
-#define PROPERTY_HYPERLINKNAME "HyperLinkName"
-#define PROPERTY_VISITEDCHARSTYLENAME "VisitedCharStyleName"
-#define PROPERTY_UNVISITEDCHARSTYLENAME "UnvisitedCharStyleName"
-#define PROPERTY_APPLYFILTER          "ApplyFilter"
-#define PROPERTY_MAXROWS              "MaxRows"
+inline constexpr OUStringLiteral PROPERTY_CHARFLASH            = u"CharFlash";
+inline constexpr OUStringLiteral PROPERTY_CHARESCAPEMENTHEIGHT = 
u"CharEscapementHeight";
+inline constexpr OUStringLiteral PROPERTY_CHARLOCALE           = u"CharLocale";
+inline constexpr OUStringLiteral PROPERTY_CHARESCAPEMENT       = 
u"CharEscapement";
+inline constexpr OUStringLiteral PROPERTY_CHARCASEMAP          = 
u"CharCaseMap";
+inline constexpr OUStringLiteral PROPERTY_CHARCOMBINEISON      = 
u"CharCombineIsOn";
+inline constexpr OUStringLiteral PROPERTY_CHARCOMBINEPREFIX    = 
u"CharCombinePrefix";
+inline constexpr OUStringLiteral PROPERTY_CHARCOMBINESUFFIX    = 
u"CharCombineSuffix";
+inline constexpr OUStringLiteral PROPERTY_CHARHIDDEN           = u"CharHidden";
+inline constexpr OUStringLiteral PROPERTY_CHARSHADOWED         = 
u"CharShadowed";
+inline constexpr OUStringLiteral PROPERTY_CHARCONTOURED        = 
u"CharContoured";
+inline constexpr OUStringLiteral PROPERTY_CHARAUTOKERNING      = 
u"CharAutoKerning";
+inline constexpr OUStringLiteral PROPERTY_CHARKERNING          = 
u"CharKerning";
+inline constexpr OUStringLiteral PROPERTY_HYPERLINKURL = u"HyperLinkURL";
+inline constexpr OUStringLiteral PROPERTY_HYPERLINKTARGET = u"HyperLinkTarget";
+inline constexpr OUStringLiteral PROPERTY_HYPERLINKNAME = u"HyperLinkName";
+inline constexpr OUStringLiteral PROPERTY_VISITEDCHARSTYLENAME = 
u"VisitedCharStyleName";
+inline constexpr OUStringLiteral PROPERTY_UNVISITEDCHARSTYLENAME = 
u"UnvisitedCharStyleName";
+inline constexpr OUStringLiteral PROPERTY_APPLYFILTER          = 
u"ApplyFilter";
+inline constexpr OUStringLiteral PROPERTY_MAXROWS              = u"MaxRows";
 
-#define PROPERTY_REPORTNAME "ReportName"
+inline constexpr OUStringLiteral PROPERTY_REPORTNAME = u"ReportName";
 inline constexpr OUStringLiteral CFG_REPORTDESIGNER = u"SunReportBuilder";
 inline constexpr OUStringLiteral DBREPORTHEADER = u"ReportHeader";
 inline constexpr OUStringLiteral DBREPORTFOOTER = u"ReportFooter";
@@ -251,29 +251,29 @@ inline constexpr OUStringLiteral DBGROUPFOOTER = 
u"GroupFooter";
 inline constexpr OUStringLiteral DBDETAIL = u"Detail";
 inline constexpr OUStringLiteral REPORTCONTROLFORMAT = u"ReportControlFormat";
 inline constexpr OUStringLiteral CURRENT_WINDOW = u"CurrentWindow";
-#define PROPERTY_FONTCOLOR "FontColor"
-#define PROPERTY_EMPTY_IS_NULL "ConvertEmptyToNull"
-#define PROPERTY_FILTERPROPOSAL "UseFilterValueProposal"
-#define PROPERTY_POSITION "Position"
-#define PROPERTY_FORMATKEYDATE "FormatKeyDate"
-#define PROPERTY_FORMATKEYTIME "FormatKeyTime"
+inline constexpr OUStringLiteral PROPERTY_FONTCOLOR = u"FontColor";
+inline constexpr OUStringLiteral PROPERTY_EMPTY_IS_NULL = 
u"ConvertEmptyToNull";
+inline constexpr OUStringLiteral PROPERTY_FILTERPROPOSAL = 
u"UseFilterValueProposal";
+inline constexpr OUStringLiteral PROPERTY_POSITION = u"Position";
+inline constexpr OUStringLiteral PROPERTY_FORMATKEYDATE = u"FormatKeyDate";
+inline constexpr OUStringLiteral PROPERTY_FORMATKEYTIME = u"FormatKeyTime";
 inline constexpr OUStringLiteral DBOVERLAPPEDCONTROL = u"OverlappedControl";
-#define PROPERTY_FORMULALIST "FormulaList"
-#define PROPERTY_SCOPE "Scope"
-#define PROPERTY_CHARTTYPE "ChartType"
-#define PROPERTY_PREVIEW_COUNT "RowLimit"
-#define PROPERTY_TITLE "Title"
-#define PROPERTY_AREA "Area"
-#define PROPERTY_FILLCOLOR "FillColor"
+inline constexpr OUStringLiteral PROPERTY_FORMULALIST = u"FormulaList";
+inline constexpr OUStringLiteral PROPERTY_SCOPE = u"Scope";
+inline constexpr OUStringLiteral PROPERTY_CHARTTYPE = u"ChartType";
+inline constexpr OUStringLiteral PROPERTY_PREVIEW_COUNT = u"RowLimit";
+inline constexpr OUStringLiteral PROPERTY_TITLE = u"Title";
+inline constexpr OUStringLiteral PROPERTY_AREA = u"Area";
+inline constexpr OUStringLiteral PROPERTY_FILLCOLOR = u"FillColor";
 inline constexpr OUStringLiteral DBTEXTBOXBOUNDCONTENT = 
u"TextBoxBoundContent";
 
 inline constexpr OUStringLiteral SERVICE_SETTINGSIMPORTER = 
u"com.sun.star.comp.Report.XMLOasisSettingsImporter";
 inline constexpr OUStringLiteral SERVICE_STYLESIMPORTER = 
u"com.sun.star.comp.Report.XMLOasisStylesImporter";
 inline constexpr OUStringLiteral SERVICE_CONTENTIMPORTER = 
u"com.sun.star.comp.Report.XMLOasisContentImporter";
 inline constexpr OUStringLiteral SERVICE_METAIMPORTER = 
u"com.sun.star.comp.Report.XMLOasisMetaImporter";
-#define PROPERTY_BORDERLEFT "BorderLeft"
-#define PROPERTY_BORDERRIGHT "BorderRight"
-#define PROPERTY_BORDERTOP "BorderTop"
-#define PROPERTY_BORDERBOTTOM "BorderBottom"
+inline constexpr OUStringLiteral PROPERTY_BORDERLEFT = u"BorderLeft";
+inline constexpr OUStringLiteral PROPERTY_BORDERRIGHT = u"BorderRight";
+inline constexpr OUStringLiteral PROPERTY_BORDERTOP = u"BorderTop";
+inline constexpr OUStringLiteral PROPERTY_BORDERBOTTOM = u"BorderBottom";
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s 
cinkeys+=0=break: */
diff --git a/reportdesign/source/filter/xml/xmlHelper.cxx 
b/reportdesign/source/filter/xml/xmlHelper.cxx
index 19b84f44e822..426965893abb 100644
--- a/reportdesign/source/filter/xml/xmlHelper.cxx
+++ b/reportdesign/source/filter/xml/xmlHelper.cxx
@@ -101,7 +101,7 @@ const XMLPropertyHandler* 
OPropertyHandlerFactory::GetPropertyHandler(sal_Int32
 #define MAP_CONST_P_ASCII( name, prefix, token, type, context ) { name, 
XML_NAMESPACE_##prefix, XML_##token, type|XML_TYPE_PROP_PARAGRAPH,  context, 
SvtSaveOptions::ODFSVER_010, false }
 #define MAP_CONST_S( name, prefix, token, type, context )  { name, 
XML_NAMESPACE_##prefix, XML_##token, type|XML_TYPE_PROP_SECTION,    context, 
SvtSaveOptions::ODFSVER_010, false }
 #define MAP_CONST_C_ASCII( name, prefix, token, type, context ) { name, 
XML_NAMESPACE_##prefix, XML_##token, type|XML_TYPE_PROP_TABLE_CELL, context, 
SvtSaveOptions::ODFSVER_010, false }
-#define MAP_END() { nullptr, 0, XML_TOKEN_INVALID, 0 ,0, 
SvtSaveOptions::ODFSVER_010, false}
+#define MAP_END() { nullptr }
 
 rtl::Reference < XMLPropertySetMapper > 
OXMLHelper::GetCellStylePropertyMap(bool _bOldFormat, bool bForExport)
 {
@@ -120,10 +120,10 @@ rtl::Reference < XMLPropertySetMapper > 
OXMLHelper::GetCellStylePropertyMap(bool
                                                 FO,   BACKGROUND_COLOR,     
XML_TYPE_COLORTRANSPARENT|MID_FLAG_MULTI_PROPERTY, 0 ),
             MAP_CONST_P_ASCII(      PROPERTY_CONTROLBACKGROUNDTRANSPARENT,
                                                 FO,   BACKGROUND_COLOR,     
XML_TYPE_ISTRANSPARENT|MID_FLAG_MERGE_ATTRIBUTE, 0 ),
-            MAP_CONST_C_ASCII(      "BorderLeft",       FO,     BORDER_LEFT,   
        XML_TYPE_BORDER, 0 ),
-            MAP_CONST_C_ASCII(      "BorderRight",      FO,     BORDER_RIGHT,  
        XML_TYPE_BORDER, 0 ),
-            MAP_CONST_C_ASCII(      "BorderTop",        FO,     BORDER_TOP,    
        XML_TYPE_BORDER, 0 ),
-            MAP_CONST_C_ASCII(      "BorderBottom",     FO,     BORDER_BOTTOM, 
        XML_TYPE_BORDER, 0 ),
+            MAP_CONST_C_ASCII(      PROPERTY_BORDERLEFT,       FO,     
BORDER_LEFT,           XML_TYPE_BORDER, 0 ),
+            MAP_CONST_C_ASCII(      PROPERTY_BORDERRIGHT,      FO,     
BORDER_RIGHT,          XML_TYPE_BORDER, 0 ),
+            MAP_CONST_C_ASCII(      PROPERTY_BORDERTOP,        FO,     
BORDER_TOP,            XML_TYPE_BORDER, 0 ),
+            MAP_CONST_C_ASCII(      PROPERTY_BORDERBOTTOM,     FO,     
BORDER_BOTTOM,         XML_TYPE_BORDER, 0 ),
             MAP_END()
         };
         return new XMLPropertySetMapper(s_aXMLCellStylesProperties,new 
OPropertyHandlerFactory(), bForExport);
@@ -140,10 +140,10 @@ rtl::Reference < XMLPropertySetMapper > 
OXMLHelper::GetCellStylePropertyMap(bool
                                                 FO,   BACKGROUND_COLOR,     
XML_TYPE_ISTRANSPARENT|MID_FLAG_MERGE_ATTRIBUTE, 0 ),
             MAP_CONST_C_ASCII(      PROPERTY_VERTICALALIGN,
                                                 STYLE,    VERTICAL_ALIGN,      
 XML_RPT_ALIGNMENT, 0 ),
-            MAP_CONST_C_ASCII(      "BorderLeft",       FO,     BORDER_LEFT,   
        XML_TYPE_BORDER, 0 ),
-            MAP_CONST_C_ASCII(      "BorderRight",      FO,     BORDER_RIGHT,  
        XML_TYPE_BORDER, 0 ),
-            MAP_CONST_C_ASCII(      "BorderTop",        FO,     BORDER_TOP,    
        XML_TYPE_BORDER, 0 ),
-            MAP_CONST_C_ASCII(      "BorderBottom",     FO,     BORDER_BOTTOM, 
        XML_TYPE_BORDER, 0 ),
+            MAP_CONST_C_ASCII(      PROPERTY_BORDERLEFT,       FO,     
BORDER_LEFT,           XML_TYPE_BORDER, 0 ),
+            MAP_CONST_C_ASCII(      PROPERTY_BORDERRIGHT,      FO,     
BORDER_RIGHT,          XML_TYPE_BORDER, 0 ),
+            MAP_CONST_C_ASCII(      PROPERTY_BORDERTOP,        FO,     
BORDER_TOP,            XML_TYPE_BORDER, 0 ),
+            MAP_CONST_C_ASCII(      PROPERTY_BORDERBOTTOM,     FO,     
BORDER_BOTTOM,         XML_TYPE_BORDER, 0 ),
             MAP_END()
         };
         return new XMLPropertySetMapper(s_aXMLCellStylesProperties,new 
OPropertyHandlerFactory(), bForExport);
@@ -165,8 +165,8 @@ const XMLPropertyMapEntry* OXMLHelper::GetRowStyleProps()
 {
     static const XMLPropertyMapEntry aXMLStylesProperties[] =
     {
-        MAP_CONST_S("Height", STYLE, ROW_HEIGHT, XML_TYPE_PROP_TABLE_ROW | 
XML_TYPE_MEASURE, 0),
-        MAP_CONST_S("MinHeight", STYLE, MIN_ROW_HEIGHT, 
XML_TYPE_PROP_TABLE_ROW | XML_TYPE_MEASURE, 0),
+        MAP_CONST_S(PROPERTY_HEIGHT, STYLE, ROW_HEIGHT, 
XML_TYPE_PROP_TABLE_ROW | XML_TYPE_MEASURE, 0),
+        MAP_CONST_S(PROPERTY_MINHEIGHT, STYLE, MIN_ROW_HEIGHT, 
XML_TYPE_PROP_TABLE_ROW | XML_TYPE_MEASURE, 0),
         MAP_END()
     };
     return aXMLStylesProperties;
@@ -176,7 +176,7 @@ const XMLPropertyMapEntry* OXMLHelper::GetColumnStyleProps()
 {
     static const XMLPropertyMapEntry aXMLColumnStylesProperties[] =
     {
-        MAP_CONST_S(    "Width",                 STYLE,     COLUMN_WIDTH,      
     XML_TYPE_PROP_TABLE_COLUMN|XML_TYPE_MEASURE, 0 ),
+        MAP_CONST_S(    PROPERTY_WIDTH,                 STYLE,     
COLUMN_WIDTH,           XML_TYPE_PROP_TABLE_COLUMN|XML_TYPE_MEASURE, 0 ),
         MAP_END()
     };
     return aXMLColumnStylesProperties;
diff --git a/reportdesign/source/ui/inspection/DataProviderHandler.cxx 
b/reportdesign/source/ui/inspection/DataProviderHandler.cxx
index 07f512bd5ac0..763f0e5077f9 100644
--- a/reportdesign/source/ui/inspection/DataProviderHandler.cxx
+++ b/reportdesign/source/ui/inspection/DataProviderHandler.cxx
@@ -348,12 +348,12 @@ uno::Sequence< beans::Property > SAL_CALL 
DataProviderHandler::getSupportedPrope
     {
         rptui::OPropertyInfoService::getExcludeProperties( aNewProps, 
m_xFormComponentHandler );
         beans::Property aValue;
-        static const std::u16string_view s_pProperties[] =
+        static const rtl::OUStringConstExpr s_pProperties[] =
         {
-             u"" PROPERTY_CHARTTYPE
-            ,u"" PROPERTY_MASTERFIELDS
-            ,u"" PROPERTY_DETAILFIELDS
-            ,u"" PROPERTY_PREVIEW_COUNT
+             PROPERTY_CHARTTYPE
+            ,PROPERTY_MASTERFIELDS
+            ,PROPERTY_DETAILFIELDS
+            ,PROPERTY_PREVIEW_COUNT
         };
 
         for (const auto & rName : s_pProperties)
diff --git a/reportdesign/source/ui/inspection/metadata.cxx 
b/reportdesign/source/ui/inspection/metadata.cxx
index 7698ea94fca3..fe8c5bae2527 100644
--- a/reportdesign/source/ui/inspection/metadata.cxx
+++ b/reportdesign/source/ui/inspection/metadata.cxx
@@ -245,36 +245,36 @@ namespace rptui
                 u"ControlLabel", /// TODO: has to be checked
                 u"LabelControl",
                 u"Title", // comment this out if you want to have title 
feature for charts
-                u"" PROPERTY_MAXTEXTLEN,
-                u"" PROPERTY_EFFECTIVEDEFAULT,
-                u"" PROPERTY_EFFECTIVEMAX,
-                u"" PROPERTY_EFFECTIVEMIN,
+                PROPERTY_MAXTEXTLEN,
+                PROPERTY_EFFECTIVEDEFAULT,
+                PROPERTY_EFFECTIVEMAX,
+                PROPERTY_EFFECTIVEMIN,
                 u"HideInactiveSelection",
                 u"SubmitAction",
                 u"InputRequired",
                 u"VerticalAlign",
-                u"" PROPERTY_ALIGN,
-                u"" PROPERTY_EMPTY_IS_NULL,
-                u"" PROPERTY_FILTERPROPOSAL
-                ,u"" PROPERTY_POSITIONX
-                ,u"" PROPERTY_POSITIONY
-                ,u"" PROPERTY_WIDTH
-                ,u"" PROPERTY_HEIGHT
-                ,u"" PROPERTY_AUTOGROW
-                ,u"" PROPERTY_FONT
-                ,u"" PROPERTY_LABEL
-                ,u"" PROPERTY_LINECOLOR
-                ,u"" PROPERTY_BORDER
-                ,u"" PROPERTY_BORDERCOLOR
-                ,u"" PROPERTY_BACKTRANSPARENT
-                ,u"" PROPERTY_CONTROLBACKGROUND
-                ,u"" PROPERTY_BACKGROUNDCOLOR
-                ,u"" PROPERTY_CONTROLBACKGROUNDTRANSPARENT
-                ,u"" PROPERTY_FORMULALIST
-                ,u"" PROPERTY_SCOPE
-                ,u"" PROPERTY_TYPE
-                ,u"" PROPERTY_DATASOURCENAME
-                ,u"" PROPERTY_VERTICALALIGN
+                PROPERTY_ALIGN,
+                PROPERTY_EMPTY_IS_NULL,
+                PROPERTY_FILTERPROPOSAL
+                ,PROPERTY_POSITIONX
+                ,PROPERTY_POSITIONY
+                ,PROPERTY_WIDTH
+                ,PROPERTY_HEIGHT
+                ,PROPERTY_AUTOGROW
+                ,PROPERTY_FONT
+                ,PROPERTY_LABEL
+                ,PROPERTY_LINECOLOR
+                ,PROPERTY_BORDER
+                ,PROPERTY_BORDERCOLOR
+                ,PROPERTY_BACKTRANSPARENT
+                ,PROPERTY_CONTROLBACKGROUND
+                ,PROPERTY_BACKGROUNDCOLOR
+                ,PROPERTY_CONTROLBACKGROUNDTRANSPARENT
+                ,PROPERTY_FORMULALIST
+                ,PROPERTY_SCOPE
+                ,PROPERTY_TYPE
+                ,PROPERTY_DATASOURCENAME
+                ,PROPERTY_VERTICALALIGN
         };
 
         for (beans::Property const & prop : aProps)
diff --git a/sc/inc/unonames.hxx b/sc/inc/unonames.hxx
index b21f7405d035..bdd37e666871 100644
--- a/sc/inc/unonames.hxx
+++ b/sc/inc/unonames.hxx
@@ -36,666 +36,666 @@ inline constexpr OUStringLiteral 
SC_SERVICENAME_CHRANGEHILIGHT = u"com.sun.star.
 inline constexpr OUStringLiteral SC_SERVICENAME_CHART_PIVOTTABLE_DATAPROVIDER 
= u"com.sun.star.chart2.data.PivotTableDataProvider";
 
 //  document
-#define SC_UNO_AREALINKS            "AreaLinks"
-#define SC_UNO_DDELINKS             "DDELinks"
-#define SC_UNO_EXTERNALDOCLINKS     "ExternalDocLinks"
-#define SC_UNO_COLLABELRNG          "ColumnLabelRanges"
-#define SC_UNO_DATABASERNG          "DatabaseRanges"
-#define SC_UNO_UNNAMEDDBRNG         "UnnamedDatabaseRanges"
-#define SC_UNO_NAMEDRANGES          "NamedRanges"
-#define SC_UNO_ROWLABELRNG          "RowLabelRanges"
-#define SC_UNO_SHEETLINKS           "SheetLinks"
-#define SC_UNO_FORBIDDEN            "ForbiddenCharacters"
-#define SC_UNO_HASDRAWPAGES         "HasDrawPages"
+inline constexpr OUStringLiteral SC_UNO_AREALINKS            = u"AreaLinks";
+inline constexpr OUStringLiteral SC_UNO_DDELINKS             = u"DDELinks";
+inline constexpr OUStringLiteral SC_UNO_EXTERNALDOCLINKS     = 
u"ExternalDocLinks";
+inline constexpr OUStringLiteral SC_UNO_COLLABELRNG          = 
u"ColumnLabelRanges";
+inline constexpr OUStringLiteral SC_UNO_DATABASERNG          = 
u"DatabaseRanges";
+inline constexpr OUStringLiteral SC_UNO_UNNAMEDDBRNG         = 
u"UnnamedDatabaseRanges";
+inline constexpr OUStringLiteral SC_UNO_NAMEDRANGES          = u"NamedRanges";
+inline constexpr OUStringLiteral SC_UNO_ROWLABELRNG          = 
u"RowLabelRanges";
+inline constexpr OUStringLiteral SC_UNO_SHEETLINKS           = u"SheetLinks";
+inline constexpr OUStringLiteral SC_UNO_FORBIDDEN            = 
u"ForbiddenCharacters";
+inline constexpr OUStringLiteral SC_UNO_HASDRAWPAGES         = u"HasDrawPages";
 
 //  CharacterProperties
-#define SC_UNONAME_CCOLOR           "CharColor"
-#define SC_UNONAME_CHEIGHT          "CharHeight"
-#define SC_UNONAME_CUNDER           "CharUnderline"
-#define SC_UNONAME_CUNDLCOL         "CharUnderlineColor"
-#define SC_UNONAME_CUNDLHAS         "CharUnderlineHasColor"
-#define SC_UNONAME_COVER            "CharOverline"
-#define SC_UNONAME_COVRLCOL         "CharOverlineColor"
-#define SC_UNONAME_COVRLHAS         "CharOverlineHasColor"
-#define SC_UNONAME_CWEIGHT          "CharWeight"
-#define SC_UNONAME_CPOST            "CharPosture"
-#define SC_UNONAME_CCROSS           "CharCrossedOut"
-#define SC_UNONAME_CSTRIKE          "CharStrikeout"
-#define SC_UNONAME_CLOCAL           "CharLocale"
-#define SC_UNONAME_CSHADD           "CharShadowed"
-#define SC_UNONAME_CFONT            "CharFont"
-#define SC_UNONAME_COUTL            "CharContoured"
-#define SC_UNONAME_CEMPHAS          "CharEmphasis"
-#define SC_UNONAME_CFNAME           "CharFontName"
-#define SC_UNONAME_CFSTYLE          "CharFontStyleName"
-#define SC_UNONAME_CFFAMIL          "CharFontFamily"
-#define SC_UNONAME_CFCHARS          "CharFontCharSet"
-#define SC_UNONAME_CFPITCH          "CharFontPitch"
-#define SC_UNONAME_CRELIEF          "CharRelief"
-#define SC_UNONAME_CWORDMOD         "CharWordMode"
-
-#define SC_UNO_CJK_CFNAME           "CharFontNameAsian"
-#define SC_UNO_CJK_CFSTYLE          "CharFontStyleNameAsian"
-#define SC_UNO_CJK_CFFAMIL          "CharFontFamilyAsian"
-#define SC_UNO_CJK_CFCHARS          "CharFontCharSetAsian"
-#define SC_UNO_CJK_CFPITCH          "CharFontPitchAsian"
-#define SC_UNO_CJK_CHEIGHT          "CharHeightAsian"
-#define SC_UNO_CJK_CWEIGHT          "CharWeightAsian"
-#define SC_UNO_CJK_CPOST            "CharPostureAsian"
-#define SC_UNO_CJK_CLOCAL           "CharLocaleAsian"
-
-#define SC_UNO_CTL_CFNAME           "CharFontNameComplex"
-#define SC_UNO_CTL_CFSTYLE          "CharFontStyleNameComplex"
-#define SC_UNO_CTL_CFFAMIL          "CharFontFamilyComplex"
-#define SC_UNO_CTL_CFCHARS          "CharFontCharSetComplex"
-#define SC_UNO_CTL_CFPITCH          "CharFontPitchComplex"
-#define SC_UNO_CTL_CHEIGHT          "CharHeightComplex"
-#define SC_UNO_CTL_CWEIGHT          "CharWeightComplex"
-#define SC_UNO_CTL_CPOST            "CharPostureComplex"
-#define SC_UNO_CTL_CLOCAL           "CharLocaleComplex"
+inline constexpr OUStringLiteral SC_UNONAME_CCOLOR           = u"CharColor";
+inline constexpr OUStringLiteral SC_UNONAME_CHEIGHT          = u"CharHeight";
+inline constexpr OUStringLiteral SC_UNONAME_CUNDER           = 
u"CharUnderline";
+inline constexpr OUStringLiteral SC_UNONAME_CUNDLCOL         = 
u"CharUnderlineColor";
+inline constexpr OUStringLiteral SC_UNONAME_CUNDLHAS         = 
u"CharUnderlineHasColor";
+inline constexpr OUStringLiteral SC_UNONAME_COVER            = u"CharOverline";
+inline constexpr OUStringLiteral SC_UNONAME_COVRLCOL         = 
u"CharOverlineColor";
+inline constexpr OUStringLiteral SC_UNONAME_COVRLHAS         = 
u"CharOverlineHasColor";
+inline constexpr OUStringLiteral SC_UNONAME_CWEIGHT          = u"CharWeight";
+inline constexpr OUStringLiteral SC_UNONAME_CPOST            = u"CharPosture";
+inline constexpr OUStringLiteral SC_UNONAME_CCROSS           = 
u"CharCrossedOut";
+inline constexpr OUStringLiteral SC_UNONAME_CSTRIKE          = 
u"CharStrikeout";
+inline constexpr OUStringLiteral SC_UNONAME_CLOCAL           = u"CharLocale";
+inline constexpr OUStringLiteral SC_UNONAME_CSHADD           = u"CharShadowed";
+inline constexpr OUStringLiteral SC_UNONAME_CFONT            = u"CharFont";
+inline constexpr OUStringLiteral SC_UNONAME_COUTL            = 
u"CharContoured";
+inline constexpr OUStringLiteral SC_UNONAME_CEMPHAS          = u"CharEmphasis";
+inline constexpr OUStringLiteral SC_UNONAME_CFNAME           = u"CharFontName";
+inline constexpr OUStringLiteral SC_UNONAME_CFSTYLE          = 
u"CharFontStyleName";
+inline constexpr OUStringLiteral SC_UNONAME_CFFAMIL          = 
u"CharFontFamily";
+inline constexpr OUStringLiteral SC_UNONAME_CFCHARS          = 
u"CharFontCharSet";
+inline constexpr OUStringLiteral SC_UNONAME_CFPITCH          = 
u"CharFontPitch";
+inline constexpr OUStringLiteral SC_UNONAME_CRELIEF          = u"CharRelief";
+inline constexpr OUStringLiteral SC_UNONAME_CWORDMOD         = u"CharWordMode";
+
+inline constexpr OUStringLiteral SC_UNO_CJK_CFNAME           = 
u"CharFontNameAsian";
+inline constexpr OUStringLiteral SC_UNO_CJK_CFSTYLE          = 
u"CharFontStyleNameAsian";
+inline constexpr OUStringLiteral SC_UNO_CJK_CFFAMIL          = 
u"CharFontFamilyAsian";
+inline constexpr OUStringLiteral SC_UNO_CJK_CFCHARS          = 
u"CharFontCharSetAsian";
+inline constexpr OUStringLiteral SC_UNO_CJK_CFPITCH          = 
u"CharFontPitchAsian";
+inline constexpr OUStringLiteral SC_UNO_CJK_CHEIGHT          = 
u"CharHeightAsian";
+inline constexpr OUStringLiteral SC_UNO_CJK_CWEIGHT          = 
u"CharWeightAsian";
+inline constexpr OUStringLiteral SC_UNO_CJK_CPOST            = 
u"CharPostureAsian";
+inline constexpr OUStringLiteral SC_UNO_CJK_CLOCAL           = 
u"CharLocaleAsian";
+
+inline constexpr OUStringLiteral SC_UNO_CTL_CFNAME           = 
u"CharFontNameComplex";
+inline constexpr OUStringLiteral SC_UNO_CTL_CFSTYLE          = 
u"CharFontStyleNameComplex";
+inline constexpr OUStringLiteral SC_UNO_CTL_CFFAMIL          = 
u"CharFontFamilyComplex";
+inline constexpr OUStringLiteral SC_UNO_CTL_CFCHARS          = 
u"CharFontCharSetComplex";
+inline constexpr OUStringLiteral SC_UNO_CTL_CFPITCH          = 
u"CharFontPitchComplex";
+inline constexpr OUStringLiteral SC_UNO_CTL_CHEIGHT          = 
u"CharHeightComplex";
+inline constexpr OUStringLiteral SC_UNO_CTL_CWEIGHT          = 
u"CharWeightComplex";
+inline constexpr OUStringLiteral SC_UNO_CTL_CPOST            = 
u"CharPostureComplex";
+inline constexpr OUStringLiteral SC_UNO_CTL_CLOCAL           = 
u"CharLocaleComplex";
 
 //  CellProperties
-#define SC_UNONAME_CELLSTYL         "CellStyle"
-#define SC_UNONAME_CELLBACK         "CellBackColor"
-#define SC_UNONAME_CELLTRAN         "IsCellBackgroundTransparent"
-#define SC_UNONAME_CELLPRO          "CellProtection"
-#define SC_UNONAME_CELLHJUS         "HoriJustify"
-#define SC_UNONAME_CELLVJUS         "VertJustify"
-#define SC_UNONAME_CELLHJUS_METHOD  "HoriJustifyMethod"
-#define SC_UNONAME_CELLVJUS_METHOD  "VertJustifyMethod"
-#define SC_UNONAME_CELLORI          "Orientation"
-#define SC_UNONAME_NUMFMT           "NumberFormat"
-#define SC_UNONAME_FORMATID         "FormatID"
-#define SC_UNONAME_SHADOW           "ShadowFormat"
-#define SC_UNONAME_TBLBORD          "TableBorder"
-#define SC_UNONAME_TBLBORD2         "TableBorder2"
-#define SC_UNONAME_WRAP             "IsTextWrapped"
-#define SC_UNONAME_PINDENT          "ParaIndent"
-#define SC_UNONAME_PTMARGIN         "ParaTopMargin"
-#define SC_UNONAME_PBMARGIN         "ParaBottomMargin"
-#define SC_UNONAME_PLMARGIN         "ParaLeftMargin"
-#define SC_UNONAME_PRMARGIN         "ParaRightMargin"
-#define SC_UNONAME_ROTANG           "RotateAngle"
-#define SC_UNONAME_ROTREF           "RotateReference"
-#define SC_UNONAME_ASIANVERT        "AsianVerticalMode"
-#define SC_UNONAME_WRITING          "WritingMode"
-#define SC_UNONAME_HIDDEN           "Hidden"
-
-#define SC_UNONAME_BOTTBORDER       "BottomBorder"
-#define SC_UNONAME_LEFTBORDER       "LeftBorder"
-#define SC_UNONAME_RIGHTBORDER      "RightBorder"
-#define SC_UNONAME_TOPBORDER        "TopBorder"
-
-#define SC_UNONAME_BOTTBORDER2      "BottomBorder2"
-#define SC_UNONAME_LEFTBORDER2      "LeftBorder2"
-#define SC_UNONAME_RIGHTBORDER2     "RightBorder2"
-#define SC_UNONAME_TOPBORDER2       "TopBorder2"
-
-#define SC_UNONAME_DIAGONAL_TLBR    "DiagonalTLBR"
-#define SC_UNONAME_DIAGONAL_BLTR    "DiagonalBLTR"
-
-#define SC_UNONAME_DIAGONAL_TLBR2   "DiagonalTLBR2"
-#define SC_UNONAME_DIAGONAL_BLTR2   "DiagonalBLTR2"
-
-#define SC_UNONAME_SHRINK_TO_FIT    "ShrinkToFit"
-
-#define SC_UNONAME_PISHANG          "ParaIsHangingPunctuation"
-#define SC_UNONAME_PISCHDIST        "ParaIsCharacterDistance"
-#define SC_UNONAME_PISFORBID        "ParaIsForbiddenRules"
-#define SC_UNONAME_PISHYPHEN        "ParaIsHyphenation"
-#define SC_UNONAME_PADJUST          "ParaAdjust"
-#define SC_UNONAME_PLASTADJ         "ParaLastLineAdjust"
-
-#define SC_UNONAME_NUMRULES         "NumberingRules"
+inline constexpr OUStringLiteral SC_UNONAME_CELLSTYL         = u"CellStyle";
+inline constexpr OUStringLiteral SC_UNONAME_CELLBACK         = 
u"CellBackColor";
+inline constexpr OUStringLiteral SC_UNONAME_CELLTRAN         = 
u"IsCellBackgroundTransparent";
+inline constexpr OUStringLiteral SC_UNONAME_CELLPRO          = 
u"CellProtection";
+inline constexpr OUStringLiteral SC_UNONAME_CELLHJUS         = u"HoriJustify";
+inline constexpr OUStringLiteral SC_UNONAME_CELLVJUS         = u"VertJustify";
+inline constexpr OUStringLiteral SC_UNONAME_CELLHJUS_METHOD  = 
u"HoriJustifyMethod";
+inline constexpr OUStringLiteral SC_UNONAME_CELLVJUS_METHOD  = 
u"VertJustifyMethod";
+inline constexpr OUStringLiteral SC_UNONAME_CELLORI          = u"Orientation";
+inline constexpr OUStringLiteral SC_UNONAME_NUMFMT           = u"NumberFormat";
+inline constexpr OUStringLiteral SC_UNONAME_FORMATID         = u"FormatID";
+inline constexpr OUStringLiteral SC_UNONAME_SHADOW           = u"ShadowFormat";
+inline constexpr OUStringLiteral SC_UNONAME_TBLBORD          = u"TableBorder";
+inline constexpr OUStringLiteral SC_UNONAME_TBLBORD2         = u"TableBorder2";
+inline constexpr OUStringLiteral SC_UNONAME_WRAP             = 
u"IsTextWrapped";
+inline constexpr OUStringLiteral SC_UNONAME_PINDENT          = u"ParaIndent";
+inline constexpr OUStringLiteral SC_UNONAME_PTMARGIN         = 
u"ParaTopMargin";
+inline constexpr OUStringLiteral SC_UNONAME_PBMARGIN         = 
u"ParaBottomMargin";
+inline constexpr OUStringLiteral SC_UNONAME_PLMARGIN         = 
u"ParaLeftMargin";
+inline constexpr OUStringLiteral SC_UNONAME_PRMARGIN         = 
u"ParaRightMargin";
+inline constexpr OUStringLiteral SC_UNONAME_ROTANG           = u"RotateAngle";
+inline constexpr OUStringLiteral SC_UNONAME_ROTREF           = 
u"RotateReference";
+inline constexpr OUStringLiteral SC_UNONAME_ASIANVERT        = 
u"AsianVerticalMode";
+inline constexpr OUStringLiteral SC_UNONAME_WRITING          = u"WritingMode";
+inline constexpr OUStringLiteral SC_UNONAME_HIDDEN           = u"Hidden";
+
+inline constexpr OUStringLiteral SC_UNONAME_BOTTBORDER       = u"BottomBorder";
+inline constexpr OUStringLiteral SC_UNONAME_LEFTBORDER       = u"LeftBorder";
+inline constexpr OUStringLiteral SC_UNONAME_RIGHTBORDER      = u"RightBorder";
+inline constexpr OUStringLiteral SC_UNONAME_TOPBORDER        = u"TopBorder";
+
+inline constexpr OUStringLiteral SC_UNONAME_BOTTBORDER2      = 
u"BottomBorder2";
+inline constexpr OUStringLiteral SC_UNONAME_LEFTBORDER2      = u"LeftBorder2";
+inline constexpr OUStringLiteral SC_UNONAME_RIGHTBORDER2     = u"RightBorder2";
+inline constexpr OUStringLiteral SC_UNONAME_TOPBORDER2       = u"TopBorder2";
+
+inline constexpr OUStringLiteral SC_UNONAME_DIAGONAL_TLBR    = u"DiagonalTLBR";
+inline constexpr OUStringLiteral SC_UNONAME_DIAGONAL_BLTR    = u"DiagonalBLTR";
+
+inline constexpr OUStringLiteral SC_UNONAME_DIAGONAL_TLBR2   = 
u"DiagonalTLBR2";
+inline constexpr OUStringLiteral SC_UNONAME_DIAGONAL_BLTR2   = 
u"DiagonalBLTR2";
+
+inline constexpr OUStringLiteral SC_UNONAME_SHRINK_TO_FIT    = u"ShrinkToFit";
+
+inline constexpr OUStringLiteral SC_UNONAME_PISHANG          = 
u"ParaIsHangingPunctuation";
+inline constexpr OUStringLiteral SC_UNONAME_PISCHDIST        = 
u"ParaIsCharacterDistance";
+inline constexpr OUStringLiteral SC_UNONAME_PISFORBID        = 
u"ParaIsForbiddenRules";
+inline constexpr OUStringLiteral SC_UNONAME_PISHYPHEN        = 
u"ParaIsHyphenation";
+inline constexpr OUStringLiteral SC_UNONAME_PADJUST          = u"ParaAdjust";
+inline constexpr OUStringLiteral SC_UNONAME_PLASTADJ         = 
u"ParaLastLineAdjust";
+
+inline constexpr OUStringLiteral SC_UNONAME_NUMRULES         = 
u"NumberingRules";
 
 //  Styles
-#define SC_UNONAME_DISPNAME         "DisplayName"
+inline constexpr OUStringLiteral SC_UNONAME_DISPNAME         = u"DisplayName";
 
 //  XStyleLoader
-#define SC_UNONAME_OVERWSTL         "OverwriteStyles"
-#define SC_UNONAME_LOADCELL         "LoadCellStyles"
-#define SC_UNONAME_LOADPAGE         "LoadPageStyles"
+inline constexpr OUStringLiteral SC_UNONAME_OVERWSTL         = 
u"OverwriteStyles";
+inline constexpr OUStringLiteral SC_UNONAME_LOADCELL         = 
u"LoadCellStyles";
+inline constexpr OUStringLiteral SC_UNONAME_LOADPAGE         = 
u"LoadPageStyles";
 
 //  SheetCellRange
-#define SC_UNONAME_POS              "Position"
-#define SC_UNONAME_SIZE             "Size"
-#define SC_UNONAME_ABSNAME          "AbsoluteName"
+inline constexpr OUStringLiteral SC_UNONAME_POS              = u"Position";
+inline constexpr OUStringLiteral SC_UNONAME_SIZE             = u"Size";
+inline constexpr OUStringLiteral SC_UNONAME_ABSNAME          = u"AbsoluteName";
 
 //  column/row/sheet
-#define SC_UNONAME_CELLHGT          "Height"
-#define SC_UNONAME_CELLWID          "Width"
-#define SC_UNONAME_CELLVIS          "IsVisible"
-#define SC_UNONAME_CELLFILT         "IsFiltered"
-#define SC_UNONAME_MANPAGE          "IsManualPageBreak"
-#define SC_UNONAME_NEWPAGE          "IsStartOfNewPage"
-#define SC_UNONAME_OHEIGHT          "OptimalHeight"
-#define SC_UNONAME_OWIDTH           "OptimalWidth"
-#define SC_UNONAME_PAGESTL          "PageStyle"
-#define SC_UNONAME_ISACTIVE         "IsActive"
-#define SC_UNONAME_BORDCOL          "BorderColor"
-#define SC_UNONAME_PROTECT          "Protected"
-#define SC_UNONAME_SHOWBORD         "ShowBorder"
-#define SC_UNONAME_PRINTBORD        "PrintBorder"
-#define SC_UNONAME_COPYBACK         "CopyBack"
-#define SC_UNONAME_COPYSTYL         "CopyStyles"
-#define SC_UNONAME_COPYFORM         "CopyFormulas"
-#define SC_UNONAME_TABLAYOUT        "TableLayout"
-#define SC_UNONAME_AUTOPRINT        "AutomaticPrintArea"
-#define SC_UNONAME_TABCOLOR         "TabColor"
-#define SC_UNONAME_CONDFORMAT       "ConditionalFormats"
-
-#define SC_UNONAME_VISFLAG          "VisibleFlag"
+inline constexpr OUStringLiteral SC_UNONAME_CELLHGT          = u"Height";
+inline constexpr OUStringLiteral SC_UNONAME_CELLWID          = u"Width";
+inline constexpr OUStringLiteral SC_UNONAME_CELLVIS          = u"IsVisible";
+inline constexpr OUStringLiteral SC_UNONAME_CELLFILT         = u"IsFiltered";
+inline constexpr OUStringLiteral SC_UNONAME_MANPAGE          = 
u"IsManualPageBreak";
+inline constexpr OUStringLiteral SC_UNONAME_NEWPAGE          = 
u"IsStartOfNewPage";
+inline constexpr OUStringLiteral SC_UNONAME_OHEIGHT          = 
u"OptimalHeight";
+inline constexpr OUStringLiteral SC_UNONAME_OWIDTH           = u"OptimalWidth";
+inline constexpr OUStringLiteral SC_UNONAME_PAGESTL          = u"PageStyle";
+inline constexpr OUStringLiteral SC_UNONAME_ISACTIVE         = u"IsActive";
+inline constexpr OUStringLiteral SC_UNONAME_BORDCOL          = u"BorderColor";
+inline constexpr OUStringLiteral SC_UNONAME_PROTECT          = u"Protected";
+inline constexpr OUStringLiteral SC_UNONAME_SHOWBORD         = u"ShowBorder";
+inline constexpr OUStringLiteral SC_UNONAME_PRINTBORD        = u"PrintBorder";
+inline constexpr OUStringLiteral SC_UNONAME_COPYBACK         = u"CopyBack";
+inline constexpr OUStringLiteral SC_UNONAME_COPYSTYL         = u"CopyStyles";
+inline constexpr OUStringLiteral SC_UNONAME_COPYFORM         = u"CopyFormulas";
+inline constexpr OUStringLiteral SC_UNONAME_TABLAYOUT        = u"TableLayout";
+inline constexpr OUStringLiteral SC_UNONAME_AUTOPRINT        = 
u"AutomaticPrintArea";
+inline constexpr OUStringLiteral SC_UNONAME_TABCOLOR         = u"TabColor";
+inline constexpr OUStringLiteral SC_UNONAME_CONDFORMAT       = 
u"ConditionalFormats";
+
+inline constexpr OUStringLiteral SC_UNONAME_VISFLAG          = u"VisibleFlag";
 
 //  LinkTarget
-#define SC_UNO_LINKDISPBIT          "LinkDisplayBitmap"
-#define SC_UNO_LINKDISPNAME         "LinkDisplayName"
+inline constexpr OUStringLiteral SC_UNO_LINKDISPBIT          = 
u"LinkDisplayBitmap";
+inline constexpr OUStringLiteral SC_UNO_LINKDISPNAME         = 
u"LinkDisplayName";
 
 //  drawing objects
-#define SC_UNONAME_IMAGEMAP         "ImageMap"
-#define SC_UNONAME_ANCHOR           "Anchor"
-#define SC_UNONAME_RESIZE_WITH_CELL "ResizeWithCell"
-#define SC_UNONAME_HORIPOS          "HoriOrientPosition"
-#define SC_UNONAME_VERTPOS          "VertOrientPosition"
-#define SC_UNONAME_HYPERLINK        "Hyperlink"
-#define SC_UNONAME_MOVEPROTECT      "MoveProtect"
+inline constexpr OUStringLiteral SC_UNONAME_IMAGEMAP         = u"ImageMap";
+inline constexpr OUStringLiteral SC_UNONAME_ANCHOR           = u"Anchor";
+inline constexpr OUStringLiteral SC_UNONAME_RESIZE_WITH_CELL = 
u"ResizeWithCell";
+inline constexpr OUStringLiteral SC_UNONAME_HORIPOS          = 
u"HoriOrientPosition";
+inline constexpr OUStringLiteral SC_UNONAME_VERTPOS          = 
u"VertOrientPosition";
+inline constexpr OUStringLiteral SC_UNONAME_HYPERLINK        = u"Hyperlink";
+inline constexpr OUStringLiteral SC_UNONAME_MOVEPROTECT      = u"MoveProtect";
 
 //  other cell properties
-#define SC_UNONAME_CHCOLHDR         "ChartColumnAsLabel"
-#define SC_UNONAME_CHROWHDR         "ChartRowAsLabel"
-#define SC_UNONAME_CONDFMT          "ConditionalFormat"
-#define SC_UNONAME_CONDLOC          "ConditionalFormatLocal"
-#define SC_UNONAME_CONDXML          "ConditionalFormatXML"
-#define SC_UNONAME_VALIDAT          "Validation"
-#define SC_UNONAME_VALILOC          "ValidationLocal"
-#define SC_UNONAME_VALIXML          "ValidationXML"
-#define SC_UNONAME_FORMLOC          "FormulaLocal"
-#define SC_UNONAME_FORMRT           "FormulaResultType"
-#define SC_UNONAME_FORMRT2          "FormulaResultType2"
-#define SC_UNONAME_CELLCONTENTTYPE  "CellContentType"
-
-#define SC_UNONAME_USERDEF          "UserDefinedAttributes"
-#define SC_UNONAME_TEXTUSER         "TextUserDefinedAttributes"
+inline constexpr OUStringLiteral SC_UNONAME_CHCOLHDR         = 
u"ChartColumnAsLabel";
+inline constexpr OUStringLiteral SC_UNONAME_CHROWHDR         = 
u"ChartRowAsLabel";
+inline constexpr OUStringLiteral SC_UNONAME_CONDFMT          = 
u"ConditionalFormat";
+inline constexpr OUStringLiteral SC_UNONAME_CONDLOC          = 
u"ConditionalFormatLocal";
+inline constexpr OUStringLiteral SC_UNONAME_CONDXML          = 
u"ConditionalFormatXML";
+inline constexpr OUStringLiteral SC_UNONAME_VALIDAT          = u"Validation";
+inline constexpr OUStringLiteral SC_UNONAME_VALILOC          = 
u"ValidationLocal";
+inline constexpr OUStringLiteral SC_UNONAME_VALIXML          = 
u"ValidationXML";
+inline constexpr OUStringLiteral SC_UNONAME_FORMLOC          = u"FormulaLocal";
+inline constexpr OUStringLiteral SC_UNONAME_FORMRT           = 
u"FormulaResultType";
+inline constexpr OUStringLiteral SC_UNONAME_FORMRT2          = 
u"FormulaResultType2";
+inline constexpr OUStringLiteral SC_UNONAME_CELLCONTENTTYPE  = 
u"CellContentType";
+
+inline constexpr OUStringLiteral SC_UNONAME_USERDEF          = 
u"UserDefinedAttributes";
+inline constexpr OUStringLiteral SC_UNONAME_TEXTUSER         = 
u"TextUserDefinedAttributes";
 
 //  auto format
-#define SC_UNONAME_INCBACK          "IncludeBackground"
-#define SC_UNONAME_INCBORD          "IncludeBorder"
-#define SC_UNONAME_INCFONT          "IncludeFont"
-#define SC_UNONAME_INCJUST          "IncludeJustify"
-#define SC_UNONAME_INCNUM           "IncludeNumberFormat"
-#define SC_UNONAME_INCWIDTH         "IncludeWidthAndHeight"
+inline constexpr OUStringLiteral SC_UNONAME_INCBACK          = 
u"IncludeBackground";
+inline constexpr OUStringLiteral SC_UNONAME_INCBORD          = 
u"IncludeBorder";
+inline constexpr OUStringLiteral SC_UNONAME_INCFONT          = u"IncludeFont";
+inline constexpr OUStringLiteral SC_UNONAME_INCJUST          = 
u"IncludeJustify";
+inline constexpr OUStringLiteral SC_UNONAME_INCNUM           = 
u"IncludeNumberFormat";
+inline constexpr OUStringLiteral SC_UNONAME_INCWIDTH         = 
u"IncludeWidthAndHeight";
 
 //  function description
-#define SC_UNONAME_ARGUMENTS        "Arguments"
-#define SC_UNONAME_CATEGORY         "Category"
-#define SC_UNONAME_DESCRIPTION      "Description"
-#define SC_UNONAME_ID               "Id"
-#define SC_UNONAME_NAME             "Name"
+inline constexpr OUStringLiteral SC_UNONAME_ARGUMENTS        = u"Arguments";
+inline constexpr OUStringLiteral SC_UNONAME_CATEGORY         = u"Category";
+inline constexpr OUStringLiteral SC_UNONAME_DESCRIPTION      = u"Description";
+inline constexpr OUStringLiteral SC_UNONAME_ID               = u"Id";
+inline constexpr OUStringLiteral SC_UNONAME_NAME             = u"Name";
 
 //  application settings
-#define SC_UNONAME_DOAUTOCP         "DoAutoComplete"
-#define SC_UNONAME_ENTERED          "EnterEdit"
-#define SC_UNONAME_EXPREF           "ExpandReferences"
-#define SC_UNONAME_EXTFMT           "ExtendFormat"
-#define SC_UNONAME_LINKUPD          "LinkUpdateMode"
-#define SC_UNONAME_MARKHDR          "MarkHeader"
-#define SC_UNONAME_METRIC           "Metric"
-#define SC_UNONAME_MOVEDIR          "MoveDirection"
-#define SC_UNONAME_MOVESEL          "MoveSelection"
-#define SC_UNONAME_RANGEFIN         "RangeFinder"
-#define SC_UNONAME_SCALE            "Scale"
-#define SC_UNONAME_STBFUNC          "StatusBarFunction"
-#define SC_UNONAME_ULISTS           "UserLists"
-#define SC_UNONAME_USETABCOL        "UseTabCol"
-#define SC_UNONAME_PRMETRICS        "UsePrinterMetrics"
-#define SC_UNONAME_PRALLSH          "PrintAllSheets"
-#define SC_UNONAME_PREMPTY          "PrintEmptyPages"
-#define SC_UNONAME_REPLWARN         "ReplaceCellsWarning"
+inline constexpr OUStringLiteral SC_UNONAME_DOAUTOCP         = 
u"DoAutoComplete";
+inline constexpr OUStringLiteral SC_UNONAME_ENTERED          = u"EnterEdit";
+inline constexpr OUStringLiteral SC_UNONAME_EXPREF           = 
u"ExpandReferences";
+inline constexpr OUStringLiteral SC_UNONAME_EXTFMT           = u"ExtendFormat";
+inline constexpr OUStringLiteral SC_UNONAME_LINKUPD          = 
u"LinkUpdateMode";
+inline constexpr OUStringLiteral SC_UNONAME_MARKHDR          = u"MarkHeader";
+inline constexpr OUStringLiteral SC_UNONAME_METRIC           = u"Metric";
+inline constexpr OUStringLiteral SC_UNONAME_MOVEDIR          = 
u"MoveDirection";
+inline constexpr OUStringLiteral SC_UNONAME_MOVESEL          = 
u"MoveSelection";
+inline constexpr OUStringLiteral SC_UNONAME_RANGEFIN         = u"RangeFinder";
+inline constexpr OUStringLiteral SC_UNONAME_SCALE            = u"Scale";
+inline constexpr OUStringLiteral SC_UNONAME_STBFUNC          = 
u"StatusBarFunction";
+inline constexpr OUStringLiteral SC_UNONAME_ULISTS           = u"UserLists";
+inline constexpr OUStringLiteral SC_UNONAME_USETABCOL        = u"UseTabCol";
+inline constexpr OUStringLiteral SC_UNONAME_PRMETRICS        = 
u"UsePrinterMetrics";
+inline constexpr OUStringLiteral SC_UNONAME_PRALLSH          = 
u"PrintAllSheets";
+inline constexpr OUStringLiteral SC_UNONAME_PREMPTY          = 
u"PrintEmptyPages";
+inline constexpr OUStringLiteral SC_UNONAME_REPLWARN         = 
u"ReplaceCellsWarning";
 
 //  data pilot field
-#define SC_UNONAME_FUNCTION         "Function"
-#define SC_UNONAME_FUNCTION2        "Function2"
-#define SC_UNONAME_SUBTOTALS        "Subtotals"
-#define SC_UNONAME_SUBTOTALS2       "Subtotals2"
-#define SC_UNONAME_SELPAGE          "SelectedPage"
-#define SC_UNONAME_USESELPAGE       "UseSelectedPage"
-#define SC_UNONAME_HASREFERENCE     "HasReference"
-#define SC_UNONAME_REFERENCE        "Reference"
-#define SC_UNONAME_HASAUTOSHOW      "HasAutoShowInfo"
-#define SC_UNONAME_AUTOSHOW         "AutoShowInfo"
-#define SC_UNONAME_HASSORTINFO      "HasSortInfo"
-#define SC_UNONAME_SORTINFO         "SortInfo"
-#define SC_UNONAME_HASLAYOUTINFO    "HasLayoutInfo"
-#define SC_UNONAME_LAYOUTINFO       "LayoutInfo"
-#define SC_UNONAME_ISGROUP          "IsGroupField"
-#define SC_UNONAME_GROUPINFO        "GroupInfo"
-#define SC_UNONAME_SHOWEMPTY        "ShowEmpty"
-#define SC_UNONAME_REPEATITEMLABELS "RepeatItemLabels"
+inline constexpr OUStringLiteral SC_UNONAME_FUNCTION         = u"Function";
+inline constexpr OUStringLiteral SC_UNONAME_FUNCTION2        = u"Function2";
+inline constexpr OUStringLiteral SC_UNONAME_SUBTOTALS        = u"Subtotals";
+inline constexpr OUStringLiteral SC_UNONAME_SUBTOTALS2       = u"Subtotals2";
+inline constexpr OUStringLiteral SC_UNONAME_SELPAGE          = u"SelectedPage";
+inline constexpr OUStringLiteral SC_UNONAME_USESELPAGE       = 
u"UseSelectedPage";
+inline constexpr OUStringLiteral SC_UNONAME_HASREFERENCE     = u"HasReference";
+inline constexpr OUStringLiteral SC_UNONAME_REFERENCE        = u"Reference";
+inline constexpr OUStringLiteral SC_UNONAME_HASAUTOSHOW      = 
u"HasAutoShowInfo";
+inline constexpr OUStringLiteral SC_UNONAME_AUTOSHOW         = u"AutoShowInfo";
+inline constexpr OUStringLiteral SC_UNONAME_HASSORTINFO      = u"HasSortInfo";
+inline constexpr OUStringLiteral SC_UNONAME_SORTINFO         = u"SortInfo";
+inline constexpr OUStringLiteral SC_UNONAME_HASLAYOUTINFO    = 
u"HasLayoutInfo";
+inline constexpr OUStringLiteral SC_UNONAME_LAYOUTINFO       = u"LayoutInfo";
+inline constexpr OUStringLiteral SC_UNONAME_ISGROUP          = u"IsGroupField";
+inline constexpr OUStringLiteral SC_UNONAME_GROUPINFO        = u"GroupInfo";
+inline constexpr OUStringLiteral SC_UNONAME_SHOWEMPTY        = u"ShowEmpty";
+inline constexpr OUStringLiteral SC_UNONAME_REPEATITEMLABELS = 
u"RepeatItemLabels";
 
 //  data pilot item
-#define SC_UNONAME_SHOWDETAIL       "ShowDetail"
-#define SC_UNONAME_ISHIDDEN         "IsHidden"
+inline constexpr OUStringLiteral SC_UNONAME_SHOWDETAIL       = u"ShowDetail";
+inline constexpr OUStringLiteral SC_UNONAME_ISHIDDEN         = u"IsHidden";
 
 //  database options
-#define SC_UNONAME_CASE             "CaseSensitive"
-#define SC_UNONAME_DBNAME           "DatabaseName"
-#define SC_UNONAME_FORMATS          "IncludeFormats"
-#define SC_UNONAME_INSBRK           "InsertPageBreaks"
-#define SC_UNONAME_KEEPFORM         "KeepFormats"
-#define SC_UNONAME_MOVCELLS         "MoveCells"
-#define SC_UNONAME_ISUSER           "IsUserDefined"
-#define SC_UNONAME_ISNATIVE         "IsNative"
-#define SC_UNONAME_REGEXP           "RegularExpressions"
-#define SC_UNONAME_WILDCARDS        "Wildcards"
-#define SC_UNONAME_SAVEOUT          "SaveOutputPosition"
-#define SC_UNONAME_SKIPDUP          "SkipDuplicates"
-#define SC_UNONAME_SRCOBJ           "SourceObject"

... etc. - the rest is truncated

Reply via email to