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: hfi_property.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 ADC_DISPLAY_HFI_PROPERTY_HXX
32 #define ADC_DISPLAY_HFI_PROPERTY_HXX
38 #include "hi_factory.hxx"
41 #include <ary/idl/i_comrela.hxx>
43 class HF_SubTitleTable
;
45 class HF_IdlDataMember
: public HtmlFactory_Idl
49 const client
& ce
) const;
52 Environment
& io_rEnv
,
53 HF_SubTitleTable
& o_table
);
54 virtual ~HF_IdlDataMember() {}
57 virtual void write_Title(
58 const client
& i_ce
) const;
60 virtual void write_Declaration(
61 const client
& i_ce
) const = 0;
63 virtual void write_Description(
64 const client
& i_ce
) const;
66 void enter_ContentCell() const;
67 void leave_ContentCell() const;
72 class HF_IdlProperty
: public HF_IdlDataMember
76 Environment
& io_rEnv
,
77 HF_SubTitleTable
& o_table
)
78 : HF_IdlDataMember(io_rEnv
, o_table
) {}
79 virtual ~HF_IdlProperty();
81 virtual void write_Declaration(
82 const client
& i_ce
) const;
85 class HF_IdlAttribute
: public HF_IdlDataMember
89 Environment
& io_rEnv
,
90 HF_SubTitleTable
& o_table
)
91 : HF_IdlDataMember(io_rEnv
, o_table
) {}
92 virtual ~HF_IdlAttribute();
95 virtual void write_Declaration(
96 const client
& i_ce
) const;
100 class HF_IdlEnumValue
: public HF_IdlDataMember
104 Environment
& io_rEnv
,
105 HF_SubTitleTable
& o_table
)
106 : HF_IdlDataMember(io_rEnv
, o_table
) {}
107 virtual ~HF_IdlEnumValue();
110 virtual void write_Declaration(
111 const client
& i_ce
) const;
114 class HF_IdlConstant
: public HF_IdlDataMember
118 Environment
& io_rEnv
,
119 HF_SubTitleTable
& o_table
)
120 : HF_IdlDataMember(io_rEnv
, o_table
) {}
121 virtual ~HF_IdlConstant();
124 virtual void write_Declaration(
125 const client
& i_ce
) const;
129 class HF_IdlStructElement
: public HF_IdlDataMember
133 Environment
& io_rEnv
,
134 HF_SubTitleTable
& o_table
)
135 : HF_IdlDataMember(io_rEnv
, o_table
) {}
136 virtual ~HF_IdlStructElement();
139 virtual void write_Declaration(
140 const client
& i_ce
) const;
143 class HF_IdlCommentedRelationElement
: public HF_IdlDataMember
146 HF_IdlCommentedRelationElement(
147 Environment
& io_rEnv
,
148 HF_SubTitleTable
& o_table
,
149 const ary::idl::CommentedRelation
& i_relation
)
150 : HF_IdlDataMember(io_rEnv
, o_table
)
151 , m_relation( i_relation
)
154 virtual ~HF_IdlCommentedRelationElement();
156 typedef ::ary::idl::CommentedRelation comref
;
158 static void produce_LinkDoc(
159 Environment
& io_env
,
161 Xml::Element
& io_context
,
162 const comref
& i_commentedRef
,
163 const E_DocType i_docType
);
166 virtual void write_Title(
167 const client
& i_ce
) const;
168 virtual void write_Declaration(
169 const client
& i_ce
) const;
170 virtual void write_Description(
171 const client
& i_ce
) const;
173 static void produce_Summary( Environment
& io_env
,
174 Xml::Element
& io_context
,
175 const comref
& i_commentedRef
,
176 const client
& i_rScopeGivingCe
);
178 static String
get_LocalLinkName( Environment
& io_env
,
179 const comref
& i_commentedRef
);
182 const ary::idl::CommentedRelation
& m_relation
;