fi.hut.tml.xsmiles.mlfc.xforms.dom
Class SelectElementImpl

java.lang.Object
  extended byorg.apache.xerces.dom.NodeImpl
      extended byorg.apache.xerces.dom.ChildNode
          extended byorg.apache.xerces.dom.ParentNode
              extended byorg.apache.xerces.dom.ElementImpl
                  extended byorg.apache.xerces.dom.ElementNSImpl
                      extended byfi.hut.tml.xsmiles.dom.XSmilesElementImpl
                          extended byfi.hut.tml.xsmiles.dom.VisualElementImpl
                              extended byfi.hut.tml.xsmiles.mlfc.xforms.dom.XFormsElementImpl
                                  extended byfi.hut.tml.xsmiles.mlfc.xforms.dom.DynBoundElementImpl
                                      extended byfi.hut.tml.xsmiles.mlfc.xforms.dom.XFormsControl
                                          extended byfi.hut.tml.xsmiles.mlfc.xforms.dom.SelectElementImpl
All Implemented Interfaces:
java.awt.event.ActionListener, java.lang.Cloneable, CompoundService, CSSStyleChangeListener, DynamicDependencyListener, org.w3c.dom.Element, ElementWithContext, java.util.EventListener, org.w3c.dom.events.EventListener, org.w3c.dom.events.EventTarget, ExpressionContainer, FlowLayoutElement, java.awt.event.FocusListener, InitializableElement, InstanceItemListener, java.awt.event.ItemListener, LabeledElement, java.awt.event.MouseListener, org.w3c.dom.Node, org.w3c.dom.NodeList, PseudoClassController, PseudoElementContainerService, ResourceFetcher, SelectElement, java.io.Serializable, StylableElement, org.w3c.dom.TypeInfo, VisualElement, XFormsConstants, XFormsElement, XSmilesLayoutReference
Direct Known Subclasses:
SelectManyElementImpl, SelectOneElementImpl

public abstract class SelectElementImpl
extends XFormsControl
implements org.w3c.dom.events.EventListener, java.awt.event.ItemListener, SelectElement

Abstract select element

Author:
Mikko Honkala
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class fi.hut.tml.xsmiles.mlfc.xforms.dom.XFormsControl
XFormsControl.ValuePseudoElement
 
Nested classes inherited from class fi.hut.tml.xsmiles.dom.XSmilesElementImpl
XSmilesElementImpl.PseudoNodeList
 
Field Summary
protected  boolean internalModificationInProcess
          METHODS FOR LISTENING TO DOM MUTATION EVENTS FROM THE INSTANCE
protected  boolean isInputComponent
           
protected  java.util.Vector items
          The items of this select
protected  XSelect select
          the abstract select component that the subclass creates
 
Fields inherited from class fi.hut.tml.xsmiles.mlfc.xforms.dom.XFormsControl
captionComp, component, componentInited, compoundService, incremental, inputMode, insideUpdateEvent, isOutput, outOfRange, pseudoElements, valuePseudoElement
 
Fields inherited from class fi.hut.tml.xsmiles.mlfc.xforms.dom.DynBoundElementImpl
bind, BINDING_ATTRIBUTES_NOT_FOUND, BINDING_FAILED, BINDING_OK, binding_state, bindingAttributesRequired, BOUND_NODE_NOT_FOUND, contextNode, init, myModel, refExpr, UNINITIALIZED
 
Fields inherited from class fi.hut.tml.xsmiles.mlfc.xforms.dom.XFormsElementImpl
debugEvents, EVENTS_NS, handler, inited, ownerDoc
 
Fields inherited from class fi.hut.tml.xsmiles.dom.VisualElementImpl
views
 
Fields inherited from class fi.hut.tml.xsmiles.dom.XSmilesElementImpl
DESTROYED, elementStatus, INITIALIZED, INITIALIZING, setPseudoClasses, style, xblpropname
 
