diff options
author | Miklos Vajna <vmiklos@frugalware.org> | 2011-12-22 01:46:33 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@frugalware.org> | 2011-12-22 01:47:34 +0100 |
commit | acfdec468d54d44f94ca6752bbbfbdab07ef9a0c (patch) | |
tree | 46eb636fcc94a346d159881fb5c84df8c366367e /writerfilter | |
parent | Revert "Fix gmake detection for MacOSX" (diff) | |
download | core-acfdec468d54d44f94ca6752bbbfbdab07ef9a0c.tar.gz core-acfdec468d54d44f94ca6752bbbfbdab07ef9a0c.zip |
writerfilter: fix dbglevel=2 build
This basically reverts e8f980d10cf95b8bced1ca18a55b2a4784f6dcc9 and
b0e993d42e1df8c68c4c2684ab9dda27a1329594, while keeping callcatcher
happy.
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/inc/resourcemodel/TagLogger.hxx | 11 | ||||
-rw-r--r-- | writerfilter/source/resourcemodel/TagLogger.cxx | 69 |
2 files changed, 80 insertions, 0 deletions
diff --git a/writerfilter/inc/resourcemodel/TagLogger.hxx b/writerfilter/inc/resourcemodel/TagLogger.hxx index 44dc9015791e..f5ca4ebecf32 100644 --- a/writerfilter/inc/resourcemodel/TagLogger.hxx +++ b/writerfilter/inc/resourcemodel/TagLogger.hxx @@ -73,7 +73,18 @@ namespace writerfilter void element(const std::string & name); void unoPropertySet(uno::Reference<beans::XPropertySet> rPropSet); #endif +#if OSL_DEBUG_LEVEL > 1 + void startElement(const std::string & name); +#endif void attribute(const std::string & name, const std::string & value); +#if OSL_DEBUG_LEVEL > 1 + void attribute(const std::string & name, const ::rtl::OUString & value); + void attribute(const std::string & name, sal_uInt32 value); + void attribute(const std::string & name, const uno::Any aAny); + void chars(const std::string & chars); + void chars(const ::rtl::OUString & chars); + void endElement(); +#endif #ifdef DEBUG_CONTEXT_HANDLER void propertySet(writerfilter::Reference<Properties>::Pointer_t props, diff --git a/writerfilter/source/resourcemodel/TagLogger.cxx b/writerfilter/source/resourcemodel/TagLogger.cxx index dcdd461ea5ad..7ee16fe22367 100644 --- a/writerfilter/source/resourcemodel/TagLogger.cxx +++ b/writerfilter/source/resourcemodel/TagLogger.cxx @@ -156,6 +156,15 @@ namespace writerfilter #endif +#if OSL_DEBUG_LEVEL > 1 + void TagLogger::startElement(const string & name) + { + xmlChar* xmlName = xmlCharStrdup( name.c_str() ); + xmlTextWriterStartElement( pWriter, xmlName ); + xmlFree( xmlName ); + } +#endif + void TagLogger::attribute(const string & name, const string & value) { xmlChar* xmlName = xmlCharStrdup( name.c_str() ); @@ -166,6 +175,66 @@ namespace writerfilter xmlFree( xmlName ); } +#if OSL_DEBUG_LEVEL > 1 + void TagLogger::attribute(const string & name, const ::rtl::OUString & value) + { + attribute( name, OUStringToOString( value, RTL_TEXTENCODING_ASCII_US ).getStr() ); + } + + void TagLogger::attribute(const string & name, sal_uInt32 value) + { + xmlChar* xmlName = xmlCharStrdup( name.c_str() ); + xmlTextWriterWriteFormatAttribute( pWriter, xmlName, + "%" SAL_PRIuUINT32, value ); + xmlFree( xmlName ); + } + + void TagLogger::attribute(const string & name, const uno::Any aAny) + { + string aTmpStrInt; + string aTmpStrFloat; + string aTmpStrString; + + sal_Int32 nInt = 0; + float nFloat = 0.0; + ::rtl::OUString aStr; + + xmlChar* xmlName = xmlCharStrdup( name.c_str() ); + if ( aAny >>= nInt ) + { + xmlTextWriterWriteFormatAttribute( pWriter, xmlName, + "%" SAL_PRIdINT32, nInt ); + } + else if ( aAny >>= nFloat ) + { + xmlTextWriterWriteFormatAttribute( pWriter, xmlName, + "%f", nFloat ); + } + else if ( aAny >>= aStr ) + { + attribute( name, aStr ); + } + xmlFree( xmlName ); + } + + void TagLogger::chars(const string & rChars) + { + xmlChar* xmlChars = xmlCharStrdup( rChars.c_str() ); + xmlTextWriterWriteString( pWriter, xmlChars ); + xmlFree( xmlChars ); + } + + void TagLogger::chars(const ::rtl::OUString & rChars) + { + chars(OUStringToOString(rChars, RTL_TEXTENCODING_ASCII_US).getStr()); + } + + void TagLogger::endElement() + { + xmlTextWriterEndElement( pWriter ); + } +#endif + #ifdef DEBUG_CONTEXT_HANDLER class PropertySetDumpHandler : public Properties { |