edu.nrao.sss.webapp.faces.component
Class FloatingDialogUIComponent

java.lang.Object
  extended by javax.faces.component.UIComponent
      extended by javax.faces.component.UIComponentBase
          extended by edu.nrao.sss.webapp.faces.component.FloatingDialogUIComponent
All Implemented Interfaces:
StateHolder
Direct Known Subclasses:
ExitDialogUIComponent

public class FloatingDialogUIComponent
extends UIComponentBase

Provides a Floating dialog component that is popped up when a link is clicked. The contents of the link tag are the contents of the "linkContent" facet. linkStyleClass is rendered as the class of the a tag. The child components of this component are rendered inside a div as the contents of the popup dialog itself.

The styleClass attribute is rendered as the class attribute of a div wrapper around both the link and the hidden popup div. This attribute is usually specified and the associated css style usually has the position attribute set to either absolute or relative. This gives a new frame of reference for the popup dialog to be positioned at. However, since the dialogStyleClass attribute is mapped to the class attribute of the popup div, the user can position that popup anywhere really.

This class (and it's javascript) is aware of the javascript double submission solution that was implemented to prevent users from submitting a for multiple times. That solution uses a flag named processing to determine if it should allow a link to be clicked. Since we clicked a link to get the dialog to popup, the page would now disallow anymore buttons or links to be clicked until the page reloaded....clearly this will not work here. Therefore, the javascript here sets the processing flag to false if it exists.


Field Summary
static String LINK_CONTENT_FACET_NAME
           
 
Constructor Summary
FloatingDialogUIComponent()
           
 
Method Summary
 void encodeBegin(FacesContext context)
           
 void encodeChildren(FacesContext context)
           
 void encodeEnd(FacesContext context)
          closes our popup dialog's div
 Boolean getCloseOnClick()
           
 Boolean getCloseOnMouseOut()
           
 String getFamily()
           
 String getLinkId()
           
 Boolean getOpenOnClick()
           
 Boolean getOpenOnMouseOver()
           
 boolean getRendersChildren()
           
 String getTitle()
           
 Boolean isEnabled()
           
 void restoreState(FacesContext context, Object state)
           
 Object saveState(FacesContext context)
           
 void setCloseOnClick(Boolean c)
           
 void setCloseOnMouseOut(Boolean c)
           
 void setEnabled(Boolean e)
           
 void setLinkId(String id)
           
 void setOpenOnClick(Boolean o)
           
 void setOpenOnMouseOver(Boolean o)
           
 void setTitle(String t)
           
 
Methods inherited from class javax.faces.component.UIComponentBase
addFacesListener, broadcast, decode, findComponent, getAttributes, getChildCount, getChildren, getClientId, getFacesContext, getFacesListeners, getFacet, getFacets, getFacetsAndChildren, getId, getParent, getRenderer, getRendererType, getValueBinding, isRendered, isTransient, processDecodes, processRestoreState, processSaveState, processUpdates, processValidators, queueEvent, removeFacesListener, restoreAttachedState, saveAttachedState, setId, setParent, setRendered, setRendererType, setTransient, setValueBinding
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LINK_CONTENT_FACET_NAME

public static final String LINK_CONTENT_FACET_NAME
See Also:
Constant Field Values
Constructor Detail

FloatingDialogUIComponent

public FloatingDialogUIComponent()
Method Detail

getRendersChildren

public boolean getRendersChildren()
Overrides:
getRendersChildren in class UIComponentBase

encodeBegin

public void encodeBegin(FacesContext context)
                 throws IOException
Overrides:
encodeBegin in class UIComponentBase
Throws:
IOException

encodeChildren

public void encodeChildren(FacesContext context)
                    throws IOException
Overrides:
encodeChildren in class UIComponentBase
Throws:
IOException

encodeEnd

public void encodeEnd(FacesContext context)
               throws IOException
closes our popup dialog's div

Overrides:
encodeEnd in class UIComponentBase
Throws:
IOException

isEnabled

public Boolean isEnabled()

setEnabled

public void setEnabled(Boolean e)

setOpenOnMouseOver

public void setOpenOnMouseOver(Boolean o)

getOpenOnMouseOver

public Boolean getOpenOnMouseOver()

setOpenOnClick

public void setOpenOnClick(Boolean o)

getOpenOnClick

public Boolean getOpenOnClick()

setCloseOnMouseOut

public void setCloseOnMouseOut(Boolean c)

getCloseOnMouseOut

public Boolean getCloseOnMouseOut()

setCloseOnClick

public void setCloseOnClick(Boolean c)

getCloseOnClick

public Boolean getCloseOnClick()

getTitle

public String getTitle()

setTitle

public void setTitle(String t)

getLinkId

public String getLinkId()

setLinkId

public void setLinkId(String id)

saveState

public Object saveState(FacesContext context)
Specified by:
saveState in interface StateHolder
Overrides:
saveState in class UIComponentBase

restoreState

public void restoreState(FacesContext context,
                         Object state)
Specified by:
restoreState in interface StateHolder
Overrides:
restoreState in class UIComponentBase

getFamily

public String getFamily()
Specified by:
getFamily in class UIComponent


Copyright © 2009. All Rights Reserved.