001package com.hfg.html;
002
003
004import com.hfg.xml.XMLNode;
005
006//------------------------------------------------------------------------------
007/**
008 * Represents a span (<span>) tag.
009 *
010 * @author J. Alex Taylor, hairyfatguy.com
011 */
012//------------------------------------------------------------------------------
013// com.hfg XML/HTML Coding Library
014//
015// This library is free software; you can redistribute it and/or
016// modify it under the terms of the GNU Lesser General Public
017// License as published by the Free Software Foundation; either
018// version 2.1 of the License, or (at your option) any later version.
019//
020// This library is distributed in the hope that it will be useful,
021// but WITHOUT ANY WARRANTY; without even the implied warranty of
022// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
023// Lesser General Public License for more details.
024//
025// You should have received a copy of the GNU Lesser General Public
026// License along with this library; if not, write to the Free Software
027// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
028//
029// J. Alex Taylor, President, Founder, CEO, COO, CFO, OOPS hairyfatguy.com
030// jataylor@hairyfatguy.com
031//------------------------------------------------------------------------------
032
033public class Span extends HTMLTagWithCoreEvents
034{
035
036   //##########################################################################
037   // PRIVATE FIELDS
038   //##########################################################################
039
040
041   //##########################################################################
042   // CONSTRUCTORS
043   //##########################################################################
044
045   //--------------------------------------------------------------------------
046   public Span()
047   {
048      super(HTML.SPAN);
049   }
050
051   //--------------------------------------------------------------------------
052   public Span(String inContent)
053   {
054      this();
055      addContent(inContent);
056   }
057
058   //--------------------------------------------------------------------------
059   public Span(HTMLTag inContent)
060   {
061      this();
062      addSubtag(inContent);
063   }
064
065   //--------------------------------------------------------------------------
066   public Span(XMLNode inXMLNode)
067   {
068      this();
069      initFromXMLNode(inXMLNode);
070   }
071
072   //##########################################################################
073   // PUBLIC METHODS
074   //##########################################################################
075
076
077   //--------------------------------------------------------------------------
078   public Center addCenter()
079   {
080      Center center = new Center();
081      addSubtag(center);
082
083      return center;
084   }
085
086   //--------------------------------------------------------------------------
087   public Center addCenter(String inContent)
088   {
089      Center center = new Center(inContent);
090      addSubtag(center);
091
092      return center;
093   }
094
095   //--------------------------------------------------------------------------
096   public Center addCenter(HTMLTag inContent)
097   {
098      Center center = new Center(inContent);
099      addSubtag(center);
100
101      return center;
102   }
103
104   //--------------------------------------------------------------------------
105   public Form addForm()
106   {
107      Form form = new Form();
108      addSubtag(form);
109
110      return form;
111   }
112
113   //--------------------------------------------------------------------------
114   public Form addForm(String inFormName)
115   {
116      Form form = new Form(inFormName);
117      addSubtag(form);
118
119      return form;
120   }
121
122   //--------------------------------------------------------------------------
123   public InputText addTextInput()
124   {
125      InputText text = new InputText();
126      addSubtag(text);
127
128      return text;
129   }
130
131   //--------------------------------------------------------------------------
132   public InputText addTextInput(String inName, String inValue)
133   {
134      InputText input = new InputText(inName, inValue);
135      addSubtag(input);
136
137      return input;
138   }
139
140
141   //--------------------------------------------------------------------------
142   public Img addImage(String inSrc)
143   {
144      Img image = new Img(inSrc);
145      addSubtag(image);
146
147      return image;
148   }
149
150   //--------------------------------------------------------------------------
151   public Link addLink()
152   {
153      Link link = new Link();
154      addSubtag(link);
155
156      return link;
157   }
158
159   //--------------------------------------------------------------------------
160   public Link addLink(CharSequence inURL)
161   {
162      Link link = new Link(inURL);
163      addSubtag(link);
164
165      return link;
166   }
167
168   //--------------------------------------------------------------------------
169   public Link addLink(CharSequence inURL, String inContent)
170   {
171      Link link = new Link(inURL, inContent);
172      addSubtag(link);
173
174      return link;
175   }
176
177   //--------------------------------------------------------------------------
178   public Link addLink(CharSequence inURL, HTMLTag inContent)
179   {
180      Link link = new Link(inURL, inContent);
181      addSubtag(link);
182
183      return link;
184   }
185
186   //--------------------------------------------------------------------------
187   public Nobr addNobr()
188   {
189      Nobr nobr = new Nobr();
190      addSubtag(nobr);
191
192      return nobr;
193   }
194
195   //--------------------------------------------------------------------------
196   public Nobr addNobr(String inContent)
197   {
198      Nobr nobr = new Nobr(inContent);
199      addSubtag(nobr);
200
201      return nobr;
202   }
203
204   //--------------------------------------------------------------------------
205   public Nobr addNobr(HTMLTag inContent)
206   {
207      Nobr nobr = new Nobr(inContent);
208      addSubtag(nobr);
209
210      return nobr;
211   }
212
213
214   //--------------------------------------------------------------------------
215   public Pre addPre()
216   {
217       Pre pre = new Pre();
218       addSubtag(pre);
219
220       return pre;
221   }
222
223   //--------------------------------------------------------------------------
224   public Pre addPre(String inContent)
225   {
226       Pre pre = new Pre(inContent);
227       addSubtag(pre);
228
229       return pre;
230   }
231
232   //--------------------------------------------------------------------------
233   public Pre addPre(HTMLTag inContent)
234   {
235       Pre pre = new Pre(inContent);
236       addSubtag(pre);
237
238       return pre;
239   }
240
241   //--------------------------------------------------------------------------
242   public Select addSelect(String inName)
243   {
244      Select select = new Select(inName);
245      addSubtag(select);
246
247      return select;
248   }
249
250   //--------------------------------------------------------------------------
251   public Span addSpan()
252   {
253      Span span = new Span();
254      addSubtag(span);
255
256      return span;
257   }
258
259   //--------------------------------------------------------------------------
260   public Span addSpan(String inContent)
261   {
262      Span span = new Span(inContent);
263      addSubtag(span);
264
265      return span;
266   }
267
268   //--------------------------------------------------------------------------
269   public Table addTable()
270   {
271      Table table = new Table();
272      addSubtag(table);
273
274      return table;
275   }
276
277   //--------------------------------------------------------------------------
278   public Ul addUnorderedList()
279   {
280      Ul ul = new Ul();
281      addSubtag(ul);
282
283      return ul;
284   }
285
286   //--------------------------------------------------------------------------
287   public InputCheckbox addCheckbox(String inName, String inValue)
288   {
289      InputCheckbox checkbox = new InputCheckbox(inName, inValue);
290      addSubtag(checkbox);
291
292      return checkbox;
293   }
294
295   //--------------------------------------------------------------------------
296   public InputCheckbox addCheckbox(String inName, String inValue, boolean checked)
297   {
298      InputCheckbox checkbox = new InputCheckbox(inName, inValue, checked);
299      addSubtag(checkbox);
300
301      return checkbox;
302   }
303
304   //--------------------------------------------------------------------------
305   public InputRadio addRadio(String inName, String inValue)
306   {
307      InputRadio radio = new InputRadio(inName, inValue);
308      addSubtag(radio);
309
310      return radio;
311   }
312
313   //--------------------------------------------------------------------------
314   public InputRadio addRadio(String inName, String inValue, boolean checked)
315   {
316      InputRadio radio = new InputRadio(inName, inValue, checked);
317      addSubtag(radio);
318
319      return radio;
320   }
321
322   //--------------------------------------------------------------------------
323   public Script addScript()
324   {
325      Script script = new Script();
326      addSubtag(script);
327
328      return script;
329   }
330
331   //--------------------------------------------------------------------------
332   @Override
333   public Span appendToOnMouseOut(String inValue)
334   {
335      return (Span) super.appendToOnMouseOut(inValue);
336   }
337
338   //--------------------------------------------------------------------------
339   @Override
340   public Span appendToOnMouseOver(String inValue)
341   {
342      return (Span) super.appendToOnMouseOver(inValue);
343   }
344
345   //--------------------------------------------------------------------------
346   @Override
347   public Span appendToOnClick(String inValue)
348   {
349      return (Span) super.appendToOnClick(inValue);
350   }
351
352   //--------------------------------------------------------------------------
353   public Span setTitle(String inValue)
354   {
355      setAttribute(HTML.TITLE, inValue);
356      return this;
357   }
358
359   //--------------------------------------------------------------------------
360   public String getTitle()
361   {
362      return getAttributeValue(HTML.TITLE);
363   }
364
365
366   //--------------------------------------------------------------------------
367   public Span br()
368   {
369      HTMLUtil.br(this);
370      return this;
371   }
372
373   //--------------------------------------------------------------------------
374   public Span br(int inNumber)
375   {
376      HTMLUtil.br(this, inNumber);
377      return this;
378   }
379
380   //--------------------------------------------------------------------------
381   public Span nbsp(int inNumber)
382   {
383      HTMLUtil.nbsp(this, inNumber);
384      return this;
385   }
386
387   //--------------------------------------------------------------------------
388   public void hr()
389   {
390      HTMLUtil.hr(this);
391   }
392
393   //--------------------------------------------------------------------------
394   public void hr(String inWidth)
395   {
396      HTMLUtil.hr(this, inWidth);
397   }
398
399   // Overrides for HTMLTag setters to allow method chaining.
400
401   //--------------------------------------------------------------------------
402   @Override
403   public Span addClass(String inValue)
404   {
405      return (Span) super.addClass(inValue);
406   }
407
408   //--------------------------------------------------------------------------
409   @Override
410   public Span setClass(String inValue)
411   {
412      return (Span) super.setClass(inValue);
413   }
414
415   //--------------------------------------------------------------------------
416   @Override
417   public Span setId(String inValue)
418   {
419      return (Span) super.setId(inValue);
420   }
421
422   //--------------------------------------------------------------------------
423   @Override
424   public Span setStyle(CharSequence inValue)
425   {
426      return (Span) super.setStyle(inValue);
427   }
428
429   //--------------------------------------------------------------------------
430   @Override
431   public Span addStyle(String inValue)
432   {
433      return (Span) super.addStyle(inValue);
434   }
435
436
437   //--------------------------------------------------------------------------
438   @Override
439   public Span setDraggable(boolean inValue)
440   {
441      return (Span) super.setDraggable(inValue);
442   }
443
444   // Overrides for HTMLTagWithCoreEvents setters to allow method chaining.
445
446   //--------------------------------------------------------------------------
447   @Override
448   public Span setOnClick(String inValue)
449   {
450      return (Span) super.setOnClick(inValue);
451   }
452
453   //--------------------------------------------------------------------------
454   @Override
455   public Span setOnDblClick(String inValue)
456   {
457      return (Span) super.setOnDblClick(inValue);
458   }
459
460   //--------------------------------------------------------------------------
461   @Override
462   public Span setOnMouseDown(String inValue)
463   {
464      return (Span) super.setOnMouseDown(inValue);
465   }
466
467   //--------------------------------------------------------------------------
468   @Override
469   public Span setOnMouseMove(String inValue)
470   {
471      return (Span) super.setOnMouseMove(inValue);
472   }
473
474   //--------------------------------------------------------------------------
475   @Override
476   public Span setOnMouseOut(String inValue)
477   {
478      return (Span) super.setOnMouseOut(inValue);
479   }
480
481   //--------------------------------------------------------------------------
482   @Override
483   public Span setOnMouseOver(String inValue)
484   {
485      return (Span) super.setOnMouseOver(inValue);
486   }
487
488   //--------------------------------------------------------------------------
489   @Override
490   public Span setOnMouseUp(String inValue)
491   {
492      return (Span) super.setOnMouseUp(inValue);
493   }
494
495   //--------------------------------------------------------------------------
496   @Override
497   public Span setOnKeyDown(String inValue)
498   {
499      return (Span) super.setOnKeyDown(inValue);
500   }
501
502   //--------------------------------------------------------------------------
503   @Override
504   public Span setOnKeyPress(String inValue)
505   {
506      return (Span) super.setOnKeyPress(inValue);
507   }
508
509   //--------------------------------------------------------------------------
510   @Override
511   public Span setOnKeyUp(String inValue)
512   {
513      return (Span) super.setOnKeyUp(inValue);
514   }
515}