Fields inherited from class org.apache.xerces.dom.ElementNSImpl
localName, namespaceURI
 
Fields inherited from class org.apache.xerces.dom.ElementImpl
attributes, name
 
Fields inherited from class org.apache.xerces.dom.ParentNode
firstChild, fNodeListCache, ownerDocument
 
Fields inherited from class org.apache.xerces.dom.ChildNode
nextSibling, previousSibling
 
Fields inherited from class org.apache.xerces.dom.NodeImpl
DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_IS_CONTAINED, DOCUMENT_POSITION_PRECEDING, ELEMENT_DEFINITION_NODE, FIRSTCHILD, flags, HASSTRING, ID, IGNORABLEWS, OWNED, ownerNode, READONLY, SPECIFIED, SYNCCHILDREN, SYNCDATA, TREE_POSITION_ANCESTOR, TREE_POSITION_DESCENDANT, TREE_POSITION_DISCONNECTED, TREE_POSITION_EQUIVALENT, TREE_POSITION_FOLLOWING, TREE_POSITION_PRECEDING, TREE_POSITION_SAME_NODE, UNNORMALIZED
 
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
 
Fields inherited from interface fi.hut.tml.xsmiles.mlfc.xforms.XFormsConstants
ACCESSKEY, ACTION_ATTRIBUTE, ACTION_ELEMENT, ACTIVATE_EVENT, ACTIVE_CASE_PSEUDOCLASS, ALERT_ELEMENT, ALERT_EVENT, APPEARANCE_ATTRIBUTE, AT_ATTRIBUTE, BasicDataFactoryClassName, BEFORE_ATTRIBUTE, BIND_ATTRIBUTE, BIND_ELEMENT, BINDING_EXCEPTION, BLUR_EVENT, BUBBLES_ATTRIBUTE, BUTTON_ELEMENT, CALCULATE_ATTRIBUTE, CANCELABLE_ATTRIBUTE, CAPTION_CHANGED, CAPTION_ELEMENT, CASE_ATTRIBUTE, CASE_ELEMENT, CDATA_SECTION_ELEMENTS_ATTRIBUTE, CHOICES_ELEMENT, COMPUTE_EXCEPTION, CONSTRAINT_ATTRIBUTE, CONTROL_ATTRIBUTE, COPY_ELEMENT, DELETE_ELEMENT, DELETE_EVENT, DESELECT_EVENT, DESTROY_ELEMENT, DESTROY_EVENT, DISABLED_EVENT, DISABLED_PSEUDOCLASS, DISPATCH_ELEMENT, DUPLICATE_ELEMENT, DUPLICATE_EVENT, ENABLED_EVENT, ENABLED_PSEUDOCLASS, ENCODING_ATTRIBUTE, END_ATTRIBUTE, EXTENSION, EXTERNAL_LINKING_ATTR, FILENAME, FILENAME_ELEMENT, FOCUS_EVENT, FOCUSIN_NOTIFICATION_EVENT, FOCUSOUT_NOTIFICATION_EVENT, FUNC_INDEX, FUNC_NODEINDEX, FUNCTIONS_ATTRIBUTE, GROUP, GROUP_ELEMENT, HELP, HELP_ELEMENT, HELP_EVENT, HINT, HINT_ELEMENT, HINT_EVENT, INACTIVE_CASE_PSEUDOCLASS, INCLUDENAMESPACEPREFIXES_ATTRIBUTE, INCREMENTAL_ATTRIBUTE, INDENT_ATTRIBUTE, INDEX_ATTRIBUTE, INPUT, INPUT_ELEMENT, INPUTMODE_ATTRIBUTE, INRANGE_EVENT, INRANGE_PSEUDOCLASS, INSERT, INSERT_ELEMENT, INSERT_EVENT, INSTANCE, INSTANCE_ELEMENT, InstanceDocumentClassname, INVALID_DATATYPE_ERROR, INVALID_EVENT, INVALID_PSEUDOCLASS, ISVALID_ATTRIBUTE, ITEM, ITEM_ELEMENT, ITEMSET, ITEMSET_ELEMENT, LABEL, LEVEL_ATTRIBUTE, LINK_ERROR, LINK_EXCEPTION, LOAD, LOADURI_ELEMENT, MAXOCCURS_ATTRIBUTE, MEDIA_TYPE_ELEMENT, MEDIARENDERING_PSEUDOCLASS, MEDIATYPE, MEDIATYPE_ATTRIBUTE, MESSAGE, MESSAGE_ELEMENT, METHOD_ATTRIBUTE, MINOCCURS_ATTRIBUTE, MODEL_ATTRIBUTE, MODEL_CONSTRUCT_DONE_EVENT, MODEL_CONSTRUCT_EVENT, MODEL_DESTRUCT_EVENT, MODEL_ELEMENT, MODEL_ID_ATTRIBUTE, NAME_ATTRIBUTE, NAVINDEX_ATTRIBUTE, NEXT_EVENT, NODESET_ATTRIBUTE, NUMBER_ATTRIBUTE, OMIT_XML_DECLARATION_ATTRIBUTE, OPTIONAL_EVENT, ORIGIN_ATTRIBUTE, OUTOFRANGE_EVENT, OUTOFRANGE_PSEUDOCLASS, OUTPUT_ELEMENT, P3PTYPE_ATTRIBUTE, POSITION_ATTRIBUTE, PREVIOUS_EVENT, PSVIDocumentClassname, PSVISchemaPoolClassName, RANGE, RANGE_ELEMENT, READONLY_ATTRIBUTE, READONLY_EVENT, READONLY_PSEUDOCLASS, READWRITE_EVENT, READWRITE_PSEUDOCLASS, READY_EVENT, REBUILD_ELEMENT, REBUILD_EVENT, RECALCULATE_ELEMENT, RECALCULATE_EVENT, REF_ATTRIBUTE, REFRESH_ELEMENT, REFRESH_EVENT, RELEVANT_ATTRIBUTE, REPEAT, REPEAT_ATTRIBUTE, REPEAT_BIND_ATTRIBUTE, REPEAT_ELEMENT, REPEAT_ID_ATTRIBUTE, REPEAT_MODEL_ATTRIBUTE, REPEAT_NODESET_ATTRIBUTE, REPEAT_NUMBER_ATTRIBUTE, REPEAT_STARTINDEX_ATTRIBUTE, REPLACE_ALL, REPLACE_ATTRIBUTE, REPLACE_INSTANCE, REPLACE_NEW, REPLACE_NONE, REQUIRED_ATTRIBUTE, REQUIRED_EVENT, RESET, RESET_ELEMENT, RESET_EVENT, RESOURCE_ATTRIBUTE, RESOURCE_LINKING_ATTR, REVALIDATE, REVALIDATE_ELEMENT, REVALIDATE_EVENT, SCHEMA_ATTRIBUTE, SCHEMA_CONSTRAINTS_ERROR, SCHEMA_ELEMENT, SCROLL_FIRST_EVENT, SCROLL_LAST_EVENT, SECRET, SECRET_ELEMENT, SELECT, SELECT_BOOLEAN_ELEMENT, SELECT_EVENT, SELECT_MANY_ELEMENT, SELECT_ONE_ELEMENT, SELECT1, SELECTED_ATTRIBUTE, SELECTION_ATTRIBUTE, SEND, SEPARATOR_ATTRIBUTE, SET_FOCUS_ELEMENT, SET_INDEX_ELEMENT, SETFOCUS, SETINDEX, SETVALUE, SETVALUE_ELEMENT, SHOW_ATTR, SHOW_ATTRIBUTE, SHOW_NEW, SHOW_REPLACE, SRC_ATTRIBUTE, STANDALONE_ATTRIBUTE, START_ATTRIBUTE, STARTINDEX_ATTRIBUTE, STEP_ATTRIBUTE, SUBMISSION, SUBMISSION_ATTRIBUTE, SUBMIT, SUBMIT_DONE_EVENT, SUBMIT_ELEMENT, SUBMIT_ERROR, SUBMIT_EVENT, SUBMIT_INFO_ATTRIBUTE, SUBMIT_INFO_ELEMENT, SUBMIT_INSTANCE_ELEMENT, SUBMIT_STARTED_EVENT, SUBTREE_MODIFY_END, SUBTREE_MODIFY_START, SWITCH, SWITCH_ELEMENT, TARGET_ATTRIBUTE, TEXTAREA, TEXTAREA_ELEMENT, TOGGLE, TOGGLE_ELEMENT, TRAVERSAL_ERROR, TREE_ELEMENT, TRIGGER, TYPE_ATTRIBUTE, UI_INITIALIZE_EVENT, UPLOAD, UPLOAD_ELEMENT, VALID_EVENT, VALID_PSEUDOCLASS, VALUE, VALUE_ATTRIBUTE, VALUE_CHANGED_EVENT, VALUE_CHANGING_EVENT, VALUE_ELEMENT, VERSION_ATTRIBUTE, XercesPSVIClassName, XFORMS_NS, XFormsConfigurationPSVI, XHTML_NS, XSMILES_MESSAGE_SHOWN_EVENT
 
