Package io.guise.framework.platform.web
Class WebDropMenuDepictor<C extends Menu>
- java.lang.Object
-
- io.guise.framework.platform.AbstractDepictor<C>
-
- io.guise.framework.platform.AbstractComponentDepictor<C>
-
- io.guise.framework.platform.web.AbstractWebComponentDepictor<C>
-
- io.guise.framework.platform.web.AbstractWebLayoutComponentDepictor<C>
-
- io.guise.framework.platform.web.AbstractWebMenuDepictor<C>
-
- io.guise.framework.platform.web.WebDropMenuDepictor<C>
-
- Type Parameters:
C
- The type of component being depicted.
- All Implemented Interfaces:
ComponentDepictor<C>
,Depictor<C>
,WebComponentDepictor<C>
,WebDepictor<C>
public class WebDropMenuDepictor<C extends Menu> extends AbstractWebMenuDepictor<C>
Strategy for rendering a menu as a drop menu. The following illustrates a simplified drop menu structure.<div class="dropMenu" style="position:relative;"> <label>Menu</label> <div class="dropMenu-container" style="position:absolute;left:0%;top:100%;width:1000%"> <div class="dropMenu-body" style="position:absolute;left:0%;top:0%;"> <table class="layout-flow-y"> <tbody> <tr class="layout-flow-y"> <td class="layout-flow-y-child"><div> <a href=""><span>Submenu</span></a></div> </td> </tr> </tbody> </table> </div> </div> </div>
- Author:
- Garret Wilson
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class io.guise.framework.platform.AbstractComponentDepictor
AbstractComponentDepictor.DepictedCompositeComponentListener
-
Nested classes/interfaces inherited from class io.guise.framework.platform.AbstractDepictor
AbstractDepictor.DepictedPropertyChangeListener
-
-
Field Summary
-
Fields inherited from class io.guise.framework.platform.web.AbstractWebLayoutComponentDepictor
COLUMN_REGION_CLASSES, ROW_REGION_CLASSES
-
Fields inherited from class io.guise.framework.platform.web.AbstractWebComponentDepictor
BODY_END_PATTERN, BODY_START_PATTERN
-
Fields inherited from class io.guise.framework.platform.AbstractComponentDepictor
childPropertyChangeListener
-
Fields inherited from interface io.guise.framework.platform.Depictor
GENERAL_PROPERTY
-
-
Constructor Summary
Constructors Constructor Description WebDropMenuDepictor()
Default constructor using the XHTML<ol>
element.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
depictBegin()
Begins the depiction process.protected void
depictEnd()
Ends the depiction process.protected java.util.Map<java.lang.String,java.lang.Object>
getBodyStyles()
Retrieves the styles for the body element of the component.protected java.util.Map<java.lang.String,java.lang.Object>
getOuterStyles()
Retrieves the styles for the outer element of the component.-
Methods inherited from class io.guise.framework.platform.web.AbstractWebMenuDepictor
getBaseStyleIDs, processEvent
-
Methods inherited from class io.guise.framework.platform.web.AbstractWebLayoutComponentDepictor
beginRegion, beginRegion, depictChildren, getAlign, updateFlowChildView
-
Methods inherited from class io.guise.framework.platform.web.AbstractWebComponentDepictor
addFlowStyleIDs, decorateID, depict, depictBody, getBackgroundColor, getBodyStyleIDs, getColor, getDepictContext, getDepictName, getLabelStyles, getLabelStyles, getLabelStyles, getLocalName, getNamespaceURI, getPlatform, hasLabelContent, hasLabelContent, hasLabelContent, hasLabelContent, isEmptyElementAllowed, isMouseListener, writeBodyIDClassAttributes, writeClassAttribute, writeDirectionAttribute, writeDirectionAttribute, writeErrorMessage, writeFloatClear, writeIDAttribute, writeIDClassAttributes, writeLabel, writeLabelContent, writeLabelContent, writeLabelContent, writeLabelContent, writeLabelContent, writeLabelContent, writeParameterInputs, writeStyleAttribute, writeText
-
Methods inherited from class io.guise.framework.platform.AbstractComponentDepictor
depictChild, depictedObjectPropertyChange, getDepictedCompositeComponentListener, getErrorMessage, installed, uninstalled
-
Methods inherited from class io.guise.framework.platform.AbstractDepictor
getDepictedObject, getDepictedPropertyChangeListener, getIgnoredProperties, getModifiedProperties, getSession, isDepicted, setDepicted, setPropertyModified
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.guise.framework.platform.Depictor
getDepictedObject, getSession, installed, isDepicted, setDepicted, uninstalled
-
-
-
-
Method Detail
-
getOuterStyles
protected java.util.Map<java.lang.String,java.lang.Object> getOuterStyles()
Retrieves the styles for the outer element of the component. This version adds relative positioning to make the main part of the menu the containing block for absolute child positioning. //TODO del This version removes the visibility specification, allowing this to be controlled by client JavaScript.- Overrides:
getOuterStyles
in classAbstractWebComponentDepictor<C extends Menu>
- Returns:
- The styles for the outer element of the component, mapped to CSS property names.
- See Also:
AbstractWebComponentDepictor.getBodyStyles()
-
getBodyStyles
protected java.util.Map<java.lang.String,java.lang.Object> getBodyStyles()
Retrieves the styles for the body element of the component.This version returns the style for background color.
This version correctly positions the menu body for non-root menus using absolute positioning.
- Overrides:
getBodyStyles
in classAbstractWebComponentDepictor<C extends Menu>
- Returns:
- The styles for the body element of the component, mapped to CSS property names.
-
depictBegin
protected void depictBegin() throws java.io.IOException
Begins the depiction process.This version renders the beginning XML element information, if there is any, leaving the beginning tag open for attributes.
This version writes common XHTML attributes.
This version wraps the component in a decorator element.
- Overrides:
depictBegin
in classAbstractWebComponentDepictor<C extends Menu>
- Throws:
java.io.IOException
- if there is an error updating the depiction.
-
depictEnd
protected void depictEnd() throws java.io.IOException
Ends the depiction process.This version renders the ending XML element information, if there is any.
This version closes the decorator elements.
- Overrides:
depictEnd
in classAbstractWebComponentDepictor<C extends Menu>
- Throws:
java.io.IOException
- if there is an error updating the depiction.
-
-