summaryrefslogtreecommitdiffstats
path: root/dom/xslt/xslt/txOutputFormat.h
diff options
context:
space:
mode:
Diffstat (limited to 'dom/xslt/xslt/txOutputFormat.h')
-rw-r--r--dom/xslt/xslt/txOutputFormat.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/dom/xslt/xslt/txOutputFormat.h b/dom/xslt/xslt/txOutputFormat.h
new file mode 100644
index 0000000000..f511381d44
--- /dev/null
+++ b/dom/xslt/xslt/txOutputFormat.h
@@ -0,0 +1,64 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+#ifndef TRANSFRMX_OUTPUTFORMAT_H
+#define TRANSFRMX_OUTPUTFORMAT_H
+
+#include "txList.h"
+#include "nsString.h"
+
+enum txOutputMethod { eMethodNotSet, eXMLOutput, eHTMLOutput, eTextOutput };
+
+enum txThreeState { eNotSet, eFalse, eTrue };
+
+class txOutputFormat {
+ public:
+ txOutputFormat();
+ ~txOutputFormat();
+
+ // "Unset" all values
+ void reset();
+
+ // Merges in the values of aOutputFormat, members that already
+ // have a value in this txOutputFormat will not be changed.
+ void merge(txOutputFormat& aOutputFormat);
+
+ // Sets members that have no value to their default value.
+ void setFromDefaults();
+
+ // The XSLT output method, which can be "xml", "html", or "text"
+ txOutputMethod mMethod;
+
+ // The xml version number that should be used when serializing
+ // xml documents
+ nsString mVersion;
+
+ // The XML character encoding that should be used when serializing
+ // xml documents
+ nsString mEncoding;
+
+ // Signals if we should output an XML declaration
+ txThreeState mOmitXMLDeclaration;
+
+ // Signals if we should output a standalone document declaration
+ txThreeState mStandalone;
+
+ // The public Id for creating a DOCTYPE
+ nsString mPublicId;
+
+ // The System Id for creating a DOCTYPE
+ nsString mSystemId;
+
+ // The elements whose text node children should be output as CDATA
+ txList mCDATASectionElements;
+
+ // Signals if output should be indented
+ txThreeState mIndent;
+
+ // The media type of the output
+ nsCString mMediaType;
+};
+
+#endif