summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swiften/Client')
-rw-r--r--Swiften/Client/XMLBeautifier.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/Swiften/Client/XMLBeautifier.h b/Swiften/Client/XMLBeautifier.h
index 44dfd20..25ecd18 100644
--- a/Swiften/Client/XMLBeautifier.h
+++ b/Swiften/Client/XMLBeautifier.h
@@ -1,43 +1,50 @@
/*
* Copyright (c) 2011 Tobias Markmann
* Licensed under the simplified BSD license.
* See Documentation/Licenses/BSD-simplified.txt for more information.
*/
+/*
+* Copyright (c) 2014 Remko Tronçon and Kevin Smith
+* Licensed under the GNU General Public License v3.
+* See Documentation/Licenses/GPLv3.txt for more information.
+*/
+
#pragma once
+#include <sstream>
#include <string>
#include <stack>
#include <Swiften/Base/boost_bsignals.h>
#include <Swiften/Parser/XMLParserFactory.h>
#include <Swiften/Parser/XMLParserClient.h>
#include <Swiften/Parser/XMLParser.h>
namespace Swift {
class XMLBeautifier : public XMLParserClient {
public:
XMLBeautifier(bool indention, bool coloring);
virtual ~XMLBeautifier();
std::string beautify(const std::string&);
private:
void handleStartElement(const std::string& element, const std::string& ns, const AttributeMap& attributes);
void handleEndElement(const std::string& element, const std::string& ns);
void handleCharacterData(const std::string& data);
private:
void indent();
private:
std::string styleTag(const std::string& text) const;
std::string styleNamespace(const std::string& text) const;
std::string styleAttribute(const std::string& text) const;
std::string styleValue(const std::string& text) const;
private:
bool doIndention;
bool doColoring;