openoffice-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From h..@apache.org
Subject svn commit: r1555112 [18/18] - in /openoffice/branches/rejuvenate01: ./ main/ main/autodoc/source/parser_i/idoc/ main/dbaccess/source/shared/ main/helpcontent2/source/text/shared/01/ main/offapi/com/sun/star/accessibility/ main/offapi/com/sun/star/anim...
Date Fri, 03 Jan 2014 14:45:04 GMT
Modified: openoffice/branches/rejuvenate01/main/xmloff/inc/txtflde.hxx
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/xmloff/inc/txtflde.hxx?rev=1555112&r1=1555111&r2=1555112&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/xmloff/inc/txtflde.hxx (original)
+++ openoffice/branches/rejuvenate01/main/xmloff/inc/txtflde.hxx Fri Jan  3 14:44:44 2014
@@ -434,109 +434,104 @@ protected:
 						   ::com::sun::star::beans::XPropertySet > & xPropSet);
 
 
-	/// explode a field master name into field type and field name
-	sal_Bool ExplodeFieldMasterName(
-		const ::rtl::OUString& sMasterName,	/// name as returned by SO API
-		::rtl::OUString& sFieldType,		/// out: field type
-		::rtl::OUString& sVarName);			/// out: variable name
-
-	/// make reference name for a foot- or endnote
-	static ::rtl::OUString MakeFootnoteRefName(sal_Int16 nSeqNo);
-
-	/// make reference name for a sequence field
-	static ::rtl::OUString MakeSequenceRefName(sal_Int16 nSeqNo, 
-											  const ::rtl::OUString& rSeqName);
-
-private:	
-	// constants
-
-	// service names
-	const ::rtl::OUString sServicePrefix;
-	const ::rtl::OUString sFieldMasterPrefix;
-	const ::rtl::OUString sPresentationServicePrefix;
-
-	// property names
-	const ::rtl::OUString sPropertyAdjust;
-	const ::rtl::OUString sPropertyAuthor;
-	const ::rtl::OUString sPropertyChapterFormat;
-	const ::rtl::OUString sPropertyChapterNumberingLevel;
-	const ::rtl::OUString sPropertyCharStyleNames;
-	const ::rtl::OUString sPropertyCondition;
-	const ::rtl::OUString sPropertyContent;
-	const ::rtl::OUString sPropertyDataBaseName;
-	const ::rtl::OUString sPropertyDataBaseURL;
-	const ::rtl::OUString sPropertyDataColumnName;
-	const ::rtl::OUString sPropertyDataCommandType;
-	const ::rtl::OUString sPropertyDataTableName;
-	const ::rtl::OUString sPropertyDate;
-	const ::rtl::OUString sPropertyDateTime;
-	const ::rtl::OUString sPropertyDateTimeValue;
-	const ::rtl::OUString sPropertyDDECommandElement;
-	const ::rtl::OUString sPropertyDDECommandFile;
-	const ::rtl::OUString sPropertyDDECommandType;
-	const ::rtl::OUString sPropertyDependentTextFields;
-	const ::rtl::OUString sPropertyFalseContent;
-	const ::rtl::OUString sPropertyFields;
-	const ::rtl::OUString sPropertyFieldSubType;
-	const ::rtl::OUString sPropertyFileFormat;
-	const ::rtl::OUString sPropertyFullName;
-	const ::rtl::OUString sPropertyHint;
-	const ::rtl::OUString sPropertyInstanceName;
-	const ::rtl::OUString sPropertyIsAutomaticUpdate;
-	const ::rtl::OUString sPropertyIsConditionTrue;
-	const ::rtl::OUString sPropertyIsDataBaseFormat;
-	const ::rtl::OUString sPropertyIsDate;
-	const ::rtl::OUString sPropertyIsExpression;
-	const ::rtl::OUString sPropertyIsFixed;
-	const ::rtl::OUString sPropertyIsFixedLanguage;
-	const ::rtl::OUString sPropertyIsHidden;
-	const ::rtl::OUString sPropertyIsInput;
-	const ::rtl::OUString sPropertyIsShowFormula;
-	const ::rtl::OUString sPropertyIsVisible;
-	const ::rtl::OUString sPropertyItems;
-	const ::rtl::OUString sPropertyLevel;
-	const ::rtl::OUString sPropertyMacro;
-	const ::rtl::OUString sPropertyMeasureKind;
-	const ::rtl::OUString sPropertyName;
-	const ::rtl::OUString sPropertyNumberFormat;
-	const ::rtl::OUString sPropertyNumberingSeparator;
-	const ::rtl::OUString sPropertyNumberingType;
-	const ::rtl::OUString sPropertyOffset;
-	const ::rtl::OUString sPropertyOn;
-	const ::rtl::OUString sPropertyPlaceholder;
-	const ::rtl::OUString sPropertyPlaceholderType;
-	const ::rtl::OUString sPropertyReferenceFieldPart;
-	const ::rtl::OUString sPropertyReferenceFieldSource;
-	const ::rtl::OUString sPropertyReferenceFieldType;
-	const ::rtl::OUString sPropertyRevision;
-	const ::rtl::OUString sPropertyScriptType;
-	const ::rtl::OUString sPropertySelectedItem;
-	const ::rtl::OUString sPropertySequenceNumber;
-	const ::rtl::OUString sPropertySequenceValue;
-	const ::rtl::OUString sPropertySetNumber;
-	const ::rtl::OUString sPropertySourceName;
-	const ::rtl::OUString sPropertySubType;
-	const ::rtl::OUString sPropertyTargetFrame;
-	const ::rtl::OUString sPropertyTrueContent;
-	const ::rtl::OUString sPropertyURL;
-	const ::rtl::OUString sPropertyURLContent;
-	const ::rtl::OUString sPropertyUserText;
-	const ::rtl::OUString sPropertyValue;
-	const ::rtl::OUString sPropertyVariableName;
-	const ::rtl::OUString sPropertyVariableSubType;
+    /// explode a field master name into field type and field name
+    sal_Bool ExplodeFieldMasterName(
+        const ::rtl::OUString& sMasterName,	/// name as returned by SO API
+        ::rtl::OUString& sFieldType,		/// out: field type
+        ::rtl::OUString& sVarName);			/// out: variable name
+
+    /// make reference name for a foot- or endnote
+    static ::rtl::OUString MakeFootnoteRefName(sal_Int16 nSeqNo);
+
+    /// make reference name for a sequence field
+    static ::rtl::OUString MakeSequenceRefName(
+        sal_Int16 nSeqNo,
+        const ::rtl::OUString& rSeqName );
+
+private:
+    // service names
+    const ::rtl::OUString sServicePrefix;
+    const ::rtl::OUString sFieldMasterPrefix;
+    const ::rtl::OUString sPresentationServicePrefix;
+
+    // property names
+    const ::rtl::OUString sPropertyAdjust;
+    const ::rtl::OUString sPropertyAuthor;
+    const ::rtl::OUString sPropertyChapterFormat;
+    const ::rtl::OUString sPropertyChapterNumberingLevel;
+    const ::rtl::OUString sPropertyCharStyleNames;
+    const ::rtl::OUString sPropertyCondition;
+    const ::rtl::OUString sPropertyContent;
+    const ::rtl::OUString sPropertyDataBaseName;
+    const ::rtl::OUString sPropertyDataBaseURL;
+    const ::rtl::OUString sPropertyDataColumnName;
+    const ::rtl::OUString sPropertyDataCommandType;
+    const ::rtl::OUString sPropertyDataTableName;
+    const ::rtl::OUString sPropertyDate;
+    const ::rtl::OUString sPropertyDateTime;
+    const ::rtl::OUString sPropertyDateTimeValue;
+    const ::rtl::OUString sPropertyDDECommandElement;
+    const ::rtl::OUString sPropertyDDECommandFile;
+    const ::rtl::OUString sPropertyDDECommandType;
+    const ::rtl::OUString sPropertyDependentTextFields;
+    const ::rtl::OUString sPropertyFalseContent;
+    const ::rtl::OUString sPropertyFields;
+    const ::rtl::OUString sPropertyFieldSubType;
+    const ::rtl::OUString sPropertyFileFormat;
+    const ::rtl::OUString sPropertyFullName;
+    const ::rtl::OUString sPropertyHint;
+    const ::rtl::OUString sPropertyInitials;
+    const ::rtl::OUString sPropertyInstanceName;
+    const ::rtl::OUString sPropertyIsAutomaticUpdate;
+    const ::rtl::OUString sPropertyIsConditionTrue;
+    const ::rtl::OUString sPropertyIsDataBaseFormat;
+    const ::rtl::OUString sPropertyIsDate;
+    const ::rtl::OUString sPropertyIsExpression;
+    const ::rtl::OUString sPropertyIsFixed;
+    const ::rtl::OUString sPropertyIsFixedLanguage;
+    const ::rtl::OUString sPropertyIsHidden;
+    const ::rtl::OUString sPropertyIsInput;
+    const ::rtl::OUString sPropertyIsShowFormula;
+    const ::rtl::OUString sPropertyIsVisible;
+    const ::rtl::OUString sPropertyItems;
+    const ::rtl::OUString sPropertyLevel;
+    const ::rtl::OUString sPropertyMacro;
+    const ::rtl::OUString sPropertyMeasureKind;
+    const ::rtl::OUString sPropertyName;
+    const ::rtl::OUString sPropertyNumberFormat;
+    const ::rtl::OUString sPropertyNumberingSeparator;
+    const ::rtl::OUString sPropertyNumberingType;
+    const ::rtl::OUString sPropertyOffset;
+    const ::rtl::OUString sPropertyOn;
+    const ::rtl::OUString sPropertyPlaceholder;
+    const ::rtl::OUString sPropertyPlaceholderType;
+    const ::rtl::OUString sPropertyReferenceFieldPart;
+    const ::rtl::OUString sPropertyReferenceFieldSource;
+    const ::rtl::OUString sPropertyReferenceFieldType;
+    const ::rtl::OUString sPropertyRevision;
+    const ::rtl::OUString sPropertyScriptType;
+    const ::rtl::OUString sPropertySelectedItem;
+    const ::rtl::OUString sPropertySequenceNumber;
+    const ::rtl::OUString sPropertySequenceValue;
+    const ::rtl::OUString sPropertySetNumber;
+    const ::rtl::OUString sPropertySourceName;
+    const ::rtl::OUString sPropertySubType;
+    const ::rtl::OUString sPropertyTargetFrame;
+    const ::rtl::OUString sPropertyTrueContent;
+    const ::rtl::OUString sPropertyURL;
+    const ::rtl::OUString sPropertyURLContent;
+    const ::rtl::OUString sPropertyUserText;
+    const ::rtl::OUString sPropertyValue;
+    const ::rtl::OUString sPropertyVariableName;
+    const ::rtl::OUString sPropertyVariableSubType;
     const ::rtl::OUString sPropertyHelp;
     const ::rtl::OUString sPropertyTooltip;
     const ::rtl::OUString sPropertyTextRange;
 
