Tag: cws_src680_dbodf11 User: oj Date: 2007/02/02 04:09:17 Modified: dba/dbaccess/source/filter/xml/xmlExport.cxx dba/dbaccess/source/filter/xml/xmlExport.hxx dba/dbaccess/source/filter/xml/xmlHelper.cxx dba/dbaccess/source/filter/xml/xmlHelper.hxx
Log: export ODF format File Changes: Directory: /dba/dbaccess/source/filter/xml/ =========================================== File [changed]: xmlExport.cxx Url: http://dba.openoffice.org/source/browse/dba/dbaccess/source/filter/xml/xmlExport.cxx?r1=1.14&r2=1.14.76.1 Delta lines: +250 -73 ---------------------- --- xmlExport.cxx 17 Sep 2006 06:47:01 -0000 1.14 +++ xmlExport.cxx 2 Feb 2007 12:09:13 -0000 1.14.76.1 @@ -4,9 +4,9 @@ * * $RCSfile: xmlExport.cxx,v $ * - * $Revision: 1.14 $ + * $Revision: 1.14.76.1 $ * - * last change: $Author: obo $ $Date: 2006/09/17 06:47:01 $ + * last change: $Author: oj $ $Date: 2007/02/02 12:09:13 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -285,6 +285,13 @@ m_xExportHelper = new SvXMLExportPropertyMapper(GetTableStylesPropertySetMapper()); m_xColumnExportHelper = new OSpecialHanldeXMLExportPropertyMapper(GetColumnStylesPropertySetMapper()); + //UniReference < XMLPropertySetMapper > xCellStylesPropertySetMapper = new XMLPropertySetMapper(OXMLHelper::GetCellStylesPropertySetMapper(),m_xPropHdlFactory); + //m_xCellExportHelper = new OSpecialHanldeXMLExportPropertyMapper(xCellStylesPropertySetMapper); + //m_xCellExportHelper = new OSpecialHanldeXMLExportPropertyMapper(GetCellStylesPropertySetMapper()); + //m_xCellExportHelper->ChainExportMapper(XMLTextParagraphExport::CreateParaExtPropMapper(*this)); + m_xCellExportHelper = new OSpecialHanldeXMLExportPropertyMapper(GetCellStylesPropertySetMapper()); + m_xRowExportHelper = new OSpecialHanldeXMLExportPropertyMapper(OXMLHelper::GetRowStylesPropertySetMapper()); + GetAutoStylePool()->AddFamily( XML_STYLE_FAMILY_TABLE_TABLE, rtl::OUString::createFromAscii( XML_STYLE_FAMILY_TABLE_TABLE_STYLES_NAME ), @@ -296,6 +303,18 @@ rtl::OUString::createFromAscii( XML_STYLE_FAMILY_TABLE_COLUMN_STYLES_NAME ), m_xColumnExportHelper.get(), rtl::OUString::createFromAscii( XML_STYLE_FAMILY_TABLE_COLUMN_STYLES_PREFIX )); + + GetAutoStylePool()->AddFamily( + XML_STYLE_FAMILY_TABLE_CELL, + rtl::OUString::createFromAscii( XML_STYLE_FAMILY_TABLE_CELL_STYLES_NAME ), + m_xCellExportHelper.get(), + rtl::OUString::createFromAscii( XML_STYLE_FAMILY_TABLE_CELL_STYLES_PREFIX )); + + GetAutoStylePool()->AddFamily( + XML_STYLE_FAMILY_TABLE_ROW, + rtl::OUString::createFromAscii( XML_STYLE_FAMILY_TABLE_ROW_STYLES_NAME ), + m_xRowExportHelper.get(), + rtl::OUString::createFromAscii( XML_STYLE_FAMILY_TABLE_ROW_STYLES_PREFIX )); } // ----------------------------------------------------------------------------- IMPLEMENT_SERVICE_INFO1_STATIC( ODBExport, "com.sun.star.comp.sdb.DBExportFilter", "com.sun.star.document.ExportFilter") @@ -305,15 +324,6 @@ Reference<XPropertySet> xProp(getDataSource()); if ( xProp.is() ) { - ::rtl::OUString sValue; - xProp->getPropertyValue(PROPERTY_URL) >>= sValue; - AddAttribute(XML_NAMESPACE_DB, XML_CONNECTION_RESOURCE,sValue); - - sal_Bool bSupress = sal_False; - xProp->getPropertyValue(PROPERTY_SUPPRESSVERSIONCL) >>= bSupress; - if ( bSupress ) - AddAttribute(XML_NAMESPACE_DB, XML_SUPPRESS_VERSION_COLUMNS,XML_TRUE); - sal_Bool bAutoIncrementEnabled = sal_True; TStringPair aAutoIncrement; @@ -331,7 +341,9 @@ xSettingsState->getPropertyDefault( INFO_DECIMALDELIMITER ) >>= aDelimiter.sDecimal; xSettingsState->getPropertyDefault( INFO_THOUSANDSDELIMITER ) >>= aDelimiter.sThousand; + static ::rtl::OUString s_sTrue(::xmloff::token::GetXMLToken( XML_TRUE )); // loop through the properties, and export only those which are not defaulted + TSettingsMap aSettingsMap; Sequence< Property > aProperties = xSettingsInfo->getProperties(); const Property* pProperties = aProperties.getConstArray(); const Property* pPropertiesEnd = pProperties + aProperties.getLength(); @@ -345,6 +357,7 @@ if ( PropertyState_DEFAULT_VALUE == ePropertyState ) continue; } + ::rtl::OUString sValue; Any aValue = xDataSourceSettings->getPropertyValue( pProperties->Name ); switch ( aValue.getValueTypeClass() ) { @@ -374,21 +387,49 @@ else if ( pProperties->Name == INFO_TEXTFILEEXTENSION ) eToken = XML_EXTENSION; else if ( pProperties->Name == INFO_TEXTFILEHEADER ) + { + if ( sValue == s_sTrue ) + continue; eToken = XML_IS_FIRST_ROW_HEADER_LINE; + } else if ( pProperties->Name == INFO_SHOWDELETEDROWS ) + { + if ( sValue != s_sTrue ) + continue; eToken = XML_SHOW_DELETED; + } else if ( pProperties->Name == INFO_ALLOWLONGTABLENAMES ) + { + if ( sValue == s_sTrue ) + continue; eToken = XML_IS_TABLE_NAME_LENGTH_LIMITED; + } else if ( pProperties->Name == INFO_ADDITIONALOPTIONS ) eToken = XML_SYSTEM_DRIVER_SETTINGS; else if ( pProperties->Name == PROPERTY_ENABLESQL92CHECK ) + { + if ( sValue != s_sTrue ) + continue; eToken = XML_ENABLE_SQL92_CHECK; + } else if ( pProperties->Name == INFO_APPEND_TABLE_ALIAS ) + { + if ( sValue == s_sTrue ) + continue; eToken = XML_APPEND_TABLE_ALIAS_NAME; + } else if ( pProperties->Name == INFO_PARAMETERNAMESUBST ) + { + if ( sValue == s_sTrue ) + continue; eToken = XML_PARAMETER_NAME_SUBSTITUTION; + } else if ( pProperties->Name == INFO_IGNOREDRIVER_PRIV ) + { + if ( sValue == s_sTrue ) + continue; eToken = XML_IGNORE_DRIVER_PRIVILEGES; + } else if ( pProperties->Name == PROPERTY_BOOLEANCOMPARISONMODE ) { sal_Int32 nValue = 0; @@ -401,10 +442,22 @@ sValue = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("equal-boolean")); else if ( sValue.equalsAscii("3") ) sValue = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("equal-use-only-zero")); + if ( sValue.equalsAscii("equal-integer") ) + continue; eToken = XML_BOOLEAN_COMPARISON_MODE; } else if ( pProperties->Name == INFO_USECATALOG ) + { + if ( sValue != s_sTrue ) + continue; eToken = XML_USE_CATALOG; + } + else if ( pProperties->Name == PROPERTY_SUPPRESSVERSIONCL ) + { + if ( sValue == s_sTrue ) + continue; + eToken = XML_SUPPRESS_VERSION_COLUMNS; + } else if ( pProperties->Name == INFO_CONN_LDAP_BASEDN ) eToken = XML_BASE_DN; else if ( pProperties->Name == INFO_CONN_LDAP_ROWCOUNT ) @@ -473,7 +526,7 @@ continue; } - AddAttribute(XML_NAMESPACE_DB, eToken,sValue); + aSettingsMap.insert(TSettingsMap::value_type(eToken,sValue)); } if ( bAutoIncrementEnabled && (aAutoIncrement.first.getLength() || aAutoIncrement.second.getLength()) ) m_aAutoIncrement.reset( new TStringPair(aAutoIncrement)); @@ -482,20 +535,94 @@ SvXMLElementExport aElem(*this,XML_NAMESPACE_DB, XML_DATASOURCE, sal_True, sal_True); - exportLogin(); + exportConnectionData(); + exportDriverSettings(aSettingsMap); + exportApplicationConnectionSettings(aSettingsMap); + } +} +// ----------------------------------------------------------------------------- +void ODBExport::exportApplicationConnectionSettings(const TSettingsMap& _aSettings) +{ + const ::xmloff::token::XMLTokenEnum pSettings[] = { + XML_IS_TABLE_NAME_LENGTH_LIMITED + ,XML_ENABLE_SQL92_CHECK + ,XML_APPEND_TABLE_ALIAS_NAME + ,XML_IGNORE_DRIVER_PRIVILEGES + ,XML_BOOLEAN_COMPARISON_MODE + ,XML_USE_CATALOG + ,XML_MAX_ROW_COUNT + ,XML_SUPPRESS_VERSION_COLUMNS + }; + for (size_t i = 0; i< sizeof(pSettings)/sizeof(pSettings[0]); ++i) + { + TSettingsMap::const_iterator aFind = _aSettings.find(pSettings[i]); + if ( aFind != _aSettings.end() ) + AddAttribute(XML_NAMESPACE_DB, aFind->first,aFind->second); + } + SvXMLElementExport aElem(*this,XML_NAMESPACE_DB, XML_APPLICATION_CONNECTION_SETTINGS, sal_True, sal_True); + Reference<XPropertySet> xProp(getDataSource()); Sequence< ::rtl::OUString> aValue; xProp->getPropertyValue(PROPERTY_TABLEFILTER) >>= aValue; - exportSequence(aValue,XML_TABLE_FILTER,XML_TABLE_FILTER_PATTERN); + if ( aValue.getLength() ) + { + SvXMLElementExport aElem(*this,XML_NAMESPACE_DB, XML_TABLE_FILTER, sal_True, sal_True); + exportSequence(aValue,XML_TABLE_INCLUDE_FILTER,XML_TABLE_FILTER_PATTERN); + } xProp->getPropertyValue(PROPERTY_TABLETYPEFILTER) >>= aValue; + if ( aValue.getLength() ) exportSequence(aValue,XML_TABLE_TYPE_FILTER,XML_TABLE_TYPE); + exportDataSourceSettings(); +} +// ----------------------------------------------------------------------------- +void ODBExport::exportJavaClassPath(const TSettingsMap& _aSettings) +{ + TSettingsMap::const_iterator aFind = _aSettings.find(XML_JAVA_CLASSPATH); + if ( aFind != _aSettings.end() ) + { + AddAttribute(XML_NAMESPACE_XLINK, XML_HREF,aFind->second); + SvXMLElementExport aElem(*this,XML_NAMESPACE_DB, XML_JAVA_CLASSPATH, sal_True, sal_True); + } +} +// ----------------------------------------------------------------------------- +void ODBExport::exportDriverSettings(const TSettingsMap& _aSettings) +{ + const ::xmloff::token::XMLTokenEnum pSettings[] = { + XML_JAVA_DRIVER_CLASS + ,XML_SHOW_DELETED + ,XML_SYSTEM_DRIVER_SETTINGS + ,XML_BASE_DN + ,XML_IS_FIRST_ROW_HEADER_LINE + ,XML_PARAMETER_NAME_SUBSTITUTION + }; + for (size_t i = 0; i< sizeof(pSettings)/sizeof(pSettings[0]); ++i) + { + TSettingsMap::const_iterator aFind = _aSettings.find(pSettings[i]); + if ( aFind != _aSettings.end() ) + AddAttribute(XML_NAMESPACE_DB, aFind->first,aFind->second); + } + SvXMLElementExport aElem(*this,XML_NAMESPACE_DB, XML_DRIVER_SETTINGS, sal_True, sal_True); + exportJavaClassPath(_aSettings); exportAutoIncrement(); exportDelimiter(); exportCharSet(); - exportDataSourceSettings(); +} +// ----------------------------------------------------------------------------- +void ODBExport::exportConnectionData() +{ + SvXMLElementExport aConnData(*this,XML_NAMESPACE_DB, XML_CONNECTION_DATA, sal_True, sal_True); + + { + ::rtl::OUString sValue; + Reference<XPropertySet> xProp(getDataSource()); + xProp->getPropertyValue(PROPERTY_URL) >>= sValue; + AddAttribute(XML_NAMESPACE_XLINK, XML_HREF,sValue); + SvXMLElementExport aElem(*this,XML_NAMESPACE_DB, XML_CONNECTION_RESOURCE, sal_True, sal_True); } + + exportLogin(); } // ----------------------------------------------------------------------------- void ODBExport::exportDataSourceSettings() @@ -660,7 +787,7 @@ for(;pIter != pEnd;++pIter) { Reference<XPropertySet> xProp(_xCollection->getByName(*pIter),UNO_QUERY); - if ( _bExportContext && XML_TABLES != _eComponents ) + if ( _bExportContext && XML_TABLE_PRESENTATIONS != _eComponents ) AddAttribute(XML_NAMESPACE_DB, XML_NAME,*pIter); Reference< XNameAccess > xSub(xProp,UNO_QUERY); if ( xSub.is() ) @@ -731,7 +858,7 @@ exportStyleName(_xProp,GetAttrList()); - SvXMLElementExport aComponents(*this,XML_NAMESPACE_DB, XML_TABLE, sal_True, sal_True); + SvXMLElementExport aComponents(*this,XML_NAMESPACE_DB, XML_TABLE_PRESENTATION, sal_True, sal_True); Reference<XColumnsSupplier> xCol(_xProp,UNO_QUERY); exportColumns(xCol); exportFilter(_xProp,PROPERTY_FILTER,XML_FILTER_STATEMENT); @@ -741,12 +868,19 @@ void ODBExport::exportStyleName(XPropertySet* _xProp,SvXMLAttributeList& _rAtt) { Reference<XPropertySet> xFind(_xProp); - TPropertyStyleMap::iterator aFind = m_aAutoStyleNames.find(xFind); - if ( aFind != m_aAutoStyleNames.end() ) + exportStyleName(XML_STYLE_NAME,xFind,_rAtt,m_aAutoStyleNames); + exportStyleName(XML_DEFAULT_CELL_STYLE_NAME,xFind,_rAtt,m_aCellAutoStyleNames); + exportStyleName(XML_DEFAULT_ROW_STYLE_NAME,xFind,_rAtt,m_aRowAutoStyleNames); +} +// ----------------------------------------------------------------------------- +void ODBExport::exportStyleName(const ::xmloff::token::XMLTokenEnum _eToken,const uno::Reference<beans::XPropertySet>& _xProp,SvXMLAttributeList& _rAtt,TPropertyStyleMap& _rMap) +{ + TPropertyStyleMap::iterator aFind = _rMap.find(_xProp); + if ( aFind != _rMap.end() ) { - _rAtt.AddAttribute( GetNamespaceMap().GetQNameByKey( XML_NAMESPACE_DB, GetXMLToken(XML_STYLE_NAME) ), + _rAtt.AddAttribute( GetNamespaceMap().GetQNameByKey( XML_NAMESPACE_DB, GetXMLToken(_eToken) ), aFind->second ); - m_aAutoStyleNames.erase(aFind); + _rMap.erase(aFind); } } // ----------------------------------------------------------------------------- @@ -817,7 +951,7 @@ { AddAttribute(XML_NAMESPACE_DB, XML_NAME,*pIter); if ( bHidden ) - AddAttribute(XML_NAMESPACE_DB, XML_VISIBILITY,XML_COLLAPSE); + AddAttribute(XML_NAMESPACE_DB, XML_VISIBLE,XML_FALSE); if ( sValue.getLength() ) AddAttribute(XML_NAMESPACE_DB, XML_HELP_MESSAGE,sValue); @@ -904,20 +1038,32 @@ pMemFunc.reset( new ::comphelper::mem_fun1_t<ODBExport,XPropertySet* >(&ODBExport::exportTable) ); else pMemFunc.reset( new ::comphelper::mem_fun1_t<ODBExport,XPropertySet* >(&ODBExport::exportAutoStyle) ); - exportCollection(xCollection,XML_TABLES,XML_TOKEN_INVALID,_bExportContext,*pMemFunc); + exportCollection(xCollection,XML_TABLE_PRESENTATIONS,XML_TOKEN_INVALID,_bExportContext,*pMemFunc); } } } // ----------------------------------------------------------------------------- void ODBExport::exportAutoStyle(XPropertySet* _xProp) { - ::std::vector< XMLPropertyState > aPropertyStates = m_xExportHelper->Filter(_xProp); - + typedef ::std::pair<TPropertyStyleMap*,sal_uInt16> TEnumMapperPair; + typedef ::std::pair< UniReference < SvXMLExportPropertyMapper> , TEnumMapperPair> TExportPropMapperPair; Reference<XColumnsSupplier> xSup(_xProp,UNO_QUERY); if ( xSup.is() ) { + const TExportPropMapperPair pExportHelper[] = { + TExportPropMapperPair(m_xExportHelper,TEnumMapperPair(&m_aAutoStyleNames,XML_STYLE_FAMILY_TABLE_TABLE )) + ,TExportPropMapperPair(m_xCellExportHelper,TEnumMapperPair(&m_aCellAutoStyleNames,XML_STYLE_FAMILY_TABLE_CELL)) + ,TExportPropMapperPair(m_xRowExportHelper,TEnumMapperPair(&m_aRowAutoStyleNames,XML_STYLE_FAMILY_TABLE_ROW)) + }; + + ::std::vector< XMLPropertyState > aPropertyStates; + for (size_t i = 0 ; i < sizeof(pExportHelper)/sizeof(pExportHelper[0]); ++i) + { + aPropertyStates = pExportHelper[i].first->Filter(_xProp); if ( !aPropertyStates.empty() ) - m_aAutoStyleNames.insert( TPropertyStyleMap::value_type(_xProp,GetAutoStylePool()->Add( XML_STYLE_FAMILY_TABLE_TABLE, aPropertyStates ))); + pExportHelper[i].second.first->insert( TPropertyStyleMap::value_type(_xProp,GetAutoStylePool()->Add( pExportHelper[i].second.second, aPropertyStates ))); + } + Reference< XNameAccess > xCollection = xSup->getColumns(); try { @@ -934,17 +1080,23 @@ } else { // here I know I have a column - ::std::vector< XMLPropertyState > aPropStates = m_xColumnExportHelper->Filter( _xProp ); + TExportPropMapperPair pExportHelper[] = { + TExportPropMapperPair(m_xColumnExportHelper,TEnumMapperPair(&m_aAutoStyleNames,XML_STYLE_FAMILY_TABLE_COLUMN )) + ,TExportPropMapperPair(m_xCellExportHelper,TEnumMapperPair(&m_aCellAutoStyleNames,XML_STYLE_FAMILY_TABLE_CELL)) + }; + for (size_t i = 0 ; i < sizeof(pExportHelper)/sizeof(pExportHelper[0]); ++i) + { + ::std::vector< XMLPropertyState > aPropStates = pExportHelper[i].first->Filter( _xProp ); if ( !aPropStates.empty() ) { ::std::vector< XMLPropertyState >::iterator aItr = aPropStates.begin(); ::std::vector< XMLPropertyState >::iterator aEnd = aPropStates.end(); - UniReference < XMLPropertySetMapper > pColumnStyle = GetColumnStylesPropertySetMapper(); + const UniReference < XMLPropertySetMapper >& pStyle = pExportHelper[i].first->getPropertySetMapper(); while ( aItr != aEnd ) { if ( aItr->mnIndex != -1 ) { - switch ( pColumnStyle->GetEntryContextId(aItr->mnIndex) ) + switch ( pStyle->GetEntryContextId(aItr->mnIndex) ) { case CTF_DB_NUMBERFORMAT: { @@ -961,9 +1113,9 @@ } ++aItr; } - m_aAutoStyleNames.insert( TPropertyStyleMap::value_type(_xProp,GetAutoStylePool()->Add( XML_STYLE_FAMILY_TABLE_COLUMN, aPropStates ))); + pExportHelper[i].second.first->insert( TPropertyStyleMap::value_type(_xProp,GetAutoStylePool()->Add( pExportHelper[i].second.second, aPropStates ))); + } } - } } // ----------------------------------------------------------------------------- @@ -997,6 +1149,16 @@ ,GetMM100UnitConverter() ,GetNamespaceMap() ); + GetAutoStylePool()->exportXML(XML_STYLE_FAMILY_TABLE_CELL + ,GetDocHandler() + ,GetMM100UnitConverter() + ,GetNamespaceMap() + ); + GetAutoStylePool()->exportXML(XML_STYLE_FAMILY_TABLE_ROW + ,GetDocHandler() + ,GetMM100UnitConverter() + ,GetNamespaceMap() + ); exportDataStyles(); } } @@ -1057,9 +1219,15 @@ sal_Int32 nLength = aProps.getLength(); try { + Any aValue = xProp->getPropertyValue(PROPERTY_LAYOUTINFORMATION); + Sequence< PropertyValue > aPropValues; + aValue >>= aPropValues; + if ( aPropValues.getLength() ) + { aProps.realloc(nLength + 1); aProps[nLength].Name = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("layout-settings")); - aProps[nLength].Value = xProp->getPropertyValue(PROPERTY_LAYOUTINFORMATION); + aProps[nLength].Value = aValue; + } } catch(Exception) { @@ -1107,6 +1275,15 @@ m_xTableStylesPropertySetMapper = OXMLHelper::GetTableStylesPropertySetMapper(); } return m_xTableStylesPropertySetMapper; +} +// ----------------------------------------------------------------------------- +UniReference < XMLPropertySetMapper > ODBExport::GetCellStylesPropertySetMapper() const +{ + if ( !m_xCellStylesPropertySetMapper.is() ) + { + m_xCellStylesPropertySetMapper = OXMLHelper::GetCellStylesPropertySetMapper(); + } + return m_xCellStylesPropertySetMapper; } // ----------------------------------------------------------------------------- UniReference < XMLPropertySetMapper > ODBExport::GetColumnStylesPropertySetMapper() const File [changed]: xmlExport.hxx Url: http://dba.openoffice.org/source/browse/dba/dbaccess/source/filter/xml/xmlExport.hxx?r1=1.7&r2=1.7.86.1 Delta lines: +18 -3 -------------------- --- xmlExport.hxx 15 Aug 2006 10:48:21 -0000 1.7 +++ xmlExport.hxx 2 Feb 2007 12:09:14 -0000 1.7.86.1 @@ -4,9 +4,9 @@ * * $RCSfile: xmlExport.hxx,v $ * - * $Revision: 1.7 $ + * $Revision: 1.7.86.1 $ * - * last change: $Author: hr $ $Date: 2006/08/15 10:48:21 $ + * last change: $Author: oj $ $Date: 2007/02/02 12:09:14 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -122,6 +122,8 @@ class ODBExport : public SvXMLExport { + typedef ::std::map< ::xmloff::token::XMLTokenEnum, ::rtl::OUString> TSettingsMap; + typedef ::std::pair< ::rtl::OUString ,::rtl::OUString> TStringPair; struct TDelimiter { @@ -139,16 +141,27 @@ ::std::auto_ptr< TDelimiter > m_aDelimiter; ::std::vector< Any> m_aDataSourceSettings; TPropertyStyleMap m_aAutoStyleNames; + TPropertyStyleMap m_aCellAutoStyleNames; + TPropertyStyleMap m_aRowAutoStyleNames; ::rtl::OUString m_sCharSet; UniReference < SvXMLExportPropertyMapper> m_xExportHelper; UniReference < SvXMLExportPropertyMapper> m_xColumnExportHelper; + UniReference < SvXMLExportPropertyMapper> m_xCellExportHelper; + UniReference < SvXMLExportPropertyMapper> m_xRowExportHelper; mutable UniReference < XMLPropertySetMapper > m_xTableStylesPropertySetMapper; mutable UniReference < XMLPropertySetMapper > m_xColumnStylesPropertySetMapper; + mutable UniReference < XMLPropertySetMapper > m_xCellStylesPropertySetMapper; + mutable UniReference < XMLPropertySetMapper > m_xRowStylesPropertySetMapper; + Reference<XPropertySet> m_xDataSource; sal_Bool m_bAllreadyFilled; void exportDataSource(); + void exportConnectionData(); + void exportDriverSettings(const TSettingsMap& _aSettings); + void exportJavaClassPath(const TSettingsMap& _aSettings); + void exportApplicationConnectionSettings(const TSettingsMap& _aSettings); void exportLogin(); void exportSequence(const Sequence< ::rtl::OUString>& _aValue ,::xmloff::token::XMLTokenEnum _eTokenFilter @@ -162,6 +175,7 @@ void exportQueries(sal_Bool _bExportContext); void exportTables(sal_Bool _bExportContext); void exportStyleName(XPropertySet* _xProp,SvXMLAttributeList& _rAtt); + void exportStyleName(const ::xmloff::token::XMLTokenEnum _eToken,const Reference<XPropertySet>& _xProp,SvXMLAttributeList& _rAtt,TPropertyStyleMap& _rMap); void exportCollection(const Reference< XNameAccess >& _xCollection ,enum ::xmloff::token::XMLTokenEnum _eComponents ,enum ::xmloff::token::XMLTokenEnum _eSubComponents @@ -205,6 +219,7 @@ DECLARE_SERVICE_INFO_STATIC( ); UniReference < XMLPropertySetMapper > GetColumnStylesPropertySetMapper() const; + UniReference < XMLPropertySetMapper > GetCellStylesPropertySetMapper() const; // XExporter virtual void SAL_CALL setSourceDocument( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XComponent >& xDoc ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException); File [changed]: xmlHelper.cxx Url: http://dba.openoffice.org/source/browse/dba/dbaccess/source/filter/xml/xmlHelper.cxx?r1=1.8&r2=1.8.76.1 Delta lines: +89 -36 --------------------- --- xmlHelper.cxx 17 Sep 2006 06:47:15 -0000 1.8 +++ xmlHelper.cxx 2 Feb 2007 12:09:14 -0000 1.8.76.1 @@ -4,9 +4,9 @@ * * $RCSfile: xmlHelper.cxx,v $ * - * $Revision: 1.8 $ + * $Revision: 1.8.76.1 $ * - * last change: $Author: obo $ $Date: 2006/09/17 06:47:15 $ + * last change: $Author: oj $ $Date: 2007/02/02 12:09:14 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -120,35 +120,34 @@ { static const XMLPropertyMapEntry s_aTableStylesProperties[] = { - MAP_CONST( PROPERTY_FONTNAME, XML_NAMESPACE_STYLE, XML_FONT_NAME, XML_TYPE_STRING, 0 ), - MAP_CONST( PROPERTY_ROW_HEIGHT, XML_NAMESPACE_STYLE, XML_ROW_HEIGHT, XML_TYPE_PROP_TABLE_ROW|XML_TYPE_MEASURE, 0), - MAP_CONST( PROPERTY_TEXTCOLOR, XML_NAMESPACE_FO, XML_COLOR, XML_TYPE_COLOR, 0 ), - MAP_CONST( PROPERTY_TEXTLINECOLOR, XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_COLOR, XML_TYPE_TEXT_UNDERLINE_COLOR|MID_FLAG_MULTI_PROPERTY, 0 ), - - MAP_CONST( PROPERTY_TEXTRELIEF, XML_NAMESPACE_STYLE, XML_FONT_RELIEF, XML_TYPE_TEXT_FONT_RELIEF|MID_FLAG_MULTI_PROPERTY, 0 ), - MAP_CONST( PROPERTY_TEXTEMPHASIS, XML_NAMESPACE_STYLE, XML_TEXT_EMPHASIZE, XML_TYPE_CONTROL_TEXT_EMPHASIZE, 0 ), - MAP_CONST( PROPERTY_FONTCHARWIDTH, XML_NAMESPACE_STYLE, XML_FONT_CHAR_WIDTH, XML_TYPE_NUMBER16, 0 ), - MAP_CONST( PROPERTY_FONTCHARSET, XML_NAMESPACE_STYLE, XML_FONT_CHARSET, XML_TYPE_TEXT_FONTENCODING, 0 ), - MAP_CONST( PROPERTY_FONTFAMILY, XML_NAMESPACE_STYLE, XML_FONT_FAMILY_GENERIC, XML_TYPE_TEXT_FONTFAMILY, 0 ), - MAP_CONST( PROPERTY_FONTHEIGHT, XML_NAMESPACE_FO, XML_FONT_SIZE, XML_TYPE_MEASURE16, 0 ), - MAP_CONST( PROPERTY_FONTKERNING, XML_NAMESPACE_STYLE, XML_LETTER_KERNING, XML_TYPE_BOOL, 0 ), - - MAP_CONST( PROPERTY_FONTORIENTATION, XML_NAMESPACE_STYLE, XML_ROTATION_ANGLE, XML_TYPE_ROTATION_ANGLE, 0 ), - MAP_CONST( PROPERTY_FONTPITCH, XML_NAMESPACE_STYLE, XML_FONT_PITCH, XML_TYPE_TEXT_FONTPITCH, 0 ), - MAP_CONST( PROPERTY_FONTSLANT, XML_NAMESPACE_FO, XML_FONT_STYLE, XML_TYPE_TEXT_POSTURE, 0 ), - MAP_CONST_ASCII( "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_STYLE, XML_TYPE_TEXT_CROSSEDOUT_STYLE|MID_FLAG_MERGE_PROPERTY, 0), - MAP_CONST_ASCII( "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_TYPE, XML_TYPE_TEXT_CROSSEDOUT_TYPE|MID_FLAG_MERGE_PROPERTY, 0), - MAP_CONST_ASCII( "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_WIDTH, XML_TYPE_TEXT_CROSSEDOUT_WIDTH|MID_FLAG_MERGE_PROPERTY, 0), - MAP_CONST_ASCII( "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_TEXT, XML_TYPE_TEXT_CROSSEDOUT_TEXT|MID_FLAG_MERGE_PROPERTY, 0), - MAP_CONST( PROPERTY_FONTSTYLENAME, XML_NAMESPACE_STYLE, XML_FONT_STYLE_NAME, XML_TYPE_STRING, 0 ), - MAP_CONST_ASCII( "CharUnderline", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_STYLE, XML_TYPE_TEXT_UNDERLINE_STYLE|MID_FLAG_MERGE_PROPERTY, 0 ), - MAP_CONST_ASCII( "CharUnderline", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_TYPE, XML_TYPE_TEXT_UNDERLINE_TYPE|MID_FLAG_MERGE_PROPERTY, 0 ), - MAP_CONST_ASCII( "CharUnderline", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_WIDTH, XML_TYPE_TEXT_UNDERLINE_WIDTH|MID_FLAG_MERGE_PROPERTY, 0 ), - MAP_CONST_ASCII( "CharUnderlineColor", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_COLOR, XML_TYPE_TEXT_UNDERLINE_COLOR|MID_FLAG_MULTI_PROPERTY, 0 ), - MAP_CONST_ASCII( "CharUnderlineHasColor",XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_COLOR, XML_TYPE_TEXT_UNDERLINE_HASCOLOR|MID_FLAG_MERGE_ATTRIBUTE, 0 ), - MAP_CONST( PROPERTY_FONTWEIGHT, XML_NAMESPACE_FO, XML_FONT_WEIGHT, XML_TYPE_TEXT_WEIGHT, 0 ), - MAP_CONST( PROPERTY_FONTWIDTH, XML_NAMESPACE_STYLE, XML_FONT_WIDTH, XML_TYPE_FONT_WIDTH, 0 ), - MAP_CONST( PROPERTY_FONTWORDLINEMODE, XML_NAMESPACE_FO, XML_SCORE_SPACES, XML_TYPE_NBOOL, 0 ), + //MAP_CONST( PROPERTY_FONTNAME, XML_NAMESPACE_STYLE, XML_FONT_NAME, XML_TYPE_STRING, 0 ), + //MAP_CONST( PROPERTY_TEXTCOLOR, XML_NAMESPACE_FO, XML_COLOR, XML_TYPE_COLOR, 0 ), + //MAP_CONST( PROPERTY_TEXTLINECOLOR, XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_COLOR, XML_TYPE_TEXT_UNDERLINE_COLOR|MID_FLAG_MULTI_PROPERTY, 0 ), + + //MAP_CONST( PROPERTY_TEXTRELIEF, XML_NAMESPACE_STYLE, XML_FONT_RELIEF, XML_TYPE_TEXT_FONT_RELIEF|MID_FLAG_MULTI_PROPERTY, 0 ), + //MAP_CONST( PROPERTY_TEXTEMPHASIS, XML_NAMESPACE_STYLE, XML_TEXT_EMPHASIZE, XML_TYPE_CONTROL_TEXT_EMPHASIZE, 0 ), + //MAP_CONST( PROPERTY_FONTCHARWIDTH, XML_NAMESPACE_STYLE, XML_FONT_CHAR_WIDTH, XML_TYPE_NUMBER16, 0 ), + //MAP_CONST( PROPERTY_FONTCHARSET, XML_NAMESPACE_STYLE, XML_FONT_CHARSET, XML_TYPE_TEXT_FONTENCODING, 0 ), + //MAP_CONST( PROPERTY_FONTFAMILY, XML_NAMESPACE_STYLE, XML_FONT_FAMILY_GENERIC, XML_TYPE_TEXT_FONTFAMILY, 0 ), + //MAP_CONST( PROPERTY_FONTHEIGHT, XML_NAMESPACE_FO, XML_FONT_SIZE, XML_TYPE_MEASURE16, 0 ), + //MAP_CONST( PROPERTY_FONTKERNING, XML_NAMESPACE_STYLE, XML_LETTER_KERNING, XML_TYPE_BOOL, 0 ), + // + //MAP_CONST( PROPERTY_FONTORIENTATION, XML_NAMESPACE_STYLE, XML_ROTATION_ANGLE, XML_TYPE_ROTATION_ANGLE, 0 ), + //MAP_CONST( PROPERTY_FONTPITCH, XML_NAMESPACE_STYLE, XML_FONT_PITCH, XML_TYPE_TEXT_FONTPITCH, 0 ), + //MAP_CONST( PROPERTY_FONTSLANT, XML_NAMESPACE_FO, XML_FONT_STYLE, XML_TYPE_TEXT_POSTURE, 0 ), + //MAP_CONST_ASCII( "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_STYLE, XML_TYPE_TEXT_CROSSEDOUT_STYLE|MID_FLAG_MERGE_PROPERTY, 0), + //MAP_CONST_ASCII( "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_TYPE, XML_TYPE_TEXT_CROSSEDOUT_TYPE|MID_FLAG_MERGE_PROPERTY, 0), + //MAP_CONST_ASCII( "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_WIDTH, XML_TYPE_TEXT_CROSSEDOUT_WIDTH|MID_FLAG_MERGE_PROPERTY, 0), + //MAP_CONST_ASCII( "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_TEXT, XML_TYPE_TEXT_CROSSEDOUT_TEXT|MID_FLAG_MERGE_PROPERTY, 0), + //MAP_CONST( PROPERTY_FONTSTYLENAME, XML_NAMESPACE_STYLE, XML_FONT_STYLE_NAME, XML_TYPE_STRING, 0 ), + //MAP_CONST_ASCII( "CharUnderline", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_STYLE, XML_TYPE_TEXT_UNDERLINE_STYLE|MID_FLAG_MERGE_PROPERTY, 0 ), + //MAP_CONST_ASCII( "CharUnderline", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_TYPE, XML_TYPE_TEXT_UNDERLINE_TYPE|MID_FLAG_MERGE_PROPERTY, 0 ), + //MAP_CONST_ASCII( "CharUnderline", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_WIDTH, XML_TYPE_TEXT_UNDERLINE_WIDTH|MID_FLAG_MERGE_PROPERTY, 0 ), + //MAP_CONST_ASCII( "CharUnderlineColor", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_COLOR, XML_TYPE_TEXT_UNDERLINE_COLOR|MID_FLAG_MULTI_PROPERTY, 0 ), + //MAP_CONST_ASCII( "CharUnderlineHasColor",XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_COLOR, XML_TYPE_TEXT_UNDERLINE_HASCOLOR|MID_FLAG_MERGE_ATTRIBUTE, 0 ), + //MAP_CONST( PROPERTY_FONTWEIGHT, XML_NAMESPACE_FO, XML_FONT_WEIGHT, XML_TYPE_TEXT_WEIGHT, 0 ), + //MAP_CONST( PROPERTY_FONTWIDTH, XML_NAMESPACE_STYLE, XML_FONT_WIDTH, XML_TYPE_FONT_WIDTH, 0 ), + //MAP_CONST( PROPERTY_FONTWORDLINEMODE, XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_MODE, XML_TYPE_TEXT_LINE_MODE, 0 ), MAP_END() }; UniReference < XMLPropertyHandlerFactory> xFac = new ::xmloff::OControlPropertyHandlerFactory(); @@ -157,16 +156,70 @@ // ----------------------------------------------------------------------------- UniReference < XMLPropertySetMapper > OXMLHelper::GetColumnStylesPropertySetMapper() { +#define MAP_CONST_COLUMN( name, prefix, token, type, context ) { name.ascii, name.length, prefix, token, type|XML_TYPE_PROP_TABLE_COLUMN, context } static const XMLPropertyMapEntry s_aColumnStylesProperties[] = { - MAP_CONST( PROPERTY_WIDTH, XML_NAMESPACE_STYLE, XML_COLUMN_WIDTH, XML_TYPE_PROP_TABLE_COLUMN|XML_TYPE_MEASURE, 0), - MAP_CONST( PROPERTY_HIDDEN, XML_NAMESPACE_TABLE, XML_DISPLAY, XML_TYPE_PROP_TABLE_COLUMN|XML_DB_TYPE_EQUAL|MID_FLAG_SPECIAL_ITEM, CTF_DB_ISVISIBLE ), - MAP_CONST( PROPERTY_ALIGN, XML_NAMESPACE_FO, XML_TEXT_ALIGN, XML_TYPE_PROP_TABLE_COLUMN|XML_TYPE_TEXT_ALIGN, CTF_DB_COLUMN_TEXT_ALIGN ), - MAP_CONST( PROPERTY_NUMBERFORMAT, XML_NAMESPACE_STYLE, XML_DATA_STYLE_NAME, XML_TYPE_PROP_TABLE_COLUMN|XML_TYPE_NUMBER|MID_FLAG_SPECIAL_ITEM, CTF_DB_NUMBERFORMAT), + MAP_CONST_COLUMN( PROPERTY_WIDTH, XML_NAMESPACE_STYLE, XML_COLUMN_WIDTH, XML_TYPE_MEASURE, 0), + MAP_CONST_COLUMN( PROPERTY_HIDDEN, XML_NAMESPACE_TABLE, XML_DISPLAY, XML_DB_TYPE_EQUAL|MID_FLAG_SPECIAL_ITEM, CTF_DB_ISVISIBLE ), + MAP_CONST_COLUMN( PROPERTY_NUMBERFORMAT, XML_NAMESPACE_STYLE, XML_DATA_STYLE_NAME, XML_TYPE_NUMBER|MID_FLAG_SPECIAL_ITEM, CTF_DB_NUMBERFORMAT), MAP_END() }; UniReference < XMLPropertyHandlerFactory> xFac = new OPropertyHandlerFactory(); return new XMLPropertySetMapper((XMLPropertyMapEntry*)s_aColumnStylesProperties, xFac); +} +// ----------------------------------------------------------------------------- +UniReference < XMLPropertySetMapper > OXMLHelper::GetCellStylesPropertySetMapper() +{ +#define MAP_CONST_CELL( name, prefix, token, type, context ) { name.ascii, name.length, prefix, token, type|XML_TYPE_PROP_PARAGRAPH, context } +#define MAP_CONST_TEXT( name, prefix, token, type, context ) { name.ascii, name.length, prefix, token, type|XML_TYPE_PROP_TEXT, context } +#define MAP_CONST_TEXT_ASCII( name, prefix, token, type, context ) { name, sizeof(name)-1, prefix, token, type|XML_TYPE_PROP_TEXT, context } + static const XMLPropertyMapEntry s_aCellStylesProperties[] = + { + MAP_CONST_CELL( PROPERTY_ALIGN, XML_NAMESPACE_FO, XML_TEXT_ALIGN, XML_TYPE_TEXT_ALIGN, CTF_DB_COLUMN_TEXT_ALIGN), + MAP_CONST_TEXT( PROPERTY_FONTNAME, XML_NAMESPACE_STYLE, XML_FONT_NAME, XML_TYPE_STRING, 0 ), + MAP_CONST_TEXT( PROPERTY_TEXTCOLOR, XML_NAMESPACE_FO, XML_COLOR, XML_TYPE_COLOR, 0 ), + MAP_CONST_TEXT( PROPERTY_TEXTLINECOLOR, XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_COLOR, XML_TYPE_TEXT_UNDERLINE_COLOR|MID_FLAG_MULTI_PROPERTY, 0 ), + + MAP_CONST_TEXT( PROPERTY_TEXTRELIEF, XML_NAMESPACE_STYLE, XML_FONT_RELIEF, XML_TYPE_TEXT_FONT_RELIEF|MID_FLAG_MULTI_PROPERTY, 0 ), + MAP_CONST_TEXT( PROPERTY_TEXTEMPHASIS, XML_NAMESPACE_STYLE, XML_TEXT_EMPHASIZE, XML_TYPE_CONTROL_TEXT_EMPHASIZE, 0 ), + MAP_CONST_TEXT( PROPERTY_FONTCHARWIDTH, XML_NAMESPACE_STYLE, XML_FONT_CHAR_WIDTH, XML_TYPE_NUMBER16, 0 ), + MAP_CONST_TEXT( PROPERTY_FONTCHARSET, XML_NAMESPACE_STYLE, XML_FONT_CHARSET, XML_TYPE_TEXT_FONTENCODING, 0 ), + MAP_CONST_TEXT( PROPERTY_FONTFAMILY, XML_NAMESPACE_STYLE, XML_FONT_FAMILY_GENERIC, XML_TYPE_TEXT_FONTFAMILY, 0 ), + MAP_CONST_TEXT( PROPERTY_FONTHEIGHT, XML_NAMESPACE_FO, XML_FONT_SIZE, XML_TYPE_MEASURE16, 0 ), + MAP_CONST_TEXT( PROPERTY_FONTKERNING, XML_NAMESPACE_STYLE, XML_LETTER_KERNING, XML_TYPE_BOOL, 0 ), + + MAP_CONST_TEXT( PROPERTY_FONTORIENTATION, XML_NAMESPACE_STYLE, XML_ROTATION_ANGLE, XML_TYPE_ROTATION_ANGLE, 0 ), + MAP_CONST_TEXT( PROPERTY_FONTPITCH, XML_NAMESPACE_STYLE, XML_FONT_PITCH, XML_TYPE_TEXT_FONTPITCH, 0 ), + MAP_CONST_TEXT( PROPERTY_FONTSLANT, XML_NAMESPACE_FO, XML_FONT_STYLE, XML_TYPE_TEXT_POSTURE, 0 ), + MAP_CONST_TEXT_ASCII( "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_STYLE, XML_TYPE_TEXT_CROSSEDOUT_STYLE|MID_FLAG_MERGE_PROPERTY, 0), + MAP_CONST_TEXT_ASCII( "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_TYPE, XML_TYPE_TEXT_CROSSEDOUT_TYPE|MID_FLAG_MERGE_PROPERTY, 0), + MAP_CONST_TEXT_ASCII( "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_WIDTH, XML_TYPE_TEXT_CROSSEDOUT_WIDTH|MID_FLAG_MERGE_PROPERTY, 0), + MAP_CONST_TEXT_ASCII( "CharStrikeout", XML_NAMESPACE_STYLE, XML_TEXT_LINE_THROUGH_TEXT, XML_TYPE_TEXT_CROSSEDOUT_TEXT|MID_FLAG_MERGE_PROPERTY, 0), + MAP_CONST_TEXT( PROPERTY_FONTSTYLENAME, XML_NAMESPACE_STYLE, XML_FONT_STYLE_NAME, XML_TYPE_STRING, 0 ), + MAP_CONST_TEXT_ASCII( "CharUnderline", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_STYLE, XML_TYPE_TEXT_UNDERLINE_STYLE|MID_FLAG_MERGE_PROPERTY, 0 ), + MAP_CONST_TEXT_ASCII( "CharUnderline", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_TYPE, XML_TYPE_TEXT_UNDERLINE_TYPE|MID_FLAG_MERGE_PROPERTY, 0 ), + MAP_CONST_TEXT_ASCII( "CharUnderline", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_WIDTH, XML_TYPE_TEXT_UNDERLINE_WIDTH|MID_FLAG_MERGE_PROPERTY, 0 ), + MAP_CONST_TEXT_ASCII( "CharUnderlineColor", XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_COLOR, XML_TYPE_TEXT_UNDERLINE_COLOR|MID_FLAG_MULTI_PROPERTY, 0 ), + MAP_CONST_TEXT_ASCII( "CharUnderlineHasColor",XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_COLOR, XML_TYPE_TEXT_UNDERLINE_HASCOLOR|MID_FLAG_MERGE_ATTRIBUTE, 0 ), + MAP_CONST_TEXT( PROPERTY_FONTWEIGHT, XML_NAMESPACE_FO, XML_FONT_WEIGHT, XML_TYPE_TEXT_WEIGHT, 0 ), + MAP_CONST_TEXT( PROPERTY_FONTWIDTH, XML_NAMESPACE_STYLE, XML_FONT_WIDTH, XML_TYPE_FONT_WIDTH, 0 ), + MAP_CONST_TEXT( PROPERTY_FONTWORDLINEMODE, XML_NAMESPACE_STYLE, XML_TEXT_UNDERLINE_MODE, XML_TYPE_TEXT_LINE_MODE|MID_FLAG_MERGE_PROPERTY, 0 ), + MAP_END() + }; + UniReference < XMLPropertyHandlerFactory> xFac = new /*OPropertyHandlerFactory*/::xmloff::OControlPropertyHandlerFactory(); + return new XMLPropertySetMapper((XMLPropertyMapEntry*)s_aCellStylesProperties, xFac); +} +// ----------------------------------------------------------------------------- +UniReference < XMLPropertySetMapper > OXMLHelper::GetRowStylesPropertySetMapper() +{ +#define MAP_CONST_ROW( name, prefix, token, type, context ) { name.ascii, name.length, prefix, token, type|XML_TYPE_PROP_TABLE_ROW, context } + static const XMLPropertyMapEntry s_aStylesProperties[] = + { + MAP_CONST_ROW( PROPERTY_ROW_HEIGHT, XML_NAMESPACE_STYLE, XML_ROW_HEIGHT, XML_TYPE_MEASURE, 0), + MAP_END() + }; + UniReference < XMLPropertyHandlerFactory> xFac = new OPropertyHandlerFactory(); + return new XMLPropertySetMapper((XMLPropertyMapEntry*)s_aStylesProperties, xFac); } // ----------------------------------------------------------------------------- } File [changed]: xmlHelper.hxx Url: http://dba.openoffice.org/source/browse/dba/dbaccess/source/filter/xml/xmlHelper.hxx?r1=1.4&r2=1.4.258.1 Delta lines: +5 -3 ------------------- --- xmlHelper.hxx 8 Sep 2005 14:07:01 -0000 1.4 +++ xmlHelper.hxx 2 Feb 2007 12:09:14 -0000 1.4.258.1 @@ -4,9 +4,9 @@ * * $RCSfile: xmlHelper.hxx,v $ * - * $Revision: 1.4 $ + * $Revision: 1.4.258.1 $ * - * last change: $Author: rt $ $Date: 2005/09/08 14:07:01 $ + * last change: $Author: oj $ $Date: 2007/02/02 12:09:14 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -74,6 +74,8 @@ public: static UniReference < XMLPropertySetMapper > GetTableStylesPropertySetMapper(); static UniReference < XMLPropertySetMapper > GetColumnStylesPropertySetMapper(); + static UniReference < XMLPropertySetMapper > GetCellStylesPropertySetMapper(); + static UniReference < XMLPropertySetMapper > GetRowStylesPropertySetMapper(); }; // ----------------------------------------------------------------------------- } // dbaxml --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
