xref: /aoo42x/main/autodoc/inc/udm/html/htmlitem.hxx (revision 8a106958)
189502f8fSAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
389502f8fSAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
489502f8fSAndrew Rist  * or more contributor license agreements.  See the NOTICE file
589502f8fSAndrew Rist  * distributed with this work for additional information
689502f8fSAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
789502f8fSAndrew Rist  * to you under the Apache License, Version 2.0 (the
889502f8fSAndrew Rist  * "License"); you may not use this file except in compliance
989502f8fSAndrew Rist  * with the License.  You may obtain a copy of the License at
1089502f8fSAndrew Rist  *
1189502f8fSAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
1289502f8fSAndrew Rist  *
1389502f8fSAndrew Rist  * Unless required by applicable law or agreed to in writing,
1489502f8fSAndrew Rist  * software distributed under the License is distributed on an
1589502f8fSAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
1689502f8fSAndrew Rist  * KIND, either express or implied.  See the License for the
1789502f8fSAndrew Rist  * specific language governing permissions and limitations
1889502f8fSAndrew Rist  * under the License.
1989502f8fSAndrew Rist  *
2089502f8fSAndrew Rist  *************************************************************/
2189502f8fSAndrew Rist 
2289502f8fSAndrew Rist 
23cdf0e10cSrcweir 
24cdf0e10cSrcweir #ifndef CSI_HTML_HTMLITEM_HXX
25cdf0e10cSrcweir #define CSI_HTML_HTMLITEM_HXX
26cdf0e10cSrcweir 
27cdf0e10cSrcweir // USED SERVICES
28cdf0e10cSrcweir 	// BASE CLASSES
29cdf0e10cSrcweir #include <udm/xml/xmlitem.hxx>
30cdf0e10cSrcweir 	// COMPONENTS
31cdf0e10cSrcweir 	// PARAMETERS
32cdf0e10cSrcweir 
33cdf0e10cSrcweir 
34cdf0e10cSrcweir #define COMPATIBLE_NETSCAPE_47
35cdf0e10cSrcweir 
36cdf0e10cSrcweir namespace csi
37cdf0e10cSrcweir {
38cdf0e10cSrcweir namespace html
39cdf0e10cSrcweir {
40cdf0e10cSrcweir 
41cdf0e10cSrcweir 
42cdf0e10cSrcweir 
43cdf0e10cSrcweir /**	<BODY>
44cdf0e10cSrcweir */
45cdf0e10cSrcweir class Body : public csi::xml::AnElement
46cdf0e10cSrcweir {
47cdf0e10cSrcweir   public:
Body()48cdf0e10cSrcweir 						Body()
49cdf0e10cSrcweir 								: 	csi::xml::AnElement( "body" ) {}
50cdf0e10cSrcweir   private:
51cdf0e10cSrcweir 	virtual bool		LineBreakAfterBeginTag() const;
52cdf0e10cSrcweir };
53cdf0e10cSrcweir 
54cdf0e10cSrcweir 
55cdf0e10cSrcweir #ifdef COMPATIBLE_NETSCAPE_47
56cdf0e10cSrcweir /**	<BR>
57cdf0e10cSrcweir */
58cdf0e10cSrcweir class HorizontalLine : public xml::XmlCode
59cdf0e10cSrcweir {
60cdf0e10cSrcweir   public:
HorizontalLine()61cdf0e10cSrcweir 						HorizontalLine()
62cdf0e10cSrcweir 								: 	xml::XmlCode("<hr>\n") {}
63cdf0e10cSrcweir };
64cdf0e10cSrcweir 
65cdf0e10cSrcweir #else
66cdf0e10cSrcweir /**	<HR>
67cdf0e10cSrcweir */
68cdf0e10cSrcweir class HorizontalLine : public csi::xml::AnEmptyElement
69cdf0e10cSrcweir {
70cdf0e10cSrcweir   public:
HorizontalLine()71cdf0e10cSrcweir 						HorizontalLine()
72cdf0e10cSrcweir 								: 	csi::xml::AnEmptyElement("hr") {}
73cdf0e10cSrcweir   private:
74cdf0e10cSrcweir 	virtual bool		LineBreakAfterBeginTag() const;
75cdf0e10cSrcweir };
76cdf0e10cSrcweir #endif
77cdf0e10cSrcweir 
78cdf0e10cSrcweir 
79cdf0e10cSrcweir /**	<IMG .... >
80cdf0e10cSrcweir */
81cdf0e10cSrcweir class Image : public csi::xml::AnEmptyElement
82cdf0e10cSrcweir {
83cdf0e10cSrcweir   public:
84cdf0e10cSrcweir 						Image(
85cdf0e10cSrcweir 							const ::csv::String & i_sSrc,
86cdf0e10cSrcweir 							const ::csv::String & i_sWidth,
87cdf0e10cSrcweir 							const ::csv::String & i_sHeight,
88cdf0e10cSrcweir 							const ::csv::String & i_sAlign,
89cdf0e10cSrcweir 							const ::csv::String & i_sBorder );
90cdf0e10cSrcweir };
91cdf0e10cSrcweir 
92cdf0e10cSrcweir /**	<A name="">
93cdf0e10cSrcweir */
94cdf0e10cSrcweir class Label : public csi::xml::AnElement
95cdf0e10cSrcweir {
96cdf0e10cSrcweir   public:
Label(const::csv::String & i_sLabel)97cdf0e10cSrcweir 						Label(
98cdf0e10cSrcweir 							const ::csv::String & i_sLabel )
99cdf0e10cSrcweir 								: 	csi::xml::AnElement("a")
100cdf0e10cSrcweir 								{ *this << new csi::xml::AnAttribute(String("name"), i_sLabel); }
101cdf0e10cSrcweir };
102cdf0e10cSrcweir 
103cdf0e10cSrcweir /**	<p>
104cdf0e10cSrcweir */
105cdf0e10cSrcweir class Paragraph : public csi::xml::AnElement
106cdf0e10cSrcweir {
107cdf0e10cSrcweir   public:
Paragraph()108cdf0e10cSrcweir 						Paragraph()
109cdf0e10cSrcweir 								: 	csi::xml::AnElement("p") {}
110cdf0e10cSrcweir   private:
111cdf0e10cSrcweir 	virtual bool		LineBreakAfterEndTag() const;
112cdf0e10cSrcweir };
113cdf0e10cSrcweir 
114cdf0e10cSrcweir /**	<H1-6>
115cdf0e10cSrcweir */
116cdf0e10cSrcweir class Headline : public csi::xml::APureElement
117cdf0e10cSrcweir {
118cdf0e10cSrcweir   public:
Headline(int i_nNr)119cdf0e10cSrcweir 						Headline(
120cdf0e10cSrcweir                             int                 i_nNr )
121cdf0e10cSrcweir 								: 	csi::xml::APureElement(sTags[i_nNr-1]) { csv_assert(1 <= i_nNr AND i_nNr < 7); }
122cdf0e10cSrcweir   private:
123cdf0e10cSrcweir     static const char * sTags[6];
124cdf0e10cSrcweir 	virtual bool		LineBreakAfterEndTag() const;
125cdf0e10cSrcweir };
126cdf0e10cSrcweir 
127cdf0e10cSrcweir #ifdef COMPATIBLE_NETSCAPE_47
128cdf0e10cSrcweir /**	<BR>
129cdf0e10cSrcweir */
130cdf0e10cSrcweir class LineBreak : public xml::XmlCode
131cdf0e10cSrcweir {
132cdf0e10cSrcweir   public:
LineBreak()133cdf0e10cSrcweir 						LineBreak()
134cdf0e10cSrcweir 								: 	xml::XmlCode("<br>\n") {}
135cdf0e10cSrcweir };
136cdf0e10cSrcweir 
137cdf0e10cSrcweir #else
138cdf0e10cSrcweir /**	<BR>
139cdf0e10cSrcweir */
140cdf0e10cSrcweir class LineBreak : public csi::xml::ASglTag
141cdf0e10cSrcweir {
142cdf0e10cSrcweir   public:
LineBreak()143cdf0e10cSrcweir 						LineBreak()
144cdf0e10cSrcweir 								: 	csi::xml::ASglTag("br") {}
145cdf0e10cSrcweir   private:
146cdf0e10cSrcweir 	virtual bool		LineBreakAfterBeginTag() const;
147cdf0e10cSrcweir };
148cdf0e10cSrcweir #endif
149cdf0e10cSrcweir 
150cdf0e10cSrcweir 
151cdf0e10cSrcweir /**	<b>
152cdf0e10cSrcweir */
153cdf0e10cSrcweir class Bold : public csi::xml::APureElement
154cdf0e10cSrcweir {
155cdf0e10cSrcweir   public:
Bold()156cdf0e10cSrcweir 						Bold()
157cdf0e10cSrcweir 								: 	csi::xml::APureElement("b") {}
158cdf0e10cSrcweir };
159cdf0e10cSrcweir 
160cdf0e10cSrcweir /**	<i>
161cdf0e10cSrcweir */
162cdf0e10cSrcweir class Italic : public csi::xml::APureElement
163cdf0e10cSrcweir {
164cdf0e10cSrcweir   public:
Italic()165cdf0e10cSrcweir 						Italic()
166cdf0e10cSrcweir 								: 	csi::xml::APureElement("i") {}
167cdf0e10cSrcweir };
168cdf0e10cSrcweir 
169cdf0e10cSrcweir /**	<strong>
170cdf0e10cSrcweir */
171cdf0e10cSrcweir class Strong : public csi::xml::APureElement
172cdf0e10cSrcweir {
173cdf0e10cSrcweir   public:
Strong()174cdf0e10cSrcweir 						Strong()
175cdf0e10cSrcweir 								: 	csi::xml::APureElement("strong") {}
176cdf0e10cSrcweir };
177cdf0e10cSrcweir 
178cdf0e10cSrcweir /**	<em>
179cdf0e10cSrcweir */
180cdf0e10cSrcweir class Emphasized : public csi::xml::APureElement
181cdf0e10cSrcweir {
182cdf0e10cSrcweir   public:
Emphasized()183cdf0e10cSrcweir 						Emphasized()
184cdf0e10cSrcweir 								: 	csi::xml::APureElement("em") {}
185cdf0e10cSrcweir };
186cdf0e10cSrcweir 
187cdf0e10cSrcweir /**	<font>
188cdf0e10cSrcweir */
189cdf0e10cSrcweir class Font : public csi::xml::AnElement
190cdf0e10cSrcweir {
191cdf0e10cSrcweir   public:
Font()192cdf0e10cSrcweir 						Font()
193cdf0e10cSrcweir 								: 	csi::xml::AnElement("font") {}
194cdf0e10cSrcweir };
195cdf0e10cSrcweir 
196cdf0e10cSrcweir 
197cdf0e10cSrcweir /**	<A href="">
198cdf0e10cSrcweir */
199cdf0e10cSrcweir class Link : public csi::xml::AnElement
200cdf0e10cSrcweir {
201cdf0e10cSrcweir   public:
Link(const::csv::String & i_sDestinaton)202cdf0e10cSrcweir 						Link(
203cdf0e10cSrcweir 							const ::csv::String &i_sDestinaton )
204cdf0e10cSrcweir 								: 	csi::xml::AnElement("a")
205cdf0e10cSrcweir 								{ *this << new csi::xml::AnAttribute(String("href"), i_sDestinaton); }
206cdf0e10cSrcweir };
207cdf0e10cSrcweir 
208cdf0e10cSrcweir class TableCell : public csi::xml::AnElement
209cdf0e10cSrcweir {
210cdf0e10cSrcweir   public:
TableCell()211cdf0e10cSrcweir 						TableCell()
212cdf0e10cSrcweir 								: 	csi::xml::AnElement("td") {}
213cdf0e10cSrcweir   private:
214cdf0e10cSrcweir 	virtual bool		LineBreakAfterEndTag() const;
215cdf0e10cSrcweir };
216cdf0e10cSrcweir 
217cdf0e10cSrcweir class TableRow  : public csi::xml::AnElement
218cdf0e10cSrcweir {
219cdf0e10cSrcweir   public:
TableRow()220cdf0e10cSrcweir 						TableRow()
221cdf0e10cSrcweir 								: 	csi::xml::AnElement("tr") {}
222cdf0e10cSrcweir 
223cdf0e10cSrcweir 	TableCell &			AddCell(
224cdf0e10cSrcweir 							DYN csi::xml::Item* let_dpItem = 0 );
225cdf0e10cSrcweir   private:
226cdf0e10cSrcweir 	virtual bool		LineBreakAfterBeginTag() const;
227cdf0e10cSrcweir };
228cdf0e10cSrcweir 
229cdf0e10cSrcweir /**	<table ....>
230cdf0e10cSrcweir */
231cdf0e10cSrcweir class Table : public csi::xml::AnElement
232cdf0e10cSrcweir {
233cdf0e10cSrcweir   public:
Table()234cdf0e10cSrcweir 						Table()
235cdf0e10cSrcweir 								: 	csi::xml::AnElement("table") {}
236cdf0e10cSrcweir 						Table(
237cdf0e10cSrcweir 							const ::csv::String & i_sBorder,
238cdf0e10cSrcweir 							const ::csv::String & i_sWidth,
239cdf0e10cSrcweir 							const ::csv::String & i_sCellPadding,
240cdf0e10cSrcweir 							const ::csv::String & i_sCellSpacing  );
241cdf0e10cSrcweir 	TableRow &			AddRow();
242cdf0e10cSrcweir   private:
243cdf0e10cSrcweir 	virtual bool		FinishEmptyTag_XmlStyle() const;
244cdf0e10cSrcweir 	virtual bool		LineBreakAfterBeginTag() const;
245cdf0e10cSrcweir };
246cdf0e10cSrcweir 
247cdf0e10cSrcweir 
248cdf0e10cSrcweir 
249cdf0e10cSrcweir class DefListTerm : public csi::xml::AnElement
250cdf0e10cSrcweir {
251cdf0e10cSrcweir   public:
DefListTerm()252cdf0e10cSrcweir 						DefListTerm()
253cdf0e10cSrcweir 								: 	csi::xml::AnElement("dt") {}
254cdf0e10cSrcweir   private:
255cdf0e10cSrcweir 	virtual bool		LineBreakAfterEndTag() const;
256cdf0e10cSrcweir };
257cdf0e10cSrcweir 
258cdf0e10cSrcweir class DefListDefinition : public csi::xml::AnElement
259cdf0e10cSrcweir {
260cdf0e10cSrcweir   public:
DefListDefinition()261cdf0e10cSrcweir 						DefListDefinition()
262cdf0e10cSrcweir 								: 	csi::xml::AnElement("dd") {}
263cdf0e10cSrcweir   private:
264cdf0e10cSrcweir 	virtual bool		LineBreakAfterEndTag() const;
265cdf0e10cSrcweir };
266cdf0e10cSrcweir 
267cdf0e10cSrcweir /**	<DL>
268cdf0e10cSrcweir */
269cdf0e10cSrcweir class DefList : public csi::xml::AnElement
270cdf0e10cSrcweir {
271cdf0e10cSrcweir   public:
DefList()272cdf0e10cSrcweir 						DefList()
273cdf0e10cSrcweir 								: 	csi::xml::AnElement("dl") {}
274cdf0e10cSrcweir 
275cdf0e10cSrcweir 	DefListTerm &		AddTerm(
276cdf0e10cSrcweir 							DYN csi::xml::Item* let_dpItem = 0 );
277cdf0e10cSrcweir 	DefListDefinition &	AddDefinition(
278cdf0e10cSrcweir 							DYN csi::xml::Item* let_dpItem = 0 );
279cdf0e10cSrcweir   private:
280cdf0e10cSrcweir 	virtual bool		LineBreakAfterBeginTag() const;
281cdf0e10cSrcweir 	virtual bool		FinishEmptyTag_XmlStyle() const;
282cdf0e10cSrcweir };
283cdf0e10cSrcweir 
284cdf0e10cSrcweir 
285cdf0e10cSrcweir class ListItem : public csi::xml::AnElement
286cdf0e10cSrcweir {
287cdf0e10cSrcweir   public:
ListItem()288cdf0e10cSrcweir 						ListItem()
289cdf0e10cSrcweir 								: 	csi::xml::AnElement("li") {}
290cdf0e10cSrcweir   private:
291cdf0e10cSrcweir 	virtual bool		LineBreakAfterEndTag() const;
292cdf0e10cSrcweir };
293cdf0e10cSrcweir 
294cdf0e10cSrcweir /** <OL>
295cdf0e10cSrcweir */
296cdf0e10cSrcweir class NumeratedList : public csi::xml::AnElement
297cdf0e10cSrcweir {
298cdf0e10cSrcweir   public:
NumeratedList()299cdf0e10cSrcweir 						NumeratedList()
300cdf0e10cSrcweir 								: 	csi::xml::AnElement("ol") {}
301cdf0e10cSrcweir 
302cdf0e10cSrcweir 	ListItem &			AddItem(
303cdf0e10cSrcweir 							DYN csi::xml::Item* let_dpItem = 0 );
304cdf0e10cSrcweir   private:
305cdf0e10cSrcweir 	virtual bool		LineBreakAfterBeginTag() const;
306cdf0e10cSrcweir };
307cdf0e10cSrcweir 
308cdf0e10cSrcweir /**	<UL>
309cdf0e10cSrcweir */
310cdf0e10cSrcweir class SimpleList : public csi::xml::AnElement
311cdf0e10cSrcweir {
312cdf0e10cSrcweir   public:
SimpleList()313cdf0e10cSrcweir 						SimpleList()
314cdf0e10cSrcweir 								: 	csi::xml::AnElement("ul") {}
315cdf0e10cSrcweir 
316cdf0e10cSrcweir 	ListItem &			AddItem(
317cdf0e10cSrcweir 							DYN csi::xml::Item* let_dpItem = 0 );
318cdf0e10cSrcweir   private:
319cdf0e10cSrcweir 	virtual bool		LineBreakAfterBeginTag() const;
320cdf0e10cSrcweir };
321cdf0e10cSrcweir 
322cdf0e10cSrcweir 
323cdf0e10cSrcweir class ClassAttr : public csi::xml::AnAttribute
324cdf0e10cSrcweir {
325cdf0e10cSrcweir   public:
ClassAttr(const::csv::String & i_sValue)326cdf0e10cSrcweir                         ClassAttr(
327cdf0e10cSrcweir                             const ::csv::String & i_sValue )
328cdf0e10cSrcweir                             :   csi::xml::AnAttribute( String("class"), i_sValue ) {}
329cdf0e10cSrcweir };
330cdf0e10cSrcweir 
331cdf0e10cSrcweir class StyleAttr : public csi::xml::AnAttribute
332cdf0e10cSrcweir {
333cdf0e10cSrcweir   public:
StyleAttr(const::csv::String & i_sValue)334cdf0e10cSrcweir                         StyleAttr(
335cdf0e10cSrcweir                             const ::csv::String & i_sValue )
336cdf0e10cSrcweir                             :   csi::xml::AnAttribute( String("style"), i_sValue ) {}
337cdf0e10cSrcweir };
338cdf0e10cSrcweir 
339cdf0e10cSrcweir class SizeAttr : public csi::xml::AnAttribute
340cdf0e10cSrcweir {
341cdf0e10cSrcweir   public:
SizeAttr(const::csv::String & i_sValue)342cdf0e10cSrcweir                         SizeAttr(
343cdf0e10cSrcweir                             const ::csv::String & i_sValue )
344cdf0e10cSrcweir                             :   csi::xml::AnAttribute( String("size"), i_sValue ) {}
345cdf0e10cSrcweir };
346cdf0e10cSrcweir 
347cdf0e10cSrcweir class ColorAttr : public csi::xml::AnAttribute
348cdf0e10cSrcweir {
349cdf0e10cSrcweir   public:
ColorAttr(const::csv::String & i_sValue)350cdf0e10cSrcweir                         ColorAttr(
351cdf0e10cSrcweir                             const ::csv::String & i_sValue )
352cdf0e10cSrcweir                             :   csi::xml::AnAttribute( String("color"), i_sValue ) {}
353cdf0e10cSrcweir };
354cdf0e10cSrcweir 
355cdf0e10cSrcweir class BgColorAttr : public csi::xml::AnAttribute
356cdf0e10cSrcweir {
357cdf0e10cSrcweir   public:
BgColorAttr(const::csv::String & i_sValue)358cdf0e10cSrcweir                         BgColorAttr(
359cdf0e10cSrcweir                             const ::csv::String & i_sValue )
360cdf0e10cSrcweir                             :   csi::xml::AnAttribute( String("bgcolor"), i_sValue ) {}
361cdf0e10cSrcweir };
362cdf0e10cSrcweir 
363cdf0e10cSrcweir class AlignAttr : public csi::xml::AnAttribute
364cdf0e10cSrcweir {
365cdf0e10cSrcweir   public:
AlignAttr(const::csv::String & i_sValue)366cdf0e10cSrcweir                         AlignAttr(
367cdf0e10cSrcweir                             const ::csv::String & i_sValue )
368cdf0e10cSrcweir                             :   csi::xml::AnAttribute( String("align"), i_sValue ) {}
369cdf0e10cSrcweir };
370cdf0e10cSrcweir 
371cdf0e10cSrcweir class VAlignAttr : public csi::xml::AnAttribute
372cdf0e10cSrcweir {
373cdf0e10cSrcweir   public:
VAlignAttr(const::csv::String & i_sValue)374cdf0e10cSrcweir                         VAlignAttr(
375cdf0e10cSrcweir                             const ::csv::String & i_sValue )
376cdf0e10cSrcweir                             :   csi::xml::AnAttribute( String("valign"), i_sValue ) {}
377cdf0e10cSrcweir };
378cdf0e10cSrcweir 
379cdf0e10cSrcweir class WidthAttr : public csi::xml::AnAttribute
380cdf0e10cSrcweir {
381cdf0e10cSrcweir   public:
WidthAttr(const::csv::String & i_sValue)382cdf0e10cSrcweir                         WidthAttr(
383cdf0e10cSrcweir                             const ::csv::String & i_sValue )
384cdf0e10cSrcweir                             :   csi::xml::AnAttribute( String("width"), i_sValue ) {}
385cdf0e10cSrcweir };
386cdf0e10cSrcweir 
387cdf0e10cSrcweir 
388cdf0e10cSrcweir 
389cdf0e10cSrcweir class Sbr : public csi::xml::XmlCode  // Sourcefile lineBreak
390cdf0e10cSrcweir {
391cdf0e10cSrcweir   public:
Sbr()392cdf0e10cSrcweir                         Sbr()
393cdf0e10cSrcweir                             :   csi::xml::XmlCode("\n") {}
394cdf0e10cSrcweir };
395cdf0e10cSrcweir 
396cdf0e10cSrcweir 
397cdf0e10cSrcweir }   // namespace html
398cdf0e10cSrcweir }   // namespace csi
399cdf0e10cSrcweir 
400cdf0e10cSrcweir namespace Html = csi::html;
401cdf0e10cSrcweir 
402cdf0e10cSrcweir #endif
403cdf0e10cSrcweir 
404cdf0e10cSrcweir 
405