-	const ::rtl::OUString sEmpty;
+    const ::rtl::OUString sEmpty;
 
-	XMLPropertyState* pCombinedCharactersPropertyState;
+    XMLPropertyState* pCombinedCharactersPropertyState;
 
 };
 
-
-
-
-
-
 #endif

Modified: openoffice/branches/rejuvenate01/main/xmloff/inc/txtfldi.hxx
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/xmloff/inc/txtfldi.hxx?rev=1555112&r1=1555111&r2=1555112&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/xmloff/inc/txtfldi.hxx (original)
+++ openoffice/branches/rejuvenate01/main/xmloff/inc/txtfldi.hxx Fri Jan  3 14:44:44 2014
@@ -1342,30 +1342,39 @@ protected:
 };
 
 
-/** Import an annotation field (<text:annotation>) */
+/** Import an annotation field (<office:annotation>) */
 class XMLAnnotationImportContext : public XMLTextFieldImportContext
 {
-	const ::rtl::OUString sPropertyAuthor;
-	const ::rtl::OUString sPropertyContent;
-	const ::rtl::OUString sPropertyDate;
-	const ::rtl::OUString sPropertyTextRange;
-
-	::rtl::OUStringBuffer aAuthorBuffer;
-	::rtl::OUStringBuffer aTextBuffer;
-	::rtl::OUStringBuffer aDateBuffer;
+    const ::rtl::OUString sPropertyName;
+    const ::rtl::OUString sPropertyAuthor;
+    const ::rtl::OUString sPropertyInitials;
+    const ::rtl::OUString sPropertyContent;
+    const ::rtl::OUString sPropertyDate;
+    const ::rtl::OUString sPropertyTextRange;
+
+    ::rtl::OUString aName;
+
+    ::rtl::OUStringBuffer aAuthorBuffer;
+    ::rtl::OUStringBuffer aInitialsBuffer;
+    ::rtl::OUStringBuffer aTextBuffer;
+    ::rtl::OUStringBuffer aDateBuffer;
+
+    com::sun::star::uno::Reference < com::sun::star::beans::XPropertySet > mxField;
+    com::sun::star::uno::Reference < com::sun::star::text::XTextCursor >  mxCursor;
+    com::sun::star::uno::Reference < com::sun::star::text::XTextCursor >  mxOldCursor;
 
-	com::sun::star::uno::Reference < com::sun::star::beans::XPropertySet > mxField;
-	com::sun::star::uno::Reference < com::sun::star::text::XTextCursor >  mxCursor;
-	com::sun::star::uno::Reference < com::sun::star::text::XTextCursor >  mxOldCursor;
+    const sal_uInt16 m_nToken;
 
 public:
 
-	TYPEINFO();
+    TYPEINFO();
 
-	XMLAnnotationImportContext(SvXMLImport& rImport,
-							   XMLTextImportHelper& rHlp,
-							   sal_uInt16 nPrfx,
-							   const ::rtl::OUString& sLocalName);
+    XMLAnnotationImportContext(
+        SvXMLImport& rImport,
+        XMLTextImportHelper& rHlp,
+        sal_uInt16 nToken,
+        sal_uInt16 nPrfx,
+        const ::rtl::OUString& sLocalName);
 
 protected:
 
@@ -1375,8 +1384,7 @@ protected:
 
 	/// set properties
 	virtual void PrepareField(
-		const ::com::sun::star::uno::Reference<
-		::com::sun::star::beans::XPropertySet> & xPropertySet);
+		const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > & xPropertySet);
 
 	virtual SvXMLImportContext *CreateChildContext(
 		sal_uInt16 nPrefix,

Modified: openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/odffields.hxx
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/odffields.hxx?rev=1555112&r1=1555111&r2=1555112&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/odffields.hxx (original)
+++ openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/odffields.hxx Fri Jan  3 14:44:44 2014
@@ -46,4 +46,6 @@
 
 #define ODF_PAGEREF "vnd.oasis.opendocument.field.PAGEREF"
 
+#define ODF_COMMENTRANGE "vnd.oasis.opendocument.field.COMMENTRANGE"
+
 #endif /*  _ODFFIELDS_HXX */

Modified: openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/txtimp.hxx
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/txtimp.hxx?rev=1555112&r1=1555111&r2=1555112&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/txtimp.hxx (original)
+++ openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/txtimp.hxx Fri Jan  3 14:44:44 2014
@@ -224,7 +224,9 @@ enum XMLTextPElemTokens
 	XML_TOK_TEXT_SHEET_NAME,
 	XML_TOK_TEXT_BIBLIOGRAPHY_MARK,
 	XML_TOK_TEXT_ANNOTATION,
-	XML_TOK_TEXT_SCRIPT,
+    XML_TOK_TEXT_ANNOTATION_END,
+    XML_TOK_TEXT_NAME,
+    XML_TOK_TEXT_SCRIPT,
     XML_TOK_TEXT_TABLE_FORMULA,
     XML_TOK_TEXT_DROPDOWN,
 

Modified: openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/xmlnmspe.hxx
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/xmlnmspe.hxx?rev=1555112&r1=1555111&r2=1555112&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/xmlnmspe.hxx (original)
+++ openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/xmlnmspe.hxx Fri Jan  3 14:44:44 2014
@@ -85,8 +85,9 @@ XML_NAMESPACE_EXT( OFFICE,      37U )
 XML_NAMESPACE_EXT( TABLE,       38U )
 XML_NAMESPACE_EXT( CHART,       39U )
 XML_NAMESPACE_EXT( DRAW,		40U )
+XML_NAMESPACE_EXT( TEXT,        41U )
 
-#define _XML_OLD_NAMESPACE_BASE 41U
+#define _XML_OLD_NAMESPACE_BASE 42U
 
 // namespaces used in the technical preview (SO 5.2)
 XML_OLD_NAMESPACE( FO,		0U )

Modified: openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/xmltoken.hxx
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/xmltoken.hxx?rev=1555112&r1=1555111&r2=1555112&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/xmltoken.hxx (original)
+++ openoffice/branches/rejuvenate01/main/xmloff/inc/xmloff/xmltoken.hxx Fri Jan  3 14:44:44 2014
@@ -147,6 +147,9 @@ namespace xmloff { namespace token {
         XML_NP_DRAW_EXT,
         XML_N_DRAW_EXT,
 
+        XML_NP_TEXT_EXT,
+        XML_N_TEXT_EXT,
+
         // units
         XML_UNIT_MM,
         XML_UNIT_M,
@@ -227,6 +230,7 @@ namespace xmloff { namespace token {
         XML_ANIMATION_STOP_INSIDE,
         XML_ANIMATIONS,
         XML_ANNOTATION,
+        XML_ANNOTATION_END,
         XML_ANNOTATIONS,
         XML_ANNOTE,
         XML_APPEAR,

Modified: openoffice/branches/rejuvenate01/main/xmloff/source/core/xmlimp.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/xmloff/source/core/xmlimp.cxx?rev=1555112&r1=1555111&r2=1555112&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/xmloff/source/core/xmlimp.cxx (original)
+++ openoffice/branches/rejuvenate01/main/xmloff/source/core/xmlimp.cxx Fri Jan  3 14:44:44 2014
@@ -92,6 +92,7 @@ sal_Char __READONLY_DATA sXML_np__oooc[]
 sal_Char __READONLY_DATA sXML_np__of[] = "_of";
 sal_Char __READONLY_DATA sXML_np__style[] = "_style";
 sal_Char __READONLY_DATA sXML_np__text[] = "_text";
+sal_Char __READONLY_DATA sXML_np__text_ext[] = "_text_ooo";
 sal_Char __READONLY_DATA sXML_np__table[] = "_table";
 sal_Char __READONLY_DATA sXML_np__table_ext[] = "_table_ooo";
 sal_Char __READONLY_DATA sXML_np__draw[] = "_draw";
@@ -308,8 +309,7 @@ void SvXMLImport::_InitCtor()
 	if( mnImportFlags != 0 )
 	{
 		// implicit "xml" namespace prefix
-		mpNamespaceMap->Add( GetXMLToken(XML_XML), GetXMLToken(XML_N_XML),
-                            XML_NAMESPACE_XML );
+        mpNamespaceMap->Add( GetXMLToken(XML_XML), GetXMLToken(XML_N_XML), XML_NAMESPACE_XML );
 		mpNamespaceMap->Add( OUString( RTL_CONSTASCII_USTRINGPARAM ( sXML_np__office ) ),
 							GetXMLToken(XML_N_OFFICE),
 							XML_NAMESPACE_OFFICE );
@@ -323,6 +323,9 @@ void SvXMLImport::_InitCtor()
 		mpNamespaceMap->Add( OUString( RTL_CONSTASCII_USTRINGPARAM ( sXML_np__text) ),
 							GetXMLToken(XML_N_TEXT),
 							XML_NAMESPACE_TEXT );
+        mpNamespaceMap->Add( OUString( RTL_CONSTASCII_USTRINGPARAM ( sXML_np__text_ext ) ),
+            GetXMLToken(XML_N_TEXT_EXT),
+            XML_NAMESPACE_TEXT_EXT );
 		mpNamespaceMap->Add( OUString( RTL_CONSTASCII_USTRINGPARAM ( sXML_np__table ) ),
 							GetXMLToken(XML_N_TABLE),
 							XML_NAMESPACE_TABLE );

Modified: openoffice/branches/rejuvenate01/main/xmloff/source/core/xmltoken.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/xmloff/source/core/xmltoken.cxx?rev=1555112&r1=1555111&r2=1555112&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/xmloff/source/core/xmltoken.cxx (original)
+++ openoffice/branches/rejuvenate01/main/xmloff/source/core/xmltoken.cxx Fri Jan  3 14:44:44 2014
@@ -155,6 +155,9 @@ namespace xmloff { namespace token {
         TOKEN( "drawooo", XML_NP_DRAW_EXT ),
         TOKEN( "http://openoffice.org/2010/draw", XML_N_DRAW_EXT ),
 
+        TOKEN( "textooo", XML_NP_TEXT_EXT ),
+        TOKEN( "http://openoffice.org/2013/office", XML_N_TEXT_EXT ),
+
         // units
         TOKEN( "mm",                              XML_UNIT_MM ),
         TOKEN( "m",                               XML_UNIT_M ),
@@ -235,6 +238,7 @@ namespace xmloff { namespace token {
         TOKEN( "animation-stop-inside",           XML_ANIMATION_STOP_INSIDE ),
         TOKEN( "animations",                      XML_ANIMATIONS ),
         TOKEN( "annotation",                      XML_ANNOTATION ),
+        TOKEN( "annotation-end",                  XML_ANNOTATION_END ),
         TOKEN( "annotations",                     XML_ANNOTATIONS ),
         TOKEN( "annote",                          XML_ANNOTE ),
         TOKEN( "appear",                          XML_APPEAR ),

Modified: openoffice/branches/rejuvenate01/main/xmloff/source/text/txtflde.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/xmloff/source/text/txtflde.cxx?rev=1555112&r1=1555111&r2=1555112&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/xmloff/source/text/txtflde.cxx (original)
+++ openoffice/branches/rejuvenate01/main/xmloff/source/text/txtflde.cxx Fri Jan  3 14:44:44 2014
@@ -311,6 +311,7 @@ XMLTextFieldExport::XMLTextFieldExport( 
 	sPropertyFileFormat(RTL_CONSTASCII_USTRINGPARAM("FileFormat")),
 	sPropertyFullName(RTL_CONSTASCII_USTRINGPARAM("FullName")),
 	sPropertyHint(RTL_CONSTASCII_USTRINGPARAM("Hint")),
+    sPropertyInitials(RTL_CONSTASCII_USTRINGPARAM("Initials")),
 	sPropertyInstanceName(RTL_CONSTASCII_USTRINGPARAM("InstanceName")),
 	sPropertyIsAutomaticUpdate(RTL_CONSTASCII_USTRINGPARAM("IsAutomaticUpdate")),
 	sPropertyIsConditionTrue(RTL_CONSTASCII_USTRINGPARAM("IsConditionTrue")),
@@ -1730,13 +1731,18 @@ void XMLTextFieldExport::ExportFieldHelp
 		DBG_ASSERT(sPresentation.equals(sEmpty),
 				   "Unexpected presentation for annotation field");
 
-		// annotation element + content
-		SvXMLElementExport aElem(GetExport(), XML_NAMESPACE_OFFICE,
-								 XML_ANNOTATION, sal_False, sal_True);
+        // annotation element + content
+        OUString aAnnotationName;
+        rPropSet->getPropertyValue(sPropertyName) >>= aAnnotationName;
+        if ( aAnnotationName.getLength() > 0 )
+        {
+            GetExport().AddAttribute( XML_NAMESPACE_OFFICE, XML_NAME, aAnnotationName );
+        }
+        SvXMLElementExport aElem( GetExport(), XML_NAMESPACE_OFFICE, XML_ANNOTATION, sal_False, sal_True );
 
 		// author
 		OUString aAuthor( GetStringProperty(sPropertyAuthor, rPropSet) );
-		if( aAuthor.getLength() )
+		if ( aAuthor.getLength() > 0 )
 		{
 			SvXMLElementExport aCreatorElem( GetExport(), XML_NAMESPACE_DC,
 											  XML_CREATOR, sal_True,
@@ -1757,6 +1763,22 @@ void XMLTextFieldExport::ExportFieldHelp
 			GetExport().Characters(aBuffer.makeStringAndClear());
 		}
 
+        // initials
+        if ( GetExport().getDefaultVersion() > SvtSaveOptions::ODFVER_012 )
+        {
+            OUString aInitials( GetStringProperty(sPropertyInitials, rPropSet) );
+            if ( aInitials.getLength() > 0 )
+            {
+                SvXMLElementExport aCreatorElem(
+                    GetExport(),
+                    XML_NAMESPACE_TEXT_EXT,
+                    XML_SENDER_INITIALS,
+                    sal_True,
+                    sal_False );
+                GetExport().Characters(aInitials);
+            }
+        }
+
 		com::sun::star::uno::Reference < com::sun::star::text::XText > xText;
 		try
 		{

Modified: openoffice/branches/rejuvenate01/main/xmloff/source/text/txtfldi.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/xmloff/source/text/txtfldi.cxx?rev=1555112&r1=1555111&r2=1555112&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/xmloff/source/text/txtfldi.cxx (original)
+++ openoffice/branches/rejuvenate01/main/xmloff/source/text/txtfldi.cxx Fri Jan  3 14:44:44 2014
@@ -153,6 +153,7 @@ const sal_Char sAPI_is_fixed[]			= "IsFi
 const sal_Char sAPI_content[]			= "Content";
 const sal_Char sAPI_value[]				= "Value";
 const sal_Char sAPI_author[]			= "Author";
+const sal_Char sAPI_initials[]          = "Initials";
 const sal_Char sAPI_full_name[]			= "FullName";
 const sal_Char sAPI_place_holder_type[] = "PlaceHolderType";
 const sal_Char sAPI_place_holder[]		= "PlaceHolder";
@@ -560,10 +561,11 @@ XMLTextFieldImportContext::CreateTextFie
 															  nPrefix, rName );
 			break;
 
-		case XML_TOK_TEXT_ANNOTATION:
-			pContext = new XMLAnnotationImportContext( rImport, rHlp,
-													   nPrefix, rName);
-			break;
+        case XML_TOK_TEXT_ANNOTATION:
+        case XML_TOK_TEXT_ANNOTATION_END:
+            pContext =
+                new XMLAnnotationImportContext( rImport, rHlp, nToken, nPrefix, rName);
+            break;
 
 		case XML_TOK_TEXT_SCRIPT:
 			pContext = new XMLScriptImportContext( rImport, rHlp,
@@ -3629,19 +3631,21 @@ const sal_Char* XMLBibliographyFieldImpo
 TYPEINIT1(XMLAnnotationImportContext, XMLTextFieldImportContext);
 
 XMLAnnotationImportContext::XMLAnnotationImportContext(
-	SvXMLImport& rImport,
-	XMLTextImportHelper& rHlp,
-	sal_uInt16 nPrfx,
-	const OUString& sLocalName) :
-		XMLTextFieldImportContext(rImport, rHlp, sAPI_annotation, 
-								  nPrfx, sLocalName), 
-		sPropertyAuthor(RTL_CONSTASCII_USTRINGPARAM(sAPI_author)),
-		sPropertyContent(RTL_CONSTASCII_USTRINGPARAM(sAPI_content)),
-		// why is there no UNO_NAME_DATE_TIME, but only UNO_NAME_DATE_TIME_VALUE?
-		sPropertyDate(RTL_CONSTASCII_USTRINGPARAM(sAPI_date_time_value)),
-		sPropertyTextRange(RTL_CONSTASCII_USTRINGPARAM(sAPI_TextRange))
+    SvXMLImport& rImport,
+    XMLTextImportHelper& rHlp,
+    sal_uInt16 nToken,
+    sal_uInt16 nPrfx,
+    const OUString& sLocalName)
+    : XMLTextFieldImportContext(rImport, rHlp, sAPI_annotation, nPrfx, sLocalName)
+    , sPropertyName(RTL_CONSTASCII_USTRINGPARAM(sAPI_name))
+    , sPropertyAuthor(RTL_CONSTASCII_USTRINGPARAM(sAPI_author))
+    , sPropertyInitials(RTL_CONSTASCII_USTRINGPARAM(sAPI_initials))
+    , sPropertyContent(RTL_CONSTASCII_USTRINGPARAM(sAPI_content))
+    , sPropertyDate(RTL_CONSTASCII_USTRINGPARAM(sAPI_date_time_value))
+    , sPropertyTextRange(RTL_CONSTASCII_USTRINGPARAM(sAPI_TextRange))
+    , m_nToken( nToken )
 {
-	bValid = sal_True;
+    bValid = sal_True;
 
     // remember old list item and block (#91964#) and reset them
     // for the text frame
@@ -3649,139 +3653,200 @@ XMLAnnotationImportContext::XMLAnnotatio
     GetImport().GetTextImport()->PushListContext();
 }
 
-void XMLAnnotationImportContext::ProcessAttribute( 
-	sal_uInt16,
-	const OUString& )
-{
-	// ignore
+void XMLAnnotationImportContext::ProcessAttribute(
+    sal_uInt16 nToken,
+    const OUString& rValue )
+ {
+    if ( nToken == XML_TOK_TEXT_NAME )
+    {
+        aName = rValue;
+    }
 }
 
 SvXMLImportContext* XMLAnnotationImportContext::CreateChildContext(
-	sal_uInt16 nPrefix,
-	const OUString& rLocalName,
-	const Reference<XAttributeList >& xAttrList )
+    sal_uInt16 nPrefix,
+    const OUString& rLocalName,
+    const Reference<XAttributeList >& xAttrList )
 {
-	SvXMLImportContext *pContext = 0;
-	if( XML_NAMESPACE_DC == nPrefix )
-	{
-		if( IsXMLToken( rLocalName, XML_CREATOR ) )
-			pContext = new XMLStringBufferImportContext(GetImport(), nPrefix, 
-											rLocalName, aAuthorBuffer);
-		else if( IsXMLToken( rLocalName, XML_DATE ) )
-			pContext = new XMLStringBufferImportContext(GetImport(), nPrefix, 
-											rLocalName, aDateBuffer);
-	}
+    SvXMLImportContext *pContext = 0;
+    if( XML_NAMESPACE_DC == nPrefix )
+    {
+        if( IsXMLToken( rLocalName, XML_CREATOR ) )
+        {
+            pContext =
+                new XMLStringBufferImportContext( GetImport(), nPrefix, rLocalName, aAuthorBuffer);
+        }
+        else if( IsXMLToken( rLocalName, XML_DATE ) )
+        {
+            pContext =
+                new XMLStringBufferImportContext( GetImport(), nPrefix, rLocalName, aDateBuffer);
+        }
+    }
+    else if ( XML_NAMESPACE_TEXT == nPrefix
+              || XML_NAMESPACE_TEXT_EXT == nPrefix )
+    {
+        if( IsXMLToken( rLocalName, XML_SENDER_INITIALS ) )
+        {
+            pContext =
+                new XMLStringBufferImportContext( GetImport(), nPrefix, rLocalName, aInitialsBuffer);
+        }
+    }
 
-	if( !pContext )
-	{
-		try
-		{
-			if ( !mxField.is() )
-				CreateField( mxField, sServicePrefix + GetServiceName() );
-			Any aAny = mxField->getPropertyValue( sPropertyTextRange );
-			Reference< XText > xText;
-			aAny >>= xText;
-			if( xText.is() )
-			{
-				UniReference < XMLTextImportHelper > xTxtImport = GetImport().GetTextImport();
-				if( !mxCursor.is() )
-				{
-					mxOldCursor = xTxtImport->GetCursor();
-					mxCursor = xText->createTextCursor();
-				}
+    if( !pContext )
+    {
+        try
+        {
+            if ( !mxField.is() )
+                CreateField( mxField, sServicePrefix + GetServiceName() );
+            Any aAny = mxField->getPropertyValue( sPropertyTextRange );
+            Reference< XText > xText;
+            aAny >>= xText;
+            if( xText.is() )
+            {
+                UniReference < XMLTextImportHelper > xTxtImport = GetImport().GetTextImport();
+                if( !mxCursor.is() )
+                {
+                    mxOldCursor = xTxtImport->GetCursor();
+                    mxCursor = xText->createTextCursor();
+                }
 
-				if( mxCursor.is() )
-				{
-					xTxtImport->SetCursor( mxCursor );
-					pContext = xTxtImport->CreateTextChildContext( GetImport(), nPrefix, rLocalName, xAttrList );
-				}
-			}
-		}
-		catch ( Exception& ) 
-		{}
+                if( mxCursor.is() )
+                {
+                    xTxtImport->SetCursor( mxCursor );
+                    pContext = xTxtImport->CreateTextChildContext( GetImport(), nPrefix, rLocalName, xAttrList );
+                }
+            }
+        }
+        catch ( Exception& ) 
+        {}
 
-		if( !pContext )
-			pContext = new XMLStringBufferImportContext(GetImport(), nPrefix,  rLocalName, aTextBuffer);
-	}
+        if( !pContext )
+            pContext = new XMLStringBufferImportContext(GetImport(), nPrefix,  rLocalName, aTextBuffer);
+    }
 
-	return pContext;
+    return pContext;
 }
 
 void XMLAnnotationImportContext::EndElement()
 {
-	DBG_ASSERT(GetServiceName().getLength()>0, "no service name for element!");
-	if( mxCursor.is() )
-	{
-		// delete addition newline
-		const OUString aEmpty;
-		mxCursor->gotoEnd( sal_False );
-		mxCursor->goLeft( 1, sal_True );
-		mxCursor->setString( aEmpty );
+    DBG_ASSERT(GetServiceName().getLength()>0, "no service name for element!");
+    if( mxCursor.is() )
+    {
+        // delete addition newline
+        const OUString aEmpty;
+        mxCursor->gotoEnd( sal_False );
+        mxCursor->goLeft( 1, sal_True );
+        mxCursor->setString( aEmpty );
 
-		// reset cursor
-		GetImport().GetTextImport()->ResetCursor();
-	}
+        // reset cursor
+        GetImport().GetTextImport()->ResetCursor();
+    }
 
-	if( mxOldCursor.is() )
-		GetImport().GetTextImport()->SetCursor( mxOldCursor );
+    if( mxOldCursor.is() )
+        GetImport().GetTextImport()->SetCursor( mxOldCursor );
 
     // reinstall old list item #91964#
     GetImport().GetTextImport()->PopListContext();
 
-	if ( bValid )
-	{
-		if ( mxField.is() || CreateField( mxField, sServicePrefix + GetServiceName() ) )
-		{
-			// set field properties
-			PrepareField( mxField );
+    if ( bValid )
+    {
+        if ( m_nToken == XML_TOK_TEXT_ANNOTATION_END )
+        {
+            // Search for a previous annotation with the same name.
+            uno::Reference< text::XTextContent > xPrevField;
+            {
+                Reference<XTextFieldsSupplier> xTextFieldsSupplier(GetImport().GetModel(), UNO_QUERY);
+                uno::Reference<container::XEnumerationAccess> xFieldsAccess(xTextFieldsSupplier->getTextFields());
+                uno::Reference<container::XEnumeration> xFields(xFieldsAccess->createEnumeration());
+                while (xFields->hasMoreElements())
+                {
+                    uno::Reference<beans::XPropertySet> xCurrField(xFields->nextElement(), uno::UNO_QUERY);
+                    OUString aFieldName;
+                    xCurrField->getPropertyValue(sPropertyName) >>= aFieldName;
+                    if ( aFieldName == aName )
+                    {
+                        xPrevField.set( xCurrField, uno::UNO_QUERY );
+                        break;
+                    }
+                }
+            }
+            if ( xPrevField.is() )
+            {
+                // So we are ending a previous annotation,
+                // let's create a text range covering the start and the current position.
+                uno::Reference< text::XText > xText = GetImportHelper().GetText();
+                uno::Reference< text::XTextCursor > xCursor =
+                    xText->createTextCursorByRange( xPrevField->getAnchor() );
+                xCursor->gotoRange( GetImportHelper().GetCursorAsRange(), true );
+                uno::Reference< text::XTextRange > xTextRange( xCursor, uno::UNO_QUERY );
 
-			// attach field to document
-			Reference < XTextContent > xTextContent( mxField, UNO_QUERY );
+                xText->insertTextContent( xTextRange, xPrevField, !xCursor->isCollapsed() );
+            }
+        }
+        else
+        {
+            if ( mxField.is() || CreateField( mxField, sServicePrefix + GetServiceName() ) )
+            {
+                // set field properties
+                PrepareField( mxField );
 
-			// workaround for #80606#
-			try
-			{
-				GetImportHelper().InsertTextContent( xTextContent );
-			}
-			catch (lang::IllegalArgumentException)
-			{
-				// ignore
-			}
-		}
-	}
-	else
-		GetImportHelper().InsertString(GetContent());
+                // attach field to document
+                Reference < XTextContent > xTextContent( mxField, UNO_QUERY );
+
+                // workaround for #80606#
+                try
+                {
+                    GetImportHelper().InsertTextContent( xTextContent );
+                }
+                catch (lang::IllegalArgumentException)
+                {
+                    // ignore
+                }
+            }
+        }
+    }
+    else
+        GetImportHelper().InsertString(GetContent());
 }
 
-void XMLAnnotationImportContext::PrepareField( 
-	const Reference<XPropertySet> & xPropertySet)
+void XMLAnnotationImportContext::PrepareField(
+    const Reference<XPropertySet> & xPropertySet )
 {
-	// import (possibly empty) author
-	OUString sAuthor( aAuthorBuffer.makeStringAndClear() );
-	xPropertySet->setPropertyValue(sPropertyAuthor, makeAny(sAuthor));
-
-	DateTime aDateTime;
-	if (SvXMLUnitConverter::convertDateTime(aDateTime, 
-											aDateBuffer.makeStringAndClear()))
-	{
-		/*
-		Date aDate;
-		aDate.Year = aDateTime.Year;
-		aDate.Month = aDateTime.Month;
-		aDate.Day = aDateTime.Day;
-		xPropertySet->setPropertyValue(sPropertyDate, makeAny(aDate));
-		*/
-		xPropertySet->setPropertyValue(sPropertyDate, makeAny(aDateTime));
-	}
-
-	OUString sBuffer = aTextBuffer.makeStringAndClear();
-	if ( sBuffer.getLength() )
-	{
-		// delete last paragraph mark (if necessary)
-		if (sal_Char(0x0a) == sBuffer.getStr()[sBuffer.getLength()-1])
-			sBuffer = sBuffer.copy(0, sBuffer.getLength()-1);
-		xPropertySet->setPropertyValue(sPropertyContent, makeAny(sBuffer));
-	}
+    // import (possibly empty) author
+    OUString sAuthor( aAuthorBuffer.makeStringAndClear() );
+    xPropertySet->setPropertyValue(sPropertyAuthor, makeAny(sAuthor));
+
+    // import (possibly empty) initials
+    OUString sInitials( aInitialsBuffer.makeStringAndClear() );
+    xPropertySet->setPropertyValue(sPropertyInitials, makeAny(sInitials));
+
+    DateTime aDateTime;
+    if (SvXMLUnitConverter::convertDateTime(aDateTime, 
+        aDateBuffer.makeStringAndClear()))
+    {
+        /*
+        Date aDate;
+        aDate.Year = aDateTime.Year;
+        aDate.Month = aDateTime.Month;
+        aDate.Day = aDateTime.Day;
+        xPropertySet->setPropertyValue(sPropertyDate, makeAny(aDate));
+        */
+        xPropertySet->setPropertyValue(sPropertyDate, makeAny(aDateTime));
+    }
+
+    OUString sBuffer = aTextBuffer.makeStringAndClear();
+    if ( sBuffer.getLength() > 0 )
+    {
+        // delete last paragraph mark (if necessary)
+        if (sal_Char(0x0a) == sBuffer.getStr()[sBuffer.getLength()-1])
+            sBuffer = sBuffer.copy(0, sBuffer.getLength()-1);
+        xPropertySet->setPropertyValue(sPropertyContent, makeAny(sBuffer));
+    }
+
+    if ( aName.getLength() > 0 )
+    {
+        xPropertySet->setPropertyValue(sPropertyName, makeAny(aName));
+    }
 }
 
 

Modified: openoffice/branches/rejuvenate01/main/xmloff/source/text/txtimp.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/xmloff/source/text/txtimp.cxx?rev=1555112&r1=1555111&r2=1555112&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/xmloff/source/text/txtimp.cxx (original)
+++ openoffice/branches/rejuvenate01/main/xmloff/source/text/txtimp.cxx Fri Jan  3 14:44:44 2014
@@ -87,13 +87,9 @@
 #include "XMLCalculationSettingsContext.hxx"
 #include <xmloff/formsimp.hxx>
 #include "XMLNumberStylesImport.hxx"
-// --> OD 2006-10-12 #i69629#
 #include <com/sun/star/beans/XPropertyState.hpp>
-// <--
 
-// --> OD 2008-04-25 #refactorlists#
 #include <txtlists.hxx>
-// <--
 #include <xmloff/odffields.hxx>
 #include <comphelper/stlunosequence.hxx>
 
@@ -202,16 +198,13 @@ static __FAR_DATA SvXMLTokenMapEntry aTe
 	{ XML_NAMESPACE_TEXT, XML_SENDER_TITLE, XML_TOK_TEXT_SENDER_TITLE },
 	{ XML_NAMESPACE_TEXT, XML_SENDER_POSITION, XML_TOK_TEXT_SENDER_POSITION },
 	{ XML_NAMESPACE_TEXT, XML_SENDER_EMAIL, XML_TOK_TEXT_SENDER_EMAIL },
-	{ XML_NAMESPACE_TEXT, XML_SENDER_PHONE_PRIVATE,
-	  XML_TOK_TEXT_SENDER_PHONE_PRIVATE },
+	{ XML_NAMESPACE_TEXT, XML_SENDER_PHONE_PRIVATE, XML_TOK_TEXT_SENDER_PHONE_PRIVATE },
 	{ XML_NAMESPACE_TEXT, XML_SENDER_FAX, XML_TOK_TEXT_SENDER_FAX },
 	{ XML_NAMESPACE_TEXT, XML_SENDER_COMPANY, XML_TOK_TEXT_SENDER_COMPANY },
-	{ XML_NAMESPACE_TEXT, XML_SENDER_PHONE_WORK,
-	  XML_TOK_TEXT_SENDER_PHONE_WORK },
+	{ XML_NAMESPACE_TEXT, XML_SENDER_PHONE_WORK, XML_TOK_TEXT_SENDER_PHONE_WORK },
 	{ XML_NAMESPACE_TEXT, XML_SENDER_STREET, XML_TOK_TEXT_SENDER_STREET },
 	{ XML_NAMESPACE_TEXT, XML_SENDER_CITY, XML_TOK_TEXT_SENDER_CITY },
-	{ XML_NAMESPACE_TEXT, XML_SENDER_POSTAL_CODE,
-	  XML_TOK_TEXT_SENDER_POSTAL_CODE },
+	{ XML_NAMESPACE_TEXT, XML_SENDER_POSTAL_CODE, XML_TOK_TEXT_SENDER_POSTAL_CODE },
 	{ XML_NAMESPACE_TEXT, XML_SENDER_COUNTRY, XML_TOK_TEXT_SENDER_COUNTRY },
 	{ XML_NAMESPACE_TEXT, XML_SENDER_STATE_OR_PROVINCE,
 	  XML_TOK_TEXT_SENDER_STATE_OR_PROVINCE },
@@ -275,10 +268,8 @@ static __FAR_DATA SvXMLTokenMapEntry aTe
 	// misc fields
 	{ XML_NAMESPACE_TEXT, XML_PLACEHOLDER, XML_TOK_TEXT_PLACEHOLDER },
 	{ XML_NAMESPACE_TEXT, XML_HIDDEN_TEXT, XML_TOK_TEXT_HIDDEN_TEXT },
-	{ XML_NAMESPACE_TEXT, XML_HIDDEN_PARAGRAPH,
-	  XML_TOK_TEXT_HIDDEN_PARAGRAPH },
-	{ XML_NAMESPACE_TEXT, XML_CONDITIONAL_TEXT,
-	  XML_TOK_TEXT_CONDITIONAL_TEXT },
+	{ XML_NAMESPACE_TEXT, XML_HIDDEN_PARAGRAPH, XML_TOK_TEXT_HIDDEN_PARAGRAPH },
+	{ XML_NAMESPACE_TEXT, XML_CONDITIONAL_TEXT, XML_TOK_TEXT_CONDITIONAL_TEXT },
 	{ XML_NAMESPACE_TEXT, XML_FILE_NAME, XML_TOK_TEXT_FILENAME },
 	{ XML_NAMESPACE_TEXT, XML_CHAPTER,	XML_TOK_TEXT_CHAPTER },
 	{ XML_NAMESPACE_TEXT, XML_TEMPLATE_NAME, XML_TOK_TEXT_TEMPLATENAME },
@@ -297,10 +288,10 @@ static __FAR_DATA SvXMLTokenMapEntry aTe
 	{ XML_NAMESPACE_TEXT, XML_BOOKMARK_REF, XML_TOK_TEXT_BOOKMARK_REF },
 	{ XML_NAMESPACE_TEXT, XML_SEQUENCE_REF, XML_TOK_TEXT_SEQUENCE_REF },
 	{ XML_NAMESPACE_TEXT, XML_NOTE_REF, XML_TOK_TEXT_NOTE_REF },
-	{ XML_NAMESPACE_TEXT, XML_BIBLIOGRAPHY_MARK,
-	  XML_TOK_TEXT_BIBLIOGRAPHY_MARK },
+	{ XML_NAMESPACE_TEXT, XML_BIBLIOGRAPHY_MARK, XML_TOK_TEXT_BIBLIOGRAPHY_MARK },
 	{ XML_NAMESPACE_OFFICE, XML_ANNOTATION, XML_TOK_TEXT_ANNOTATION },
-	{ XML_NAMESPACE_TEXT, XML_SCRIPT, XML_TOK_TEXT_SCRIPT },
+    { XML_NAMESPACE_OFFICE, XML_ANNOTATION_END, XML_TOK_TEXT_ANNOTATION_END },
+    { XML_NAMESPACE_TEXT, XML_SCRIPT, XML_TOK_TEXT_SCRIPT },
     { XML_NAMESPACE_TEXT, XML_TABLE_FORMULA, XML_TOK_TEXT_TABLE_FORMULA },
     { XML_NAMESPACE_TEXT, XML_DROPDOWN, XML_TOK_TEXT_DROPDOWN },
 
@@ -516,6 +507,7 @@ static __FAR_DATA SvXMLTokenMapEntry aTe
     { XML_NAMESPACE_TEXT, XML_CURRENT_VALUE,
                 XML_TOK_TEXTFIELD_CURRENT_VALUE },
     { XML_NAMESPACE_TEXT, XML_TABLE_TYPE, XML_TOK_TEXTFIELD_TABLE_TYPE },
+    { XML_NAMESPACE_OFFICE, XML_NAME, XML_TOK_TEXT_NAME },
 
     XML_TOKEN_MAP_END
 };

Modified: openoffice/branches/rejuvenate01/main/xmloff/source/text/txtparae.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/xmloff/source/text/txtparae.cxx?rev=1555112&r1=1555111&r2=1555112&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/xmloff/source/text/txtparae.cxx (original)
+++ openoffice/branches/rejuvenate01/main/xmloff/source/text/txtparae.cxx Fri Jan  3 14:44:44 2014
@@ -2215,156 +2215,169 @@ void XMLTextParagraphExport::exportParag
 }
 
 void XMLTextParagraphExport::exportTextRangeEnumeration(
-		const Reference < XEnumeration > & rTextEnum,
-		sal_Bool bAutoStyles, sal_Bool bIsProgress,
-		sal_Bool bPrvChrIsSpc )
+    const Reference < XEnumeration > & rTextEnum,
+    sal_Bool bAutoStyles,
+    sal_Bool bIsProgress,
+    sal_Bool bPrvChrIsSpc )
 {
     static OUString sMeta(RTL_CONSTASCII_USTRINGPARAM("InContentMetadata"));
-	sal_Bool bPrevCharIsSpace = bPrvChrIsSpc;
+    static OUString sAnnotation(RTL_CONSTASCII_USTRINGPARAM("Annotation"));
+    static OUString sAnnotationEnd(RTL_CONSTASCII_USTRINGPARAM("AnnotationEnd"));
 
-	while( rTextEnum->hasMoreElements() )
-	{
-		Reference<XPropertySet> xPropSet(rTextEnum->nextElement(), UNO_QUERY);
+    sal_Bool bPrevCharIsSpace = bPrvChrIsSpc;
+
+    while( rTextEnum->hasMoreElements() )
+    {
+        Reference<XPropertySet> xPropSet(rTextEnum->nextElement(), UNO_QUERY);
         Reference < XTextRange > xTxtRange(xPropSet, uno::UNO_QUERY);
-		Reference<XPropertySetInfo> xPropInfo(xPropSet->getPropertySetInfo());
+        Reference<XPropertySetInfo> xPropInfo(xPropSet->getPropertySetInfo());
 
-		if (xPropInfo->hasPropertyByName(sTextPortionType))
-		{
+        if (xPropInfo->hasPropertyByName(sTextPortionType))
+        {
             rtl::OUString sType;
-			xPropSet->getPropertyValue(sTextPortionType) >>= sType;
+            xPropSet->getPropertyValue(sTextPortionType) >>= sType;
 
-			if( sType.equals(sText))
-			{
-				exportTextRange( xTxtRange, bAutoStyles,
-								 bPrevCharIsSpace );
-			}
-			else if( sType.equals(sTextField))
-			{
+            if( sType.equals(sText))
+            {
+                exportTextRange( xTxtRange, bAutoStyles, bPrevCharIsSpace );
+            }
+            else if( sType.equals(sTextField))
+            {
                 exportTextField( xTxtRange, bAutoStyles, bIsProgress );
-				bPrevCharIsSpace = sal_False;
-			}
-			else if( sType.equals( sFrame ) )
-			{
-				Reference < XEnumeration> xContentEnum;
-				Reference < XContentEnumerationAccess > xCEA( xTxtRange,
-															  UNO_QUERY );
-				if( xCEA.is() )
-					xContentEnum.set(xCEA->createContentEnumeration(
-													sTextContentService ));
-				// frames are never in sections
-				Reference<XTextSection> xSection;
-				if( xContentEnum.is() )
-					exportTextContentEnumeration( xContentEnum,
-											  	  bAutoStyles,
-											  	  xSection, bIsProgress, sal_True,
-											   	  &xPropSet	);
+                bPrevCharIsSpace = false;
+            }
+            else if ( sType.equals( sAnnotation ) )
+            {
+                exportTextField( xTxtRange, bAutoStyles, bIsProgress );
+                bPrevCharIsSpace = false;
+            }
+            else if ( sType.equals( sAnnotationEnd ) )
+            {
+                Reference<XNamed> xBookmark(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
+                const OUString& rName = xBookmark->getName();
+                if ( rName.getLength() > 0 )
+                {
+                    GetExport().AddAttribute(XML_NAMESPACE_OFFICE, XML_NAME, rName);
+                }
+                SvXMLElementExport aElem( GetExport(), !bAutoStyles, XML_NAMESPACE_OFFICE, XML_ANNOTATION_END, sal_False, sal_False );
+            }
+            else if( sType.equals( sFrame ) )
+            {
+                Reference < XEnumeration> xContentEnum;
+                Reference < XContentEnumerationAccess > xCEA( xTxtRange, UNO_QUERY );
+                if( xCEA.is() )
+                    xContentEnum.set(xCEA->createContentEnumeration( sTextContentService ));
+                // frames are never in sections
+                Reference<XTextSection> xSection;
+                if( xContentEnum.is() )
+                    exportTextContentEnumeration(
+                    xContentEnum,
+                    bAutoStyles,
+                    xSection,
+                    bIsProgress,
+                    sal_True,
+                    &xPropSet );
 
-				bPrevCharIsSpace = sal_False;
-			}
-			else if (sType.equals(sFootnote))
-			{
-				exportTextFootnote(xPropSet,
-								   xTxtRange->getString(),
-								   bAutoStyles, bIsProgress );
-				bPrevCharIsSpace = sal_False;
-			}
-			else if (sType.equals(sBookmark))
-			{
-				exportTextMark(xPropSet,
-							   sBookmark,
-							   lcl_XmlBookmarkElements,
-							   bAutoStyles);
-			}
-			else if (sType.equals(sReferenceMark))
-			{
-				exportTextMark(xPropSet,
-							   sReferenceMark,
-							   lcl_XmlReferenceElements,
-							   bAutoStyles);
-			}
-			else if (sType.equals(sDocumentIndexMark))
-			{
-				pIndexMarkExport->ExportIndexMark(xPropSet,	bAutoStyles);
-			}
-			else if (sType.equals(sRedline))
-			{
-				if (NULL != pRedlineExport)
-					pRedlineExport->ExportChange(xPropSet, bAutoStyles);
-			}
-			else if (sType.equals(sRuby))
-			{
-				exportRuby(xPropSet, bAutoStyles);
-			}
+                bPrevCharIsSpace = sal_False;
+            }
+            else if (sType.equals(sFootnote))
+            {
+                exportTextFootnote( xPropSet, xTxtRange->getString(), bAutoStyles, bIsProgress );
+                bPrevCharIsSpace = sal_False;
+            }
+            else if (sType.equals(sBookmark))
+            {
+                exportTextMark( xPropSet, sBookmark, lcl_XmlBookmarkElements, bAutoStyles );
+            }
+            else if (sType.equals(sReferenceMark))
+            {
+                exportTextMark( xPropSet, sReferenceMark, lcl_XmlReferenceElements, bAutoStyles);
+            }
+            else if (sType.equals(sDocumentIndexMark))
+            {
+                pIndexMarkExport->ExportIndexMark( xPropSet, bAutoStyles);
+            }
+            else if (sType.equals(sRedline))
+            {
+                if (NULL != pRedlineExport)
+                    pRedlineExport->ExportChange( xPropSet, bAutoStyles );
+            }
+            else if (sType.equals(sRuby))
+            {
+                exportRuby( xPropSet, bAutoStyles );
+            }
             else if (sType.equals(sMeta))
             {
-                exportMeta(xPropSet, bAutoStyles, bIsProgress);
+                exportMeta( xPropSet, bAutoStyles, bIsProgress );
             }
-			else if (sType.equals(sTextFieldStart))
-			{
-				Reference<XNamed> xBookmark(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
-				if (xBookmark.is())
+            else if (sType.equals(sTextFieldStart))
+            {
+                Reference<XNamed> xBookmark(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
+                if (xBookmark.is())
                 {
-					GetExport().AddAttribute(XML_NAMESPACE_TEXT, XML_NAME, xBookmark->getName());
-				}
-				Reference< ::com::sun::star::text::XFormField > xFormField(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
-				if (xFormField.is())
+                    GetExport().AddAttribute(XML_NAMESPACE_TEXT, XML_NAME, xBookmark->getName());
+                }
+
+                Reference< ::com::sun::star::text::XFormField > xFormField(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
+                if (xFormField.is())
                 {
-					GetExport().AddAttribute(XML_NAMESPACE_FIELD, XML_TYPE, xFormField->getFieldType());
-				}
-				GetExport().StartElement(XML_NAMESPACE_FIELD, XML_FIELDMARK_START, sal_False);
-				if (xFormField.is())
+                    GetExport().AddAttribute(XML_NAMESPACE_FIELD, XML_TYPE, xFormField->getFieldType());
+                }
+
+                GetExport().StartElement(XML_NAMESPACE_FIELD, XML_FIELDMARK_START, sal_False);
+                if (xFormField.is())
                 {
                     FieldParamExporter(&GetExport(), xFormField->getParameters()).Export();
-				}
-				GetExport().EndElement(XML_NAMESPACE_FIELD, XML_FIELDMARK_START, sal_False);
-			}
-			else if (sType.equals(sTextFieldEnd))
-			{
-				GetExport().StartElement(XML_NAMESPACE_FIELD, XML_FIELDMARK_END, sal_False);
-				GetExport().EndElement(XML_NAMESPACE_FIELD, XML_FIELDMARK_END, sal_False);
-			}
-			else if (sType.equals(sTextFieldStartEnd))
-			{
-				Reference<XNamed> xBookmark(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
-				if (xBookmark.is())
+                }
+                GetExport().EndElement(XML_NAMESPACE_FIELD, XML_FIELDMARK_START, sal_False);
+            }
+            else if (sType.equals(sTextFieldEnd))
+            {
+                GetExport().StartElement(XML_NAMESPACE_FIELD, XML_FIELDMARK_END, sal_False);
+                GetExport().EndElement(XML_NAMESPACE_FIELD, XML_FIELDMARK_END, sal_False);
+            }
+            else if (sType.equals(sTextFieldStartEnd))
+            {
+                Reference<XNamed> xBookmark(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
+                if (xBookmark.is())
                 {
-					GetExport().AddAttribute(XML_NAMESPACE_TEXT, XML_NAME, xBookmark->getName());
-				}
-				Reference< ::com::sun::star::text::XFormField > xFormField(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
-				if (xFormField.is())
+                    GetExport().AddAttribute(XML_NAMESPACE_TEXT, XML_NAME, xBookmark->getName());
+                }
+                Reference< ::com::sun::star::text::XFormField > xFormField(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
+                if (xFormField.is())
                 {
-				    GetExport().AddAttribute(XML_NAMESPACE_FIELD, XML_TYPE, xFormField->getFieldType());
-				}
-				GetExport().StartElement(XML_NAMESPACE_FIELD, XML_FIELDMARK, sal_False);
-				if (xFormField.is())
+                    GetExport().AddAttribute(XML_NAMESPACE_FIELD, XML_TYPE, xFormField->getFieldType());
+                }
+                GetExport().StartElement(XML_NAMESPACE_FIELD, XML_FIELDMARK, sal_False);
+                if (xFormField.is())
                 {
                     FieldParamExporter(&GetExport(), xFormField->getParameters()).Export();
-				}
-				GetExport().EndElement(XML_NAMESPACE_FIELD, XML_FIELDMARK, sal_False);
-			}
-			else if (sType.equals(sSoftPageBreak))
-			{
-				exportSoftPageBreak(xPropSet,	bAutoStyles);
-			}
-			else {
-				DBG_ERROR("unknown text portion type");
+                }
+                GetExport().EndElement(XML_NAMESPACE_FIELD, XML_FIELDMARK, sal_False);
             }
-		}
-		else
-		{
-			Reference<XServiceInfo> xServiceInfo( xTxtRange, UNO_QUERY );
-			if( xServiceInfo->supportsService( sTextFieldService ) )
-			{
+            else if (sType.equals(sSoftPageBreak))
+            {
+                exportSoftPageBreak(xPropSet,	bAutoStyles);
+            }
+            else {
+                DBG_ERROR("unknown text portion type");
+            }
+        }
+        else
+        {
+            Reference<XServiceInfo> xServiceInfo( xTxtRange, UNO_QUERY );
+            if( xServiceInfo->supportsService( sTextFieldService ) )
+            {
                 exportTextField( xTxtRange, bAutoStyles, bIsProgress );
-				bPrevCharIsSpace = sal_False;
-			}
-			else
-			{
-				// no TextPortionType property -> non-Writer app -> text
-				exportTextRange( xTxtRange, bAutoStyles, bPrevCharIsSpace );
-			}
-		}
-	}
+                bPrevCharIsSpace = sal_False;
+            }
+            else
+            {
+                // no TextPortionType property -> non-Writer app -> text
+                exportTextRange( xTxtRange, bAutoStyles, bPrevCharIsSpace );
+            }
+        }
+    }
 
 // now that there are nested enumerations for meta(-field), this may be valid!
 //	DBG_ASSERT( !bOpenRuby, "Red Alert: Ruby still open!" );



Mime
View raw message