Constructor Summary
SelectElementImpl(XFormsElementHandler owner, java.lang.String ns, java.lang.String name)
          Constructs a new 'select' control (exclusiveSelect or multipleSelect)
 
Method Summary
protected  void appendSubtree(CopyElementImpl copy, InstanceNode target)
           
 XComponent createComponent()
          Creates the visible containing component of this control
 void destroy()
          Destroy this element and its descendants recursively.
 ItemElementImpl findItem(int index)
           
 ItemElementImpl findItem(java.lang.String value)
           
 java.util.Vector getItems()
          this accessor function returns all the ancestor items note: it also returns all the items that are created using itemset.
 void handleEvent(org.w3c.dom.events.Event evt)
          The DOM event handler This method gets all changes to the contents of the select, and will then rebuild the select
 void init()
          Initialize this element.
protected  void initializeItems()
          init and reinit calls this method to initialize the items
protected  boolean isOpenSelection()
           
protected  void registerListener()
          register item listener
 void reinitializeItems()
          this method is called when the items are added or removed
protected  void removeAllMutationListeners(org.w3c.dom.Node n)
           
protected  void removeChildElements(InstanceNode target)
           
protected  void replaceSubtree(CopyElementImpl copy, InstanceNode target)
          replace the whole subtree by a value from the copy element
 void setHint(HintElementImpl h)
          Sets the components Tooltip (Hint) text
