org.kuali.rice.krad.uif.layout
Interface LayoutManager

All Superinterfaces:
Cloneable, Copyable, DictionaryBean, LifecycleElement, Serializable, UifDictionaryBean
All Known Subinterfaces:
CollectionLayoutManager, GridLayoutManager, StackedLayoutManager, TableLayoutManager
All Known Implementing Classes:
BoxLayoutManager, CssGridLabelColumnLayoutManager, CssGridLayoutManager, CssGridLayoutManagerBase, GridLayoutManagerBase, LayoutManagerBase, ListLayoutManager, SimpleLayoutManager, StackedLayoutManagerBase, TableLayoutManagerBase

public interface LayoutManager
extends UifDictionaryBean, LifecycleElement, Serializable

Manages the rendering of Component instances within a Container

Author:
Kuali Rice Team (rice.collab@kuali.org)

Method Summary
 void addStyleClass(String styleClass)
          This method adds a single style class to the list of css style classes on this component
 void appendToStyle(String styleRules)
          Appends to the inline style set on this layoutManager
 List<String> getAdditionalCssClasses()
           
 Map<String,Object> getContext()
          Context map for the layout manager
 List<String> getCssClasses()
          CSS style class(s) to be applied to the area (div) the layout manager generates for the items
 List<String> getLibraryCssClasses()
           
 List<PropertyReplacer> getPropertyReplacers()
          List of PropertyReplacer instances that will be evaluated during the view lifecycle to conditional set properties on the LayoutManager based on expression evaluations
 String getStyle()
          CSS style string to be applied to the area (div) the layout manager generates for the items
 Class<? extends Container> getSupportedContainer()
          Determines what Container classes are supported by the LayoutManager
 String getTemplate()
          The path to the JSP file that should be called to invoke the layout manager
 String getTemplateName()
          The name for which the template can be invoked by
 void setAdditionalCssClasses(List<String> libraryClasses)
           
 void setContext(Map<String,Object> context)
          Setter for the context Map
 void setCssClasses(List<String> styleClasses)
          Setter for the layout manager div style class
 void setLibraryCssClasses(List<String> libraryClasses)
           
 void setPropertyReplacers(List<PropertyReplacer> propertyReplacers)
          Setter for the layout managers property substitutions
 void setStyle(String style)
          Setter for the layout manager div style
 void setTemplate(String template)
          Setter for the layout managers template
 void setTemplateName(String templateName)
          Setter for the name of the template (a name which can be used to invoke)
 
Methods inherited from interface org.kuali.rice.krad.datadictionary.uif.UifDictionaryBean
getExpressionGraph, getPropertyExpression, getPropertyExpressions, setExpressionGraph, setPropertyExpressions
 
Methods inherited from interface org.kuali.rice.krad.datadictionary.DictionaryBean
dataDictionaryPostProcessing, getComponentCode, getNamespaceCode
 
Methods inherited from interface org.kuali.rice.krad.uif.util.LifecycleElement
checkMutable, getId, getPhasePathMapping, getViewPath, getViewStatus, initializePendingTasks, isFinal, isInitialized, isModelApplied, isMutable, notifyCompleted, performApplyModel, performFinalize, performInitialization, pushAllToContext, pushObjectToContext, setId, setPhasePathMapping, setViewPath, setViewStatus, skipLifecycle
 
Methods inherited from interface org.kuali.rice.krad.datadictionary.Copyable
clone, copy, preventModification, unwrap
 

Method Detail

getTemplate

String getTemplate()
The path to the JSP file that should be called to invoke the layout manager

The path should be relative to the web root. All layout manager templates receive the list of items of be placed, the configured layout manager, and the container to which the layout manager applies

e.g. '/krad/WEB-INF/jsp/tiles/boxLayout.jsp'

Returns:
String representing the template path

setTemplate

void setTemplate(String template)
Setter for the layout managers template

Parameters:
template -

getTemplateName

String getTemplateName()
The name for which the template can be invoked by

Whether the template name is needed depends on the underlying rendering engine being used. In the example of Freemarker, the template points to the actual source file, which then loads a macro. From then on the macro is simply invoked to execute the template

e.g. 'uif_grid'

Returns:
template name

setTemplateName

void setTemplateName(String templateName)
Setter for the name of the template (a name which can be used to invoke)

Parameters:
templateName -

getSupportedContainer

Class<? extends Container> getSupportedContainer()
Determines what Container classes are supported by the LayoutManager

Returns:
Class container class supported

getStyle

String getStyle()
CSS style string to be applied to the area (div) the layout manager generates for the items

Note the styleClass/style configured on the Container applies to all the container content (header, body, footer), while the styleClass/style configured on the LayoutManager only applies to the div surrounding the items placed by the manager (the container's body)

Any style override or additions can be specified with this attribute. This is used by the renderer to set the style attribute on the corresponding element.

e.g. 'color: #000000;text-decoration: underline;'

Returns:
String css style string

setStyle

void setStyle(String style)
Setter for the layout manager div style

Parameters:
style -

getLibraryCssClasses

List<String> getLibraryCssClasses()

setLibraryCssClasses

void setLibraryCssClasses(List<String> libraryClasses)

getCssClasses

List<String> getCssClasses()
CSS style class(s) to be applied to the area (div) the layout manager generates for the items

Note the styleClass/style configured on the Container applies to all the container content (header, body, footer), while the styleClass/style configured on the LayoutManager only applies to the div surrounding the items placed by the manager (the container's body)

Declares additional style classes for the div. Multiple classes are specified with a space delimiter. This is used by the renderer to set the class attribute on the corresponding element. The class(s) declared must be available in the common style sheets or the style sheets specified for the view

e.g. 'header left'

Returns:
List css style classes to apply

setCssClasses

void setCssClasses(List<String> styleClasses)
Setter for the layout manager div style class

Parameters:
styleClasses -

getAdditionalCssClasses

List<String> getAdditionalCssClasses()

setAdditionalCssClasses

void setAdditionalCssClasses(List<String> libraryClasses)

addStyleClass

void addStyleClass(String styleClass)
This method adds a single style class to the list of css style classes on this component

Parameters:
styleClass -

getContext

Map<String,Object> getContext()
Context map for the layout manager

Returns:
Map context
See Also:
Component.getContext()

appendToStyle

void appendToStyle(String styleRules)
Appends to the inline style set on this layoutManager

Parameters:
styleRules -

setContext

void setContext(Map<String,Object> context)
Setter for the context Map

Parameters:
context -

getPropertyReplacers

List<PropertyReplacer> getPropertyReplacers()
List of PropertyReplacer instances that will be evaluated during the view lifecycle to conditional set properties on the LayoutManager based on expression evaluations

Returns:
List replacers to evaluate

setPropertyReplacers

void setPropertyReplacers(List<PropertyReplacer> propertyReplacers)
Setter for the layout managers property substitutions

Parameters:
propertyReplacers -


Copyright © 2005–2014 The Kuali Foundation. All rights reserved.