1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: xmltree.hxx,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef X2C_XMLTREE_HXX
32 #define X2C_XMLTREE_HXX
38 #include "xmlelem.hxx"
40 #include "../support/sistr.hxx"
41 #include "../support/list.hxx"
47 class ModuleDescription
: public SequenceElement
52 const Simstr
& ModuleName() const;
53 void Get_SupportedServices( /// @return also the children of component-description.
54 List
< const MultipleTextElement
* > &
57 List
< const MultipleTextElement
* > &
59 void Get_ServiceDependencies(
60 List
< const MultipleTextElement
* > &
63 SglTextElement
* pModuleName
;
64 CompDescrList
* pCdList
;
72 class ComponentDescription
: public SequenceElement
75 ComponentDescription();
77 const Simstr
& ComponentName() const { return pComponentName
->Data(); }
78 const MultipleTextElement
&
79 SupportedServices() const
80 { return *pSupportedServices
; }
81 const MultipleTextElement
&
82 Types() const { return *pTypes
; }
83 const MultipleTextElement
&
84 ServiceDependencies() const
85 { return *pServiceDependencies
; }
87 SglTextElement
* pComponentName
;
96 class CompDescrList
: public ListElement
100 virtual void Write2Html(
101 HtmlCreator
& io_rHC
) const;
103 Create_and_Add_NewElement();
105 void Get_SupportedServices(
106 List
< const MultipleTextElement
* > &
109 List
< const MultipleTextElement
* > &
111 void Get_ServiceDependencies(
112 List
< const MultipleTextElement
* > &
115 List
< ComponentDescription
* >
119 class MdName
: public SglTextElement
123 virtual void Write2Html(
124 HtmlCreator
& io_rHC
) const;
127 class CdName
: public SglTextElement
131 virtual void Write2Html(
132 HtmlCreator
& io_rHC
) const;
135 class SupportedService
: public MultipleTextElement
140 virtual void Insert2Index(
141 Index
& o_rIndex
) const;