protected  void userSelected(ItemElementImpl item)
           
 
Methods inherited from class fi.hut.tml.xsmiles.mlfc.xforms.dom.XFormsControl
actionPerformed, addCaption, changeComponentValue, checkBindingState, checkCaption, checkInitialMIPState, checkStyling, checkValidity, checkVisibility, checkVisibility, clone, clonePseudoElements, componentInit, createValuePseudoElement, dispatchEvent, doHelp, focusGained, focusLost, formatCaption, formatComponent, getAppearance, getCaption, getCaption, getCaptionSide, getCaptionText, getDatatypeId, getECMAScripter, getIncremental, getInstanceItemListener, getLabelAsText, getOutputValue, getOwnerStyle, getParentNodeForPseudoElement, getParentOwnerDocument, getPseudoElements, getVisualComponent, isPseudoClass, isVisible, mouseClicked, mouseEntered, mouseExited, mousePressed, mouseReleased, notifyBindingChanged, notifyError, notifyPseudoRemoved, setAttribute, setAttributeNode, setAttributeValue, setInputMode, setOutOfRange, setReadonly, setRefNodeValue, setRequired, styleChanged, valueChanged
 
Methods inherited from class fi.hut.tml.xsmiles.mlfc.xforms.dom.DynBoundElementImpl
bindingMaybeDirty, checkBindAttribute, checkBinding, checkModelAttribute, destroyBinding, evaluateRefNode, getBind, getBindingState, getBindingType, getBoundNodeset, getChildText, getContextForDescendant, getContextNode, getContextNodeList, getModel, getModelContext, getNamespaceContextNode, getParentBoundElement, getRef, getRefNode, getRefNodeValue, getRefXPathExpr, getTextWithPrecedence, getXPath, getXPathEngine, hasBindingAttributes, isSameModel, isSingleNodeBinding, notifyBindingChangedRecursively, notifyParentBindingChanged, renewBinding, resetContextNode, setContextNode
 
Methods inherited from class fi.hut.tml.xsmiles.mlfc.xforms.dom.XFormsElementImpl
debugNode, dispatch, dispatch, dispatchActivateEvent, dispatchClickEvent, findFirstRelevantControl, getBrowser, getClassName, getComponentFactory, getId, getModel, getModelId, getModelInScope, getSrc, getStyleAttrValue, getXMLDocument, handleXFormsException, initializeXMLEvents, isCSSLayoutDoc, moveNodes, printEvent, removeAllChildren, retrieveInstanceItem, retrieveResourceAsString, serializeNode, setClassName, setHandler, setId, setOwnerDoc
 
Methods inherited from class fi.hut.tml.xsmiles.dom.VisualElementImpl
addView, belongsToTree, getViews, insertBefore, isCurrentlyVisible, isFocusPoint, isVisibleByCSSProperties, removeAllViews, removeAttribute, removeChild, replaceChild, setStatus, updateViews
 
Methods inherited from class fi.hut.tml.xsmiles.dom.XSmilesElementImpl
addBinding, addUndistributedChild, cloneSubtree, debugNode, dispatchEventInMainThread, get, getApplyBindingSheets, getAuthorSheets, getChildNodes, getElementStatus, getOriginalClone, getPseudoClass, getResourceReferencer, getRuleNode, getStyle, getText, getText, getUndistributedChildNodes, getXblImplementations, hasBinding, hasStyle, initFinalFlattenedTree, initStyle, isInitedForReset, removeBinding, removeUndistributedChild, replaceNode, resetFinalFlattenedTree, resolveURI, searchElementWithId, searchElementWithId, setApplyBindingSheets, setAuthorSheets, setPseudoClass, setRuleNode, setStyle, updateStyle
 
Methods inherited from class org.apache.xerces.dom.ElementNSImpl
getBaseURI, getLocalName, getNamespaceURI, getPrefix, getTypeName, getTypeNamespace, setPrefix, setType, setValues
 
Methods inherited from class org.apache.xerces.dom.ElementImpl
cloneNode, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getDefaultAttributes, getElementsByTagName, getElementsByTagNameNS, getNodeName, getNodeType, getSchemaTypeInfo, getTagName, getXercesAttribute, hasAttribute, hasAttributeNS, hasAttributes, isEqualNode, normalize, reconcileDefaultAttributes, removeAttributeNode, removeAttributeNS, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS, setReadOnly, setupDefaultAttributes, setXercesAttributeNode, synchronizeData
 
Methods inherited from class org.apache.xerces.dom.ParentNode
getChildNodes, getChildNodesUnoptimized, getFirstChild, getLastChild, getLength, getOwnerDocument, getTextContent, hasChildNodes, item, setTextContent, synchronizeChildren
 
Methods inherited from class org.apache.xerces.dom.ChildNode
getNextSibling, getParentNode, getPreviousSibling
 
Methods inherited from class org.apache.xerces.dom.NodeImpl
addEventListener, appendChild, changed, changes, compareDocumentPosition, compareTreePosition, getContainer, getFeature, getNodeNumber, getNodeValue, getReadOnly, getUserData, getUserData, isDefaultNamespace, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, needsSyncChildren, removeEventListener, setNodeValue, setUserData, setUserData, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.event.ItemListener
itemStateChanged
 
Methods inherited from interface fi.hut.tml.xsmiles.dom.StylableElement
getRuleNode, getStyle, getStyleAttrValue, hasStyle, setRuleNode, setStyle
 
Methods inherited from interface org.w3c.dom.Element
getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getElementsByTagName, getElementsByTagNameNS, getTagName, hasAttribute, hasAttributeNS, removeAttribute, removeAttributeNode, removeAttributeNS, setAttributeNodeNS, setAttributeNS
 
Methods inherited from interface org.w3c.dom.Node
appendChild, cloneNode, getAttributes, getChildNodes, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, hasAttributes, hasChildNodes, insertBefore, isSupported, normalize, removeChild, replaceChild, setNodeValue, setPrefix
 
Methods inherited from interface fi.hut.tml.xsmiles.dom.VisualElement
getStyle
 
Methods inherited from interface fi.hut.tml.xsmiles.dom.PseudoClassController
getPseudoClass, setPseudoClass
 

Field Detail

isInputComponent

protected boolean isInputComponent

items

protected java.util.Vector items
The items of this select


select

protected XSelect select
the abstract select component that the subclass creates


internalModificationInProcess

protected boolean internalModificationInProcess
METHODS FOR LISTENING TO DOM MUTATION EVENTS FROM THE INSTANCE

Constructor Detail

SelectElementImpl

public SelectElementImpl(XFormsElementHandler owner,
                         java.lang.String ns,
                         java.lang.String name)
Constructs a new 'select' control (exclusiveSelect or multipleSelect)

Method Detail

init

public void init()
Description copied from class: XSmilesElementImpl
Initialize this element.

Specified by:
init in interface XFormsElement
Overrides:
init in class XFormsControl

createComponent

public XComponent createComponent()
Creates the visible containing component of this control

Specified by:
createComponent in class XFormsControl

registerListener

protected void registerListener()
register item listener

Overrides:
registerListener in class XFormsControl

initializeItems

protected void initializeItems()
init and reinit calls this method to initialize the items


reinitializeItems

public void reinitializeItems()
this method is called when the items are added or removed


destroy

public void destroy()
Description copied from class: XSmilesElementImpl
Destroy this element and its descendants recursively. NOTE: When overriding this method, please be sure to call super.destroy(), otherwise the destroy call will not propagate. NOTE: Actually, the recursion, which destroys the elements should be here, because usually everybody forgets to call super.destroy when overriding, thus causing the destroy sceme to break down.

Specified by:
destroy in interface XFormsElement
Overrides:
destroy in class XFormsControl

getItems

public java.util.Vector getItems()
this accessor function returns all the ancestor items note: it also returns all the items that are created using itemset.

Specified by:
getItems in interface SelectElement

findItem

public ItemElementImpl findItem(java.lang.String value)

findItem

public ItemElementImpl findItem(int index)

setHint

public void setHint(HintElementImpl h)
Description copied from class: XFormsControl
Sets the components Tooltip (Hint) text

Overrides:
setHint in class XFormsControl

userSelected

protected void userSelected(ItemElementImpl item)

handleEvent

public void handleEvent(org.w3c.dom.events.Event evt)
The DOM event handler This method gets all changes to the contents of the select, and will then rebuild the select

Specified by:
handleEvent in interface org.w3c.dom.events.EventListener
Overrides:
handleEvent in class XFormsControl

removeAllMutationListeners

protected void removeAllMutationListeners(org.w3c.dom.Node n)

removeChildElements

protected void removeChildElements(InstanceNode target)

replaceSubtree

protected void replaceSubtree(CopyElementImpl copy,
                              InstanceNode target)
replace the whole subtree by a value from the copy element


appendSubtree

protected void appendSubtree(CopyElementImpl copy,
                             InstanceNode target)

isOpenSelection

protected boolean isOpenSelection()


X-Smiles 1.2