Package io.github.mmm.ui.spi.controller
Class UiControllerRoot
- java.lang.Object
-
- io.github.mmm.ui.spi.controller.AbstractUiController<UiSlot>
-
- io.github.mmm.ui.spi.controller.UiControllerRoot
-
- All Implemented Interfaces:
AttributeReadId,AttributeReadTitle,AttributeReadVisible,UiController<UiSlot>
public class UiControllerRoot extends AbstractUiController<UiSlot>
-
-
Field Summary
-
Fields inherited from interface io.github.mmm.ui.api.controller.UiController
ID_CONTENT, ID_FOOTER, ID_HEADER, ID_HOME, ID_MARGIN, ID_NAVIGATION, ID_PAGE, ID_ROOT
-
-
Constructor Summary
Constructors Constructor Description UiControllerRoot()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected UiSlotcreateView()protected booleandoEmbed(String slotId, UiController<?> childController)Override this method for parent controllers to embed children.protected UiEmbeddingdoShow(UiPlace newPlace, UiEmbedding newSlot)StringgetId()The ID of a controller should only contain ASCII letters, Latin digits, hyphens or underscores.StringgetTitle()protected voidonShow()This method gets called whenever theviewis shown on the screen.-
Methods inherited from class io.github.mmm.ui.spi.controller.AbstractUiController
embed, getEmbedding, getView, hide, isVisible, onHide, onReset, reset, show, show
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.github.mmm.ui.api.controller.UiController
isNavigable
-
-
-
-
Method Detail
-
getId
public String getId()
Description copied from interface:UiControllerThe ID of a controller should only contain ASCII letters, Latin digits, hyphens or underscores. It may also contain slashes ('/') or the hash sign ('#'). It must not contain '?', '&', '=', ':', ';', '\\' or ' '.- Returns:
- the ID of this object.
- See Also:
UiController.ID_ROOT,UiController.ID_PAGE,UiController.ID_HOME
-
getTitle
public String getTitle()
- Specified by:
getTitlein interfaceAttributeReadTitle- Specified by:
getTitlein interfaceUiController<UiSlot>- Overrides:
getTitlein classAbstractUiController<UiSlot>- Returns:
- the title of this object. Similar to
textbut more exposed (e.g. displayed in title-bar in case of a window). Will be the emptyStringif not set.
-
createView
protected UiSlot createView()
- Specified by:
createViewin classAbstractUiController<UiSlot>- Returns:
- the new instance of the
view.
-
doEmbed
protected boolean doEmbed(String slotId, UiController<?> childController)
Description copied from class:AbstractUiControllerOverride this method for parent controllers to embed children.- Overrides:
doEmbedin classAbstractUiController<UiSlot>- Parameters:
slotId- theslot IDwhere to embed the given childUiControllersview.childController- the child controller to embed.- Returns:
trueif the embedded slot is dynamic (e.g. a new closable tab),falseotherwise if static and reusable slot in the UI (default).- See Also:
AbstractUiController.embed(UiEmbedding, UiController)
-
onShow
protected void onShow()
Description copied from class:AbstractUiControllerThis method gets called whenever theviewis shown on the screen. It can be overridden to trigger custom logic - e.g. to update data.- Overrides:
onShowin classAbstractUiController<UiSlot>
-
doShow
protected final UiEmbedding doShow(UiPlace newPlace, UiEmbedding newSlot)
- Specified by:
doShowin classAbstractUiController<UiSlot>- Parameters:
newPlace- theUiPlaceto open. Itidentifiesthe leaf childUiControllerand provides potentialparameters.newSlot- the optionalUiEmbeddingwhere to embed the child controller.- Returns:
- the
UiEmbeddingwhere to embed this controller into a parent controller ornullif this is the root controller.
-
-