Interface IWorkpageContainer

All Superinterfaces:
Serializable
All Known Implementing Classes:
WorkpageContainer

public interface IWorkpageContainer extends Serializable
Abstraction of container that managed mulitple workpages. Each workpage either is shown in the content area of the workplace or is opened as modeless popup.

The workplace container is the central instances for managing the workpages.
  • Method Details

    • setOpenWorkpagePopupsAsFrame

      void setOpenWorkpagePopupsAsFrame(boolean value)
      By default isolated workpages are opened as dialog. Dialogs do not appear within the task bar of the operating system - and do not allow to be pushed behind the workplace page. - If passing "true" as parameter then isolated workpages are opened as frame - i.e. they are a fully featured window that appears in the task bar of the operating system as well and that can be pushed into the background by the user.
    • getOpenWorkpagePopupsAsFrame

      boolean getOpenWorkpagePopupsAsFrame()
    • setEmptyPage

      void setEmptyPage(String jspPage)
      The page that is shown when no workpage is available within the workpage container.
    • getEmptyPage

      String getEmptyPage()
    • getWorkpageDispatcher

      IWorkpageDispatcher getWorkpageDispatcher()
      Get the dispatcher that is responsible for managing/keeping the top level objects within the context of this work page.
    • addWorkpage

      void addWorkpage(IWorkpage workpage)
      Adds the new workpage to the workpage container.
    • addWorkpageAndKeepInBackground

      void addWorkpageAndKeepInBackground(IWorkpage workpage)
      Adds the new workpage to the workpage container. If there is already one existing workpage then the new workpage is not switched to to the front.
    • addWorkpageAsPopup

      ModelessPopup addWorkpageAsPopup(IWorkpage workpage)
      Adds the new workpage to the workpage container.
    • switchToWorkpage

      void switchToWorkpage(IWorkpage wp)
      Switches to the workpage that is passed as parameter.
    • getWorkpageForId

      IWorkpage getWorkpageForId(String workpageId)
      Check if a workpage already is available for a passed workpage id.
    • closeWorkpage

      boolean closeWorkpage(IWorkpage workpage)
      Closes a workpage. This is the official way to close a workpage - going through the workpage container. Do not close a page on workplage level.
      Returns:
      result if workpage was really closed
    • closeWorkpage

      boolean closeWorkpage(IWorkpage workpage, boolean alsoCloseWorkpageWithNoCloseSupported)
      Same as closeWorkpage(IWorkpage) with additional parameter to check what to do with workpages that are defined to be without support of closing (i.e. inteface IWorkpage.isCloseSupported() returns false.
      Returns:
      result if workpage was really closed
    • closeWorkpageForced

      void closeWorkpageForced(IWorkpage workpage)
      Closes a workpage - forced mode. The application must not ask for unsaved data etc. anymore.
    • closeWorkpageForced

      void closeWorkpageForced(IWorkpage workpage, boolean alsoCloseWorkpageWithNoCloseSupported)
      Same as closeWorkpageForced(IWorkpage) with additional parameter to check what to do with workpages that are defined to be without support of closing (i.e. inteface IWorkpage.isCloseSupported() returns false.
    • moveWorkpageIntoContentArea

      void moveWorkpageIntoContentArea(IWorkpage workpage)
      Take a page from modeless popup display back into content area.
    • maximizeWorkpage

      void maximizeWorkpage(IWorkpage workpage, boolean maximized)
      Maximize size of workpage.
    • closeAllWorkpages

      void closeAllWorkpages()
      Closes all workpages using the forced mode for closing. This means before calling this method you should inform the user that all data changes within the workpaged get lost.
    • closeAllWorkpages

      void closeAllWorkpages(boolean forcedMode, Runnable afterCloseOperation)
      Closes all workpages. Dependent from the forcedMode the closing will either be done "forced" (i.e. no intervention possible by workpage lifecycle listener) or will be done "normally".
      Parameters:
      afterCloseOperation - After closing all workpages you may want a certain operation to be executed - this is the afterCloseOperation. In case of passing parameter "forcedMode" as "true", this operation is immediately run. Otherwise the closing of workpages may be interrupted (e.g. by some workpages asking the user if to save data, or do other things...). In this case the afterCloseOperation is run when all workpages are closed.
    • getAllWorkpages

      List<IWorkpage> getAllWorkpages()
      Returns list of all workpages the user has currently opened in the current workpage container. - Please note: there may be (better: there typically are) mulitple workpage containers, each one holding workpages.
    • getAllWorkpagesIncludingSubWorkpageContainers

      List<IWorkpage> getAllWorkpagesIncludingSubWorkpageContainers()
      Returns list of all workpages, but now not restricted to "this" container, but to "this" container and the ones that are kept below.
    • checkIfWorkpageIsOpenedInPopup

      boolean checkIfWorkpageIsOpenedInPopup(IWorkpage workpage)
    • setMaxNumberOfWorkpages

      void setMaxNumberOfWorkpages(int maxNumberOfWorkpages)
      With this method you may restrict the number of parallelly running workpages to a certain limit. If not set then any number of workpages can be opened.
    • setMaxNumberOfWorkpagesExceededMessage

      void setMaxNumberOfWorkpagesExceededMessage(String message)
      This is the message that is popped up once a user exceeds the limit of "maxNumberOfWorkpages". By default an own message is shown, but you can define your own one using this method.
    • throwWorkpageProcessingEvent

      void throwWorkpageProcessingEvent(WorkpageProcessingEvent event)
      Throws an event and triggers the delegation of the event to all other workpage instances.
    • getCurrentWorkpage

      IWorkpage getCurrentWorkpage()
      Returns the workpage that is currently shown within the content area of the workplace.
    • getCurrentlySelectedWorkpage

      IWorkpage getCurrentlySelectedWorkpage()
      Returns the workpage that is currently selected within the workpage selector. This function must only be called when using the ROWWORKPAGESELECTOR component.
    • setDefaultPopupWidth

      void setDefaultPopupWidth(int defaultPopupWidth)
      Defines the width of the popup when isolating a workpage into a window of its own.
    • setDefaultPopupHeight

      void setDefaultPopupHeight(int defaultPopupHeight)
      Defines the height of the popup when isolating a workpage into a window of its own.
    • getSubContainers

      Map<String,? extends IWorkpageContainer> getSubContainers()
      A workplace may have several workpage containers - each of them holding workpages. Internally there is one top workpage container (the own with getOwnSubContainerId() returning null), which owns sub containers (each of them returning an explicit id/name in getOwnSubContainerId().
    • getTileManager

      WorkplaceTileManager getTileManager()
      Each workplace has one tile manager - a tile being the graphical representation of a workpage container. The tile manager is a funciton on top of the workpage container and separates the screen into tiles, in each of the tiles a workpage container is started. The user may configure the tiles by dragging and dropping content from one tile to the next.
    • getSubWorkpageContainerIdForWorkpage

      String getSubWorkpageContainerIdForWorkpage(IWorkpage workpage)
      A workpage container may be separated into sub-workpage containers. This functions returns back the id of the sub workpage container. If the workpage is running in the main workpage container, then null is returned.
    • getSubWorkpageContainerForWorkpage

      IWorkpageContainer getSubWorkpageContainerForWorkpage(IWorkpage workpage)
      A workpage container may be separated into sub-workpage containers. This functions returns back the sub workpage container.
    • exportCurrentWorkpages

      List<WorkpageStartInfo> exportCurrentWorkpages()
      Export currently opened workpages into a list of workpage-start-info-objects.
    • prepareWorkplaceForCurrentUser

      void prepareWorkplaceForCurrentUser()
      Reads the workplace configuration for the currently logged on user. This function should be called e.g. after a user has logged on to a system and before switching to the workplace.
    • getFunctionsManager

      WorkplaceFunctionsManager getFunctionsManager()
      Each workpage container has one functions manager - managing the function tree(s). The functions manager is intialized before being passed back. Use getFunctionsManagerWithoutInitialization() to access the instance before initialization.
    • getFunctionsManagerWithoutInitialization

      WorkplaceFunctionsManager getFunctionsManagerWithoutInitialization()
      Each workpage container has one functions manager - managing the function tree(s).
    • getFunctionSearchUI

      WorkplaceFunctionSearchUI getFunctionSearchUI()
      Page bean for searching functions within the current function tree.
    • isolateWorkpageIntoModelessPopup

      ModelessPopup isolateWorkpageIntoModelessPopup(IWorkpage workpage)
      Isolate workpage as modeless popup.
    • moveIsolatedWorkpageBackIntoContentArea

      void moveIsolatedWorkpageBackIntoContentArea(IWorkpage workpage)
      Brings back a workpage that is isolated as modeless popup back into its content area.
    • setWithTabSelectorCloseIcons

      void setWithTabSelectorCloseIcons(boolean withTabSelectorCloseIcons)
      Defines if close icons are rendered into the selector's tab components. Default is "true".
    • setWorkpageSelectorEnabled

      void setWorkpageSelectorEnabled(IWorkpage workpage, boolean value)
      You may disable/enable the tab-navigation of a workpage's tabbed line.
    • setShowPopupWorkpagesInSelector

      void setShowPopupWorkpagesInSelector(boolean showPopupWorkpagesInSelector)
      By default workpages that are isolated into an own popup are not shown in the selector. You can override this behavior by passing the value "true".
    • setWorkpagePopupDefaultBgpaint

      @Deprecated void setWorkpagePopupDefaultBgpaint(String workpagePopupDefaultBgpaint)
      Deprecated.
      Defines the BGPAINT of isolated workpage popups.
    • setUpdateOnInnerEventOnly

      void setUpdateOnInnerEventOnly(boolean value)
      If set to true, then a workpage is only updated on an event that is coming from the workpage itself. This corresponds to ROWINCLUDE-UPDATEONINNEREVENTONLY attribute. - Default is "false". You may set to "true" for performance reasons, but need then to handle cases of cross workpage synchronization on your own. Please check documentation of ROWINCLUDE for more information.
    • setHotKeyIsolation

      void setHotKeyIsolation(boolean hotkeyisolation)
      If set to true then the workpage areas are isolated areas for hotkey processing. THis means that the a hotkey is only processed within the workpage in which it was triggered. There is no double-processing of hotkeys because of two workpages being shown in parallel.
    • getHotKeyIsolation

      boolean getHotKeyIsolation()
    • setWithWorkpageDragDrop

      void setWithWorkpageDragDrop(boolean withWorkpageDragDrop)
      Defines if the user is able to drag/drop workpages in order to shift workpages from one workpage container to the next.
    • getWithWorkpageDragDrop

      boolean getWithWorkpageDragDrop()
    • getHistory

      WorkplaceHistory getHistory()
      The workplace includes some management of the history of its content. This is the method to access the corresponding functions.
    • setRendererClassName

      void setRendererClassName(String value)
      The content renderer of the workpage container can be customized by passing the class name of the renderer. The renderer class must either implement IWorkpageContainerRenderer or IWorkpageContainerPartialRenderer.
    • getRendererClassName

      String getRendererClassName()
    • getRenderer

    • getOwnSubContainerId

      String getOwnSubContainerId()
      A workplace may contain several workpage containers. The main workpage container is started with an id of null. All other ones do own some id. The id is either set in the configuration of the workplace or - if the workpage container is created at runtime - is created by the workplace management internally.
    • getUniqueId

      String getUniqueId()
      A workpage container instance is assigned a unique technical id when it is created. This id is stable during the lifecycle of the workpage container. Please pay attention: this is a technical id "only"! The id that is assigned to the workpage container within the workplace setup is available via getOwnSubContainerId().
    • getMultiWorkplaceManager

      WorkpageContainerMultiWorkplaceManager getMultiWorkplaceManager()
    • getWorkpageSelector

      IWorkpageSelector getWorkpageSelector()
      You may create an own implementation of a workpage selector by implementing interface IWorkpageSelector.
      Returns:
      Only returns instance if some owne workpage selector is defined.
    • getWithCubeRotation

      boolean getWithCubeRotation()
      Flag which controls if rotation animation is executed when switching the content of a workpage container.
    • setWithCubeRotation

      void setWithCubeRotation(boolean withCubeRotation)
    • destroy

      void destroy()