summaryrefslogtreecommitdiff
path: root/autodoc/inc/ary/doc
diff options
context:
space:
mode:
Diffstat (limited to 'autodoc/inc/ary/doc')
-rw-r--r--autodoc/inc/ary/doc/d_boolean.hxx99
-rw-r--r--autodoc/inc/ary/doc/d_docu.hxx109
-rw-r--r--autodoc/inc/ary/doc/d_node.hxx112
-rw-r--r--autodoc/inc/ary/doc/d_oldcppdocu.hxx133
-rw-r--r--autodoc/inc/ary/doc/d_oldidldocu.hxx114
-rw-r--r--autodoc/inc/ary/doc/d_parametrized.hxx124
-rw-r--r--autodoc/inc/ary/doc/d_types4doc.hxx73
-rw-r--r--autodoc/inc/ary/doc/ht/dht_interpreter.hxx79
8 files changed, 843 insertions, 0 deletions
diff --git a/autodoc/inc/ary/doc/d_boolean.hxx b/autodoc/inc/ary/doc/d_boolean.hxx
new file mode 100644
index 000000000000..1bf7bc3e307e
--- /dev/null
+++ b/autodoc/inc/ary/doc/d_boolean.hxx
@@ -0,0 +1,99 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ARY_DOC_D_BOOLEAN_HXX
+#define ARY_DOC_D_BOOLEAN_HXX
+
+// BASE CLASSES
+#include <ary/doc/d_node.hxx>
+
+// USED SERVICES
+
+
+
+
+namespace ary
+{
+namespace doc
+{
+
+
+/** Repesents a boolean documentation item like "optional" or "not optional".
+*/
+class Boolean : public Node
+{
+ public:
+ // LIFECYCLE
+ explicit Boolean(
+ nodetype::id i_type );
+ virtual ~Boolean();
+
+ // OPERATIONS
+ void Set(
+ bool i_b );
+ // INQUIRY
+ bool IsTrue() const;
+
+ private:
+ // Interface csv::ConstProcessorClient:
+ virtual void do_Accept(
+ csv::ProcessorIfc & io_processor ) const;
+ // DATA
+ bool b;
+};
+
+
+
+
+// IMPLEMENTATION
+inline
+Boolean::Boolean(nodetype::id i_type)
+ : Node(i_type),
+ b(false)
+{
+}
+
+inline bool
+Boolean::IsTrue() const
+{
+ return b;
+}
+
+inline void
+Boolean::Set( bool i_b )
+{
+ b = i_b;
+}
+
+
+
+} // namespace doc
+} // namespace ary
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/autodoc/inc/ary/doc/d_docu.hxx b/autodoc/inc/ary/doc/d_docu.hxx
new file mode 100644
index 000000000000..8469d9646220
--- /dev/null
+++ b/autodoc/inc/ary/doc/d_docu.hxx
@@ -0,0 +1,109 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ARY_DOC_D_DOCU_HXX
+#define ARY_DOC_D_DOCU_HXX
+
+// BASE CLASSES
+#include <cosv/tpl/processor.hxx>
+
+// USED SERVICES
+#include <ary/doc/d_node.hxx>
+
+
+
+
+namespace ary
+{
+namespace doc
+{
+
+
+/** Represents a documentation which is assigned to an Autodoc
+ repository entity.
+*/
+class Documentation : public csv::ConstProcessorClient
+{
+ public:
+ Documentation();
+ ~Documentation();
+ // OPERATIONS
+ void Clear();
+
+ // INQUIRY
+ const Node * Data() const;
+
+ // ACCESS
+ Node * Data();
+ void Set_Data(
+ ary::doc::Node & i_data );
+
+ private:
+ // Interface csv::ConstProcessorClient:
+ virtual void do_Accept(
+ csv::ProcessorIfc & io_processor ) const;
+ // DATA
+ Dyn<Node> pData;
+};
+
+
+
+
+// IMPLEMENTATION
+inline void
+Documentation::Clear()
+{
+ pData = 0;
+}
+
+inline const Node *
+Documentation::Data() const
+{
+ return pData.Ptr();
+}
+
+inline Node *
+Documentation::Data()
+{
+ return pData.Ptr();
+}
+
+inline void
+Documentation::Set_Data(ary::doc::Node & i_data)
+{
+ pData = &i_data;
+}
+
+
+
+
+} // namespace doc
+} // namespace ary
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/autodoc/inc/ary/doc/d_node.hxx b/autodoc/inc/ary/doc/d_node.hxx
new file mode 100644
index 000000000000..8dd96b8f657b
--- /dev/null
+++ b/autodoc/inc/ary/doc/d_node.hxx
@@ -0,0 +1,112 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ARY_DOC_D_NODE_HXX
+#define ARY_DOC_D_NODE_HXX
+
+// BASE CLASSES
+#include <cosv/tpl/processor.hxx>
+// USED SERVICES
+#include <cosv/tpl/vvector.hxx>
+#include <ary/doc/d_types4doc.hxx>
+
+
+
+
+namespace ary
+{
+namespace doc
+{
+
+
+/** The abstract base class for any type of documentation content.
+
+ A ->Documentation has as content a hierarchy of Nodes, each can be a
+ different kind of content, like descriptions of single items or structs
+ or lists of Nodes.
+*/
+class Node : public csv::ConstProcessorClient
+{
+ public:
+ // LIFECYCLE
+ virtual ~Node();
+
+ // OPERATIONS
+ void Add_toChain(
+ DYN Node & pass_nextNode );
+ // INQUIRY
+ nodetype::id Type() const;
+ const Node * Next() const;
+ bool IsSingle() const;
+ uintt ListSize() const;
+
+ protected:
+ explicit Node(
+ nodetype::id i_type);
+ private:
+ // Forbid copies:
+ Node(const Node&);
+ Node & operator=(const Node&);
+
+ // DATA
+ nodetype::id nType;
+ Dyn<Node> pNext; /// Next ->Node in same list.
+};
+
+typedef csv::VirtualVector<Node> NodeList;
+
+
+
+
+// IMPLEMENTATION
+inline nodetype::id
+Node::Type() const
+{
+ return nType;
+}
+
+inline const Node *
+Node::Next() const
+{
+ return pNext.Ptr();
+}
+
+inline bool
+Node::IsSingle() const
+{
+ return pNext.operator bool();
+}
+
+
+
+
+} // namespace doc
+} // namespace ary
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/autodoc/inc/ary/doc/d_oldcppdocu.hxx b/autodoc/inc/ary/doc/d_oldcppdocu.hxx
new file mode 100644
index 000000000000..0429ab312d66
--- /dev/null
+++ b/autodoc/inc/ary/doc/d_oldcppdocu.hxx
@@ -0,0 +1,133 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ARY_DOC_D_OLDCPPDOCU_HXX
+#define ARY_DOC_D_OLDCPPDOCU_HXX
+// KORR_DEPRECATED_3.0
+
+// BASE CLASSES
+#include <ary/doc/d_node.hxx>
+// USED SERVICES
+#include <ary/info/inftypes.hxx>
+#include <ary/ary_disp.hxx>
+
+namespace ary
+{
+namespace info
+{
+ class AtTag;
+ class DocuStore;
+}
+}
+
+
+
+
+namespace ary
+{
+namespace doc
+{
+ using ::ary::info::AtTag;
+ using ::ary::info::E_AtTagId;
+
+
+/** Wrapper class for old C++ documentation format.
+
+ To be replaced by using the standard format.
+*/
+class OldCppDocu : public Node
+{
+ public:
+ typedef std::vector< DYN AtTag * > TagList;
+
+ // LIFECYCLE
+ OldCppDocu();
+ virtual ~OldCppDocu();
+
+ void Store2(
+ info::DocuStore & o_rDocuStore );
+
+ virtual AtTag * Create_StdTag(
+ E_AtTagId i_eId );
+ virtual AtTag * CheckIn_BaseTag();
+ virtual AtTag * CheckIn_ExceptionTag();
+ virtual AtTag * Create_ImplementsTag();
+ virtual AtTag * Create_KeywordTag();
+ virtual AtTag * CheckIn_ParameterTag();
+ virtual AtTag * CheckIn_SeeTag();
+ virtual AtTag * CheckIn_TemplateTag();
+ virtual AtTag * Create_LabelTag();
+ virtual AtTag * Create_DefaultTag();
+ virtual AtTag * Create_SinceTag(); /// @return always the first one created.
+
+ virtual void Replace_AtShort_By_AtDescr();
+
+ virtual void Set_Obsolete();
+ virtual void Set_Internal();
+ virtual void Set_Interface() { bIsInterface = true; }
+
+ // INQUIRY
+ const TagList & Tags() const { return aTags; }
+ const AtTag & Short() const;
+ bool IsObsolete() const { return bIsObsolete; }
+ virtual bool IsInternal() const;
+ virtual bool IsInterface() const;
+
+ private:
+ // Interface csv::ConstProcessorClient:
+ virtual void do_Accept(
+ csv::ProcessorIfc & io_processor ) const;
+ // DATA
+ unsigned char nTags[ary::info::C_eAtTag_NrOfClasses];
+
+ /** Creates a new AtTag at the end of aTags.
+ The index of this new AtTag is inserted in nTags at position
+ i_nIndex.
+ */
+ AtTag * & NewTag(
+ UINT8 i_nIndex );
+ /** Returns the Tag with the position nTags[i_nIndex]
+ in aTags.
+ */
+ AtTag & GetTag(
+ UINT8 i_nIndex );
+
+ TagList aTags;
+ bool bIsObsolete;
+ bool bIsInternal;
+ bool bIsInterface;
+};
+
+
+
+
+} // namespace doc
+} // namespace ary
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/autodoc/inc/ary/doc/d_oldidldocu.hxx b/autodoc/inc/ary/doc/d_oldidldocu.hxx
new file mode 100644
index 000000000000..542711784973
--- /dev/null
+++ b/autodoc/inc/ary/doc/d_oldidldocu.hxx
@@ -0,0 +1,114 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ARY_DOC_D_OLDIDLDOCU_HXX
+#define ARY_DOC_D_OLDIDLDOCU_HXX
+
+// BASE CLASSES
+#include <ary/doc/d_node.hxx>
+// USED SERVICES
+#include <ary_i/ci_text2.hxx>
+
+
+
+
+namespace ary
+{
+namespace inf
+{
+ class AtTag2;
+ class DocuToken;
+ class DocuTex2;
+}
+namespace doc
+{
+ using ::ary::inf::AtTag2;
+ using ::ary::inf::DocuToken;
+ using ::ary::inf::DocuTex2;
+
+
+
+/** Wrapper for the old idl documentation format.
+*/
+class OldIdlDocu : public Node
+{
+ public:
+ OldIdlDocu();
+ ~OldIdlDocu();
+
+ void AddToken2Short(
+ DYN DocuToken & let_drToken )
+ { aShort.AddToken(let_drToken); }
+ void AddToken2Description(
+ DYN DocuToken & let_drToken )
+ { aDescription.AddToken(let_drToken); }
+ void AddToken2DeprecatedText(
+ DYN DocuToken & let_drToken );
+ void AddAtTag(
+ DYN AtTag2 & let_drAtTag )
+ { aTags.push_back(&let_drAtTag); }
+ void SetPublished() { bIsPublished = true; }
+ void SetDeprecated() { bIsDeprecated = true; }
+ void SetOptional() { bIsOptional = true; }
+ void SetExternShort(
+ const DocuTex2 & i_pExternShort )
+ { pExternShort = &i_pExternShort; }
+
+ const DocuTex2 & Short() const { return pExternShort != 0 ? *pExternShort : aShort; }
+ const DocuTex2 & Description() const { return aDescription; }
+ const DocuTex2 & DeprecatedText() const { return aDeprecatedText; }
+ const std::vector< AtTag2* > &
+ Tags() const { return aTags; }
+ bool IsPublished() const { return bIsPublished; }
+ bool IsDeprecated() const { return bIsDeprecated; }
+ bool IsOptional() const { return bIsOptional; }
+
+ private:
+ // Interface csv::ConstProcessorClient:
+ virtual void do_Accept(
+ csv::ProcessorIfc & io_processor ) const;
+ // DATA
+ DocuTex2 aShort;
+ DocuTex2 aDescription;
+ DocuTex2 aDeprecatedText;
+ std::vector< AtTag2* >
+ aTags;
+ const DocuTex2 * pExternShort;
+ bool bIsPublished;
+ bool bIsDeprecated;
+ bool bIsOptional;
+};
+
+
+
+
+} // namespace doc
+} // namespace ary
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/autodoc/inc/ary/doc/d_parametrized.hxx b/autodoc/inc/ary/doc/d_parametrized.hxx
new file mode 100644
index 000000000000..78659e701441
--- /dev/null
+++ b/autodoc/inc/ary/doc/d_parametrized.hxx
@@ -0,0 +1,124 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ARY_DOC_D_PARAMETER_HXX
+#define ARY_DOC_D_PARAMETER_HXX
+
+// USED SERVICES
+ // BASE CLASSES
+#include <ary/doc/d_node.hxx>
+
+namespace ary
+{
+namespace doc
+{
+
+
+/** Documentation unit with Parameter.
+*/
+template <class T>
+class Parametrized : public Node
+{
+ public:
+ // LIFECYCLE
+ explicit Parametrized(
+ nodetype::id i_id,
+ T i_Parameter );
+ virtual ~Parametrized();
+
+ // INQUIRY
+ const HyperText & Doc() const;
+ const T & Parameter() const;
+
+ // ACESS
+ HyperText & Doc();
+ void Set_Parameter(
+ const T & i_param );
+ private:
+ // Interface csv::ConstProcessorClient:
+ virtual void do_Accept(
+ csv::ProcessorIfc & io_processor ) const;
+ // DATA
+ HyperText aDoc;
+ T aParameter;
+};
+
+
+
+
+// IMPLEMENTATION
+template <class T>
+Parametrized<T>::Parametrized( nodetype::id i_id,
+ T i_Parameter )
+ : Node(i_id),
+ aDoc(),
+ aParameter(i_Parameter)
+{
+}
+
+template <class T>
+Parametrized<T>::~Parametrized()
+{
+}
+
+template <class T>
+const HyperText &
+Parametrized<T>::Doc() const
+{
+ return aDoc;
+}
+
+template <class T>
+const T &
+Parametrized<T>::Parameter() const
+{
+ return aParameter;
+}
+
+template <class T>
+HyperText &
+Parametrized<T>::Doc()
+{
+ return aDoc;
+}
+
+template <class T>
+inline void
+Parametrized<T>::Set_Parameter(const T & i_param)
+{
+ aParameter = i_param;
+}
+
+
+
+
+} // namespace doc
+} // namespace ary
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/autodoc/inc/ary/doc/d_types4doc.hxx b/autodoc/inc/ary/doc/d_types4doc.hxx
new file mode 100644
index 000000000000..dbf614af6c56
--- /dev/null
+++ b/autodoc/inc/ary/doc/d_types4doc.hxx
@@ -0,0 +1,73 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ARY_DOC_D_TYPES4DOC_HXX
+#define ARY_DOC_D_TYPES4DOC_HXX
+
+// USED SERVICES
+
+
+
+namespace ary
+{
+namespace doc
+{
+
+
+/** Type of a documentation: multiple lines or single line.
+*/
+enum E_BlockType
+{
+ dbt_none = 0,
+ dbt_multiline,
+ dbt_singleline
+};
+
+/** Type of documentation text: with html or without.
+*/
+enum E_TextType
+{
+ dtt_none = 0,
+ dtt_plain,
+ dtt_html
+};
+
+namespace nodetype
+{
+
+typedef int id;
+
+} // namespace nodetype
+
+
+
+} // namespace doc
+} // namespace ary
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/autodoc/inc/ary/doc/ht/dht_interpreter.hxx b/autodoc/inc/ary/doc/ht/dht_interpreter.hxx
new file mode 100644
index 000000000000..874f3425bf48
--- /dev/null
+++ b/autodoc/inc/ary/doc/ht/dht_interpreter.hxx
@@ -0,0 +1,79 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ARY_DHT_INTERPRETER_HXX
+#define ARY_DHT_INTERPRETER_HXX
+
+
+
+
+namespace ary
+{
+namespace doc
+{
+namespace ht
+{
+ class Processor;
+
+
+/** Interface for all interpreters of a ->Component.
+*/
+class Interpreter
+{
+ public:
+ virtual ~Interpreter() {}
+
+ void Accept(
+ Processor & io_processor,
+ const String & i_data ) const;
+ private:
+ virtual void do_Accept(
+ Processor & io_processor,
+ const String & i_data ) const = 0;
+};
+
+
+
+
+// IMPLEMENTATION
+inline void
+Interpreter::Accept( Processor & io_processor,
+ const String & i_data ) const
+{
+ do_Accept(io_processor, i_data);
+}
+
+
+
+
+} // namespace ht
+} // namespace doc
+} // namespace ary
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */