com.arsdigita.formbuilder.ui.editors
Class WidgetForm

java.lang.Object
  extended bycom.arsdigita.bebop.Completable
      extended bycom.arsdigita.bebop.SimpleComponent
          extended bycom.arsdigita.bebop.FormSection
              extended bycom.arsdigita.bebop.Form
                  extended bycom.arsdigita.formbuilder.ui.PropertiesForm
                      extended bycom.arsdigita.formbuilder.ui.editors.WidgetForm
All Implemented Interfaces:
BebopConstants, Cloneable, Component, Container, Lockable
Direct Known Subclasses:
HiddenForm, HiddenIDGeneratorForm, SubmitForm, WidgetLabelForm

public abstract class WidgetForm
extends PropertiesForm


Field Summary
protected static String DESCRIPTION
           
protected  TextArea m_description
           
protected  TextField m_name
           
protected static String NAME
           
 
Fields inherited from class com.arsdigita.bebop.Form
GET, POST, versionId
 
Fields inherited from class com.arsdigita.bebop.FormSection
m_formModel, m_panel
 
Fields inherited from class com.arsdigita.bebop.SimpleComponent
m_attr
 
Fields inherited from interface com.arsdigita.bebop.util.BebopConstants
BEBOP_BORDER, BEBOP_BOXPANEL, BEBOP_CELL, BEBOP_CHECKBOX, BEBOP_CHECKBOXGROUP, BEBOP_COLUMNPANEL, BEBOP_DATE, BEBOP_DATETIME, BEBOP_DHTMLEDITOR, BEBOP_FORMERRORS, BEBOP_FORMWIDGET, BEBOP_GRIDPANEL, BEBOP_LIST, BEBOP_MULTISELECT, BEBOP_OPTION, BEBOP_PAD, BEBOP_PADFRAME, BEBOP_PANELROW, BEBOP_PORTAL, BEBOP_PORTLET, BEBOP_RADIO, BEBOP_RADIOGROUP, BEBOP_SEG_BODY, BEBOP_SEG_HEADER, BEBOP_SEG_PANEL, BEBOP_SEGMENT, BEBOP_SELECT, BEBOP_TABLE, BEBOP_TABLEBODY, BEBOP_TABLEROW, BEBOP_TEXTAREA
 
Fields inherited from interface com.arsdigita.bebop.Component
BEBOP_XML_NS, CLASS, ID, ON_CLICK, STYLE
 
Constructor Summary
WidgetForm(String name, SingleSelectionModel form, SingleSelectionModel action)
           
 
Method Summary
protected  void addToForm(FormSectionEvent e, PersistentWidget widget)
           
protected  void addWidgets(FormSection section)
           
protected  void automaticallySetName(ParameterModel model)
          If this is called then the value of the widget that is used for the passed in model is used to auto-generate the value of the "name" value.
 void generateXML(PageState ps, Element parent)
          Writes the output to a DOM to be used with the XSLT template to produce the appropriate output.
protected  String getName(PageState pageState, FormData formData)
           
 SingleSelectionModel getSelection()
           
protected abstract  PersistentWidget getWidget()
           
protected abstract  PersistentWidget getWidget(BigDecimal id)
           
protected  PersistentWidget getWidget(PageState state)
           
protected  boolean includeRequiredRadioGroup()
          This determines whether or not the "required value" radio group is part of the form.
protected  void initWidgets(FormSectionEvent e, PersistentWidget widget)
           
protected  void processWidgets(FormSectionEvent e, PersistentWidget widget)
           
protected  boolean showDescription()
          Should the description be on the form? Can be overridden by sub classes.
protected  boolean showName()
          Should the HTML name be on the form? Can be overridden by sub classes.
 
Methods inherited from class com.arsdigita.formbuilder.ui.PropertiesForm
addButtons, createWidgets, getApplication, isCancelled, isComplete, setApplication
 
Methods inherited from class com.arsdigita.bebop.Form
addMagicTag, excludeParameterFromExport, generateErrors, generateXMLSansState, getAction, getFormData, getName, getProcessInvisible, isRedirecting, process, register, respond, setAction, setEncType, setFormData, setMethod, setName, setOnReset, setOnSubmit, setProcessInvisible, setRedirecting, toString, traverse
 
Methods inherited from class com.arsdigita.bebop.FormSection
add, add, addCancelListener, addInitListener, addProcessListener, addSubmissionListener, addValidationListener, children, contains, createInitListener, createProcessListener, createSubmissionListener, createValidationListener, fireCancel, fireInit, fireProcess, fireSubmitted, fireValidate, forwardInit, forwardProcess, forwardSubmission, forwardValidation, get, getModel, getPanel, indexOf, isEmpty, lock, register, removeCancelListener, removeInitListener, removeProcessListener, removeSubmissionListener, removeValidationListener, size
 
Methods inherited from class com.arsdigita.bebop.SimpleComponent
clone, exportAttributes, getAttribute, getClassAttr, getIdAttr, getKey, getMetaDataAttribute, getStyleAttr, hasAttributes, isLocked, isVisible, setAttribute, setClassAttr, setIdAttr, setKey, setMetaDataAttribute, setStyleAttr, setVisible
 
Methods inherited from class com.arsdigita.bebop.Completable
addCompletionListener, fireCompletionEvent
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.arsdigita.bebop.Component
getClassAttr, getIdAttr, getKey, getStyleAttr, isVisible, setClassAttr, setIdAttr, setKey, setStyleAttr, setVisible
 
Methods inherited from interface com.arsdigita.util.Lockable
isLocked
 

Field Detail

NAME

protected static final String NAME
See Also:
Constant Field Values

DESCRIPTION

protected static final String DESCRIPTION
See Also:
Constant Field Values

m_name

protected TextField m_name

m_description

protected TextArea m_description
Constructor Detail

WidgetForm

public WidgetForm(String name,
                  SingleSelectionModel form,
                  SingleSelectionModel action)
Method Detail

getSelection

public SingleSelectionModel getSelection()

getWidget

protected abstract PersistentWidget getWidget()

getWidget

protected abstract PersistentWidget getWidget(BigDecimal id)
                                       throws DataObjectNotFoundException
Throws:
DataObjectNotFoundException

getWidget

protected PersistentWidget getWidget(PageState state)

addWidgets

protected void addWidgets(FormSection section)
Overrides:
addWidgets in class PropertiesForm

automaticallySetName

protected void automaticallySetName(ParameterModel model)
If this is called then the value of the widget that is used for the passed in model is used to auto-generate the value of the "name" value. For instance, if you want the label to dictate the "name" then you would pass in the label ParameterModel and add the following to the labelWidget: labelWidget.setOnFocus("if (this.form." + NAME + ".value == '') { " + " defaulting = true; this.form." + NAME + ".value = urlize(this.value); }"); labelWidget.setOnKeyUp( "if (defaulting) { this.form." + NAME + ".value = urlize(this.value) }" ); This can only be called after calling addWidgets()


includeRequiredRadioGroup

protected boolean includeRequiredRadioGroup()
This determines whether or not the "required value" radio group is part of the form. This returns true and should be overridden by fields where it does not make sense to ask. For instance, when the widget is a hidden field then asking if it is required or not does not make any logical sense so those widgets should return false. This will always return the same value for a given widget no matter what state the widget is in.


generateXML

public void generateXML(PageState ps,
                        Element parent)
Description copied from class: Form
Writes the output to a DOM to be used with the XSLT template to produce the appropriate output. If the form is not visible, no output is generated.

Generates a DOM fragment:

 <bebop:form action=%url; %bebopAttr;>
   .. XML for panel ..
   .. XML for page state ..
 </bebop:form>
 

Specified by:
generateXML in interface Component
Overrides:
generateXML in class Form
Parameters:
ps - the page state used to determine the values of form widgets and page state attributes
parent - the XML element to which the form adds its XML representation
See Also:
PageState.generateXML(com.arsdigita.xml.Element)

showName

protected boolean showName()
Should the HTML name be on the form? Can be overridden by sub classes.


showDescription

protected boolean showDescription()
Should the description be on the form? Can be overridden by sub classes.


initWidgets

protected void initWidgets(FormSectionEvent e,
                           PersistentWidget widget)
                    throws FormProcessException
Throws:
FormProcessException

processWidgets

protected void processWidgets(FormSectionEvent e,
                              PersistentWidget widget)
                       throws FormProcessException
Throws:
FormProcessException

getName

protected String getName(PageState pageState,
                         FormData formData)

addToForm

protected void addToForm(FormSectionEvent e,
                         PersistentWidget widget)
                  throws FormProcessException
Throws:
FormProcessException


Copyright (c) 2004 Red Hat, Inc. Corporation. All Rights Reserved. Generated at July 20 2004:2337 UTC