001package com.hfg.html; 002 003import com.hfg.html.attribute.EncType; 004import com.hfg.xml.XMLNode; 005 006//------------------------------------------------------------------------------ 007/** 008 * Represents a form (<form>) 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 Form extends HTMLTag 034{ 035 036 //########################################################################### 037 // PRIVATE FIELDS 038 //########################################################################### 039 040 041 //########################################################################### 042 // CONSTRUCTORS 043 //########################################################################### 044 045 //-------------------------------------------------------------------------- 046 public Form() 047 { 048 super(HTML.FORM); 049 setAction(""); 050 } 051 052 //-------------------------------------------------------------------------- 053 public Form(String inFormName) 054 { 055 this(); 056 setName(inFormName); 057 } 058 059 //-------------------------------------------------------------------------- 060 public Form(XMLNode inXMLNode) 061 { 062 this(); 063 initFromXMLNode(inXMLNode); 064 } 065 066 //########################################################################### 067 // PUBLIC METHODS 068 //########################################################################### 069 070 071 //-------------------------------------------------------------------------- 072 public InputButton addButton() 073 { 074 InputButton button = new InputButton(); 075 addSubtag(button); 076 077 return button; 078 } 079 080 //-------------------------------------------------------------------------- 081 public InputButton addButton(String inName, String inValue) 082 { 083 InputButton button = new InputButton(inName, inValue); 084 addSubtag(button); 085 086 return button; 087 } 088 089 //-------------------------------------------------------------------------- 090 public InputCheckbox addCheckbox(String inName, String inValue) 091 { 092 InputCheckbox checkbox = new InputCheckbox(inName, inValue); 093 addSubtag(checkbox); 094 095 return checkbox; 096 } 097 098 //-------------------------------------------------------------------------- 099 public InputCheckbox addCheckbox(String inName, String inValue, boolean checked) 100 { 101 InputCheckbox checkbox = new InputCheckbox(inName, inValue, checked); 102 addSubtag(checkbox); 103 104 return checkbox; 105 } 106 107 108 //-------------------------------------------------------------------------- 109 public InputFile addFileInput() 110 { 111 InputFile subtag = new InputFile(); 112 addSubtag(subtag); 113 114 return subtag; 115 } 116 117 //-------------------------------------------------------------------------- 118 public InputFile addFileInput(String inName) 119 { 120 InputFile subtag = new InputFile(inName); 121 addSubtag(subtag); 122 123 return subtag; 124 } 125 126 //-------------------------------------------------------------------------- 127 public InputFile addFileInput(String inName, String inValue) 128 { 129 InputFile subtag = new InputFile(inName, inValue); 130 addSubtag(subtag); 131 132 return subtag; 133 } 134 135 136 //-------------------------------------------------------------------------- 137 public InputHidden addHiddenInput(String inName, String inValue) 138 { 139 InputHidden hidden = new InputHidden(inName, inValue); 140 addSubtag(hidden); 141 142 return hidden; 143 } 144 145 //-------------------------------------------------------------------------- 146 public InputHidden addHiddenInput(String inName, Object inValue) 147 { 148 InputHidden hidden = new InputHidden(inName, inValue); 149 addSubtag(hidden); 150 151 return hidden; 152 } 153 154 //-------------------------------------------------------------------------- 155 public InputHidden addHiddenInput(String inName, int inValue) 156 { 157 InputHidden hidden = new InputHidden(inName, inValue); 158 addSubtag(hidden); 159 160 return hidden; 161 } 162 163 //-------------------------------------------------------------------------- 164 public InputHidden addHiddenInput(String inName, long inValue) 165 { 166 InputHidden hidden = new InputHidden(inName, inValue); 167 addSubtag(hidden); 168 169 return hidden; 170 } 171 172 //-------------------------------------------------------------------------- 173 public InputHidden addHiddenInput(String inName, float inValue) 174 { 175 InputHidden hidden = new InputHidden(inName, inValue); 176 addSubtag(hidden); 177 178 return hidden; 179 } 180 181 //-------------------------------------------------------------------------- 182 public InputHidden addHiddenInput(String inName, double inValue) 183 { 184 InputHidden hidden = new InputHidden(inName, inValue); 185 addSubtag(hidden); 186 187 return hidden; 188 } 189 190 191 //-------------------------------------------------------------------------- 192 public Label addLabel() 193 { 194 Label label = new Label(); 195 addSubtag(label); 196 197 return label; 198 } 199 200 201 //-------------------------------------------------------------------------- 202 public Label addLabel(String inValue) 203 { 204 Label label = new Label(inValue); 205 addSubtag(label); 206 207 return label; 208 } 209 210 211 //-------------------------------------------------------------------------- 212 public InputPassword addPasswordInput() 213 { 214 InputPassword password = new InputPassword(); 215 addSubtag(password); 216 217 return password; 218 } 219 220 //-------------------------------------------------------------------------- 221 public InputPassword addPasswordInput(String inName, String inValue) 222 { 223 InputPassword password = new InputPassword(inName, inValue); 224 addSubtag(password); 225 226 return password; 227 } 228 229 //-------------------------------------------------------------------------- 230 public InputRadio addRadio(String inName, String inValue) 231 { 232 InputRadio radio = new InputRadio(inName, inValue); 233 addSubtag(radio); 234 235 return radio; 236 } 237 238 //-------------------------------------------------------------------------- 239 public InputRadio addRadio(String inName, String inValue, boolean checked) 240 { 241 InputRadio radio = new InputRadio(inName, inValue, checked); 242 addSubtag(radio); 243 244 return radio; 245 } 246 247 //-------------------------------------------------------------------------- 248 public InputReset addReset() 249 { 250 InputReset reset = new InputReset(); 251 addSubtag(reset); 252 253 return reset; 254 } 255 256 //-------------------------------------------------------------------------- 257 public Select addSelect(String inName) 258 { 259 Select select = new Select(inName); 260 addSubtag(select); 261 262 return select; 263 } 264 265 //-------------------------------------------------------------------------- 266 @Override 267 public Form addStyle(String inValue) 268 { 269 return (Form) super.addStyle(inValue); 270 } 271 272 //-------------------------------------------------------------------------- 273 public InputSubmit addSubmit() 274 { 275 InputSubmit submit = new InputSubmit(); 276 addSubtag(submit); 277 278 return submit; 279 } 280 281 //-------------------------------------------------------------------------- 282 public InputSubmit addSubmit(String inName, String inValue) 283 { 284 InputSubmit submit = new InputSubmit(inName, inValue); 285 addSubtag(submit); 286 287 return submit; 288 } 289 290 291 //-------------------------------------------------------------------------- 292 public Textarea addTextarea(String inName, String inValue) 293 { 294 Textarea textarea = new Textarea(inName, inValue); 295 addSubtag(textarea); 296 297 return textarea; 298 } 299 300 //-------------------------------------------------------------------------- 301 public Textarea addTextarea(String inName, String inValue, int inRows, int inCols) 302 { 303 Textarea textarea = new Textarea(inName, inValue, inRows, inCols); 304 addSubtag(textarea); 305 306 return textarea; 307 } 308 309 310 //-------------------------------------------------------------------------- 311 public InputText addTextInput() 312 { 313 InputText text = new InputText(); 314 addSubtag(text); 315 316 return text; 317 } 318 319 //-------------------------------------------------------------------------- 320 public InputText addTextInput(String inName, String inValue) 321 { 322 InputText text = new InputText(inName, inValue); 323 addSubtag(text); 324 325 return text; 326 } 327 328 329 330 331 332 333 //-------------------------------------------------------------------------- 334 public Center addCenter() 335 { 336 Center center = new Center(); 337 addSubtag(center); 338 339 return center; 340 } 341 342 //-------------------------------------------------------------------------- 343 public Center addCenter(String inContent) 344 { 345 Center center = new Center(inContent); 346 addSubtag(center); 347 348 return center; 349 } 350 351 //-------------------------------------------------------------------------- 352 public Center addCenter(HTMLTag inContent) 353 { 354 Center center = new Center(inContent); 355 addSubtag(center); 356 357 return center; 358 } 359 360 //-------------------------------------------------------------------------- 361 public Div addDiv() 362 { 363 Div subtag = new Div(); 364 addSubtag(subtag); 365 366 return subtag; 367 } 368 369 //-------------------------------------------------------------------------- 370 public Div addDiv(HTMLTag inContent) 371 { 372 Div subtag = new Div(inContent); 373 addSubtag(subtag); 374 375 return subtag; 376 } 377 378 //-------------------------------------------------------------------------- 379 public Img addImage(String inSrc) 380 { 381 Img image = new Img(inSrc); 382 addSubtag(image); 383 384 return image; 385 } 386 387 //-------------------------------------------------------------------------- 388 public Link addLink() 389 { 390 Link link = new Link(); 391 addSubtag(link); 392 393 return link; 394 } 395 396 //-------------------------------------------------------------------------- 397 public Link addLink(CharSequence inURL) 398 { 399 Link link = new Link(inURL); 400 addSubtag(link); 401 402 return link; 403 } 404 405 //-------------------------------------------------------------------------- 406 public Link addLink(CharSequence inURL, String inContent) 407 { 408 Link link = new Link(inURL, inContent); 409 addSubtag(link); 410 411 return link; 412 } 413 414 //-------------------------------------------------------------------------- 415 public Nobr addNobr() 416 { 417 Nobr nobr = new Nobr(); 418 addSubtag(nobr); 419 420 return nobr; 421 } 422 423 //-------------------------------------------------------------------------- 424 public Nobr addNobr(String inContent) 425 { 426 Nobr nobr = new Nobr(inContent); 427 addSubtag(nobr); 428 429 return nobr; 430 } 431 432 //-------------------------------------------------------------------------- 433 public Nobr addNobr(HTMLTag inContent) 434 { 435 Nobr nobr = new Nobr(inContent); 436 addSubtag(nobr); 437 438 return nobr; 439 } 440 441 //-------------------------------------------------------------------------- 442 public Pre addPre() 443 { 444 Pre pre = new Pre(); 445 addSubtag(pre); 446 447 return pre; 448 } 449 450 //-------------------------------------------------------------------------- 451 public Pre addPre(String inContent) 452 { 453 Pre pre = new Pre(inContent); 454 addSubtag(pre); 455 456 return pre; 457 } 458 459 //-------------------------------------------------------------------------- 460 public Pre addPre(HTMLTag inContent) 461 { 462 Pre pre = new Pre(inContent); 463 addSubtag(pre); 464 465 return pre; 466 } 467 468 //-------------------------------------------------------------------------- 469 public Span addSpan() 470 { 471 Span span = new Span(); 472 addSubtag(span); 473 474 return span; 475 } 476 477 //-------------------------------------------------------------------------- 478 public Span addSpan(String inContent) 479 { 480 Span span = new Span(inContent); 481 addSubtag(span); 482 483 return span; 484 } 485 486 //-------------------------------------------------------------------------- 487 public Span addSpan(HTMLTag inContent) 488 { 489 Span span = new Span(inContent); 490 addSubtag(span); 491 492 return span; 493 } 494 495 //-------------------------------------------------------------------------- 496 public Table addTable() 497 { 498 Table table = new Table(); 499 addSubtag(table); 500 501 return table; 502 } 503 504 //-------------------------------------------------------------------------- 505 public Ul addUnorderedList() 506 { 507 Ul ul = new Ul(); 508 addSubtag(ul); 509 510 return ul; 511 } 512 513 514 515 //-------------------------------------------------------------------------- 516 public Form setName(String inValue) 517 { 518 setAttribute(HTML.NAME, inValue); 519 520 return this; 521 } 522 523 //-------------------------------------------------------------------------- 524 public String getName() 525 { 526 return getAttributeValue(HTML.NAME); 527 } 528 529 //-------------------------------------------------------------------------- 530 public Form setMethod(String inValue) 531 { 532 setAttribute(HTML.METHOD, inValue); 533 534 return this; 535 } 536 537 //-------------------------------------------------------------------------- 538 public String getMethod() 539 { 540 return getAttributeValue(HTML.METHOD); 541 } 542 543 //-------------------------------------------------------------------------- 544 public Form usePost() 545 { 546 setAttribute(HTML.METHOD, "post"); 547 548 return this; 549 } 550 551 //-------------------------------------------------------------------------- 552 public Form useGet() 553 { 554 setAttribute(HTML.METHOD, "get"); 555 556 return this; 557 } 558 559 //-------------------------------------------------------------------------- 560 public Form setAction(String inValue) 561 { 562 setAttribute(HTML.ACTION, inValue); 563 564 return this; 565 } 566 567 //-------------------------------------------------------------------------- 568 public String getAction() 569 { 570 return getAttributeValue(HTML.ACTION); 571 } 572 573 //-------------------------------------------------------------------------- 574 public Form setTarget(String inValue) 575 { 576 setAttribute(HTML.TARGET, inValue); 577 578 return this; 579 } 580 581 //-------------------------------------------------------------------------- 582 public String getTarget() 583 { 584 return getAttributeValue(HTML.TARGET); 585 } 586 587 //-------------------------------------------------------------------------- 588 public Form setId(String inValue) 589 { 590 setAttribute(HTML.ID, inValue); 591 return this; 592 } 593 594 //-------------------------------------------------------------------------- 595 public Form setEnctype(String inValue) 596 { 597 setAttribute(HTML.ENCTYPE, inValue); 598 599 return this; 600 } 601 602 //-------------------------------------------------------------------------- 603 public Form useMultipartEncoding() 604 { 605 setAttribute(HTML.ENCTYPE, EncType.MULTIPART_FORM_DATA); 606 607 return this; 608 } 609 610 //-------------------------------------------------------------------------- 611 public Form useUrlEncoding() 612 { 613 setAttribute(HTML.ENCTYPE, EncType.URL_ENCODED); 614 615 return this; 616 } 617 618 //-------------------------------------------------------------------------- 619 public Form setOnSubmit(String inValue) 620 { 621 setAttribute(HTML.ONSUBMIT, inValue); 622 623 return this; 624 } 625 626 //-------------------------------------------------------------------------- 627 public String getOnSubmit() 628 { 629 return getAttributeValue(HTML.ONSUBMIT); 630 } 631 632 633 //-------------------------------------------------------------------------- 634 public Form setOnReset(String inValue) 635 { 636 setAttribute(HTML.ONRESET, inValue); 637 638 return this; 639 } 640 641 //-------------------------------------------------------------------------- 642 public void br() 643 { 644 HTMLUtil.br(this); 645 } 646 647 //-------------------------------------------------------------------------- 648 public void br(int inNumber) 649 { 650 HTMLUtil.br(this, inNumber); 651 } 652 653 //-------------------------------------------------------------------------- 654 public void nbsp(int inNumber) 655 { 656 HTMLUtil.nbsp(this, inNumber); 657 } 658 659 //-------------------------------------------------------------------------- 660 public void hr() 661 { 662 HTMLUtil.hr(this); 663 } 664 665 //-------------------------------------------------------------------------- 666 public void hr(String inWidth) 667 { 668 HTMLUtil.hr(this, inWidth); 669 } 670 671 672}