org.eclnt.workplace

## Interface IWorkpageContainer

- All Superinterfaces:
    java.io.Serializable
  All Known Implementing Classes:
    WorkpageContainer

      public interface IWorkpageContainer
      extends java.io.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 Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addWorkpage(IWorkpage workpage)` Adds the new workpage to the workpage container.
    `void` | `addWorkpageAndKeepInBackground(IWorkpage workpage)` Adds the new workpage to the workpage container.
    `ModelessPopup` | `addWorkpageAsPopup(IWorkpage workpage)` Adds the new workpage to the workpage container.
    `boolean` | `checkIfWorkpageIsOpenedInPopup(IWorkpage workpage)`
    `void` | `closeAllWorkpages()` Closes all workpages using the forced mode for closing.
    `void` | `closeAllWorkpages(boolean forcedMode, java.lang.Runnable afterCloseOperation)` Closes all workpages.
    `void` | `closeWorkpage(IWorkpage workpage)` Closes a workpage.
    `void` | `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.
    `void` | `closeWorkpageForced(IWorkpage workpage)` Closes a workpage - forced mode.
    `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.
    `java.util.List<WorkpageStartInfo>` | `exportCurrentWorkpages()` Export currently opened workpages into a list of workpage-start-info-objects.
    `java.util.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.
    `java.util.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.
    `IWorkpage` | `getCurrentlySelectedWorkpage()` Returns the workpage that is currently selected within the workpage selector.
    `IWorkpage` | `getCurrentWorkpage()` Returns the workpage that is currently shown within the content area of the workplace.
    `java.lang.String` | `getEmptyPage()`
    `WorkplaceFunctionSearchUI` | `getFunctionSearchUI()` Page bean for searching functions within the current function tree.
    `WorkplaceFunctionsManager` | `getFunctionsManager()` Each workpage container has one functions manager - managing the function tree(s).
    `WorkplaceHistory` | `getHistory()` The workplace includes some management of the history of its content.
    `boolean` | `getHotKeyIsolation()`
    `boolean` | `getOpenWorkpagePopupsAsFrame()`
    `java.lang.String` | `getOwnSubContainerId()` A workplace may contain several workpage containers.
    `IWorkpageContainerRenderer` | `getRenderer()`
    `java.lang.String` | `getRendererClassName()`
    `java.util.Map<java.lang.String,? extends IWorkpageContainer>` | `getSubContainers()` A workplace may have several workpage containers - each of them holding workpages.
    `java.lang.String` | `getSubWorkpageContainerIdForWorkpage(IWorkpage workpage)` A workpage container may be separated into sub-workpage containers.
    `WorkplaceTileManager` | `getTileManager()` Each workplace has one tile manager - a tile being the graphical representation of a workpage container.
    `java.lang.String` | `getUniqueId()` A workpage container instance is assigned a unique technical id when it is created.
    `boolean` | `getWithWorkpageDragDrop()`
    `IWorkpage` | `getWorkpageForId(java.lang.String workpageId)` Check if a workpage already is available for a passed workpage id.
    `ModelessPopup` | `isolateWorkpageIntoModelessPopup(IWorkpage workpage)` Isolate workpage as modeless popup.
    `void` | `maximizeWorkpage(IWorkpage workpage, boolean maximized)` Maximize size of workpage.
    `void` | `moveIsolatedWorkpageBackIntoContentArea(IWorkpage workpage)` Brings back a workpage that is isolated as modeless popup back into its content area.
    `void` | `moveWorkpageIntoContentArea(IWorkpage workpage)` Take a page from modeless popup display back into content area.
    `void` | `prepareWorkplaceForCurrentUser()` Reads the workplace configuration for the currently logged on user.
    `void` | `setDefaultPopupHeight(int defaultPopupHeight)` Defines the height of the popup when isolating a workpage into a window of its own.
    `void` | `setDefaultPopupWidth(int defaultPopupWidth)` Defines the width of the popup when isolating a workpage into a window of its own.
    `void` | `setEmptyPage(java.lang.String jspPage)` The page that is shown when no workpage is available within the workpage container.
    `void` | `setHotKeyIsolation(boolean hotkeyisolation)` If set to true then the workpage areas are isolated areas for hotkey processing.
    `void` | `setMaxNumberOfWorkpages(int maxNumberOfWorkpages)` With this method you may restrict the number of parallelly running workpages to a certain limit.
    `void` | `setMaxNumberOfWorkpagesExceededMessage(java.lang.String message)` This is the message that is popped up once a user exceeds the limit of "maxNumberOfWorkpages".
    `void` | `setOpenWorkpagePopupsAsFrame(boolean value)` By default isolated workpages are opened as dialog.
    `void` | `setRendererClassName(java.lang.String value)` The content renderer of the workpage container can be customized by passing the class name of the renderer.
    `void` | `setShowPopupWorkpagesInSelector(boolean showPopupWorkpagesInSelector)` By default workpages that are isolated into an own popup are not shown in the selector.
    `void` | `setUpdateOnInnerEventOnly(boolean value)` If set to true, then a workpage is only updated on an event that is coming from the workpage itself.
    `void` | `setWithTabSelectorCloseIcons(boolean withTabSelectorCloseIcons)` Defines if close icons are rendered into the selector's tab components.
    `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.
    `void` | `setWorkpagePopupDefaultBgpaint(java.lang.String workpagePopupDefaultBgpaint)` Deprecated.
    `void` | `setWorkpageSelectorEnabled(IWorkpage workpage, boolean value)` You may disable/enable the tab-navigation of a workpage's tabbed line.
    `void` | `switchToWorkpage(IWorkpage wp)` Switches to the workpage that is passed as parameter.
    `void` | `throwWorkpageProcessingEvent(WorkpageProcessingEvent event)` Throws an event and triggers the delegation of the event to all other workpage instances.

- - ### Method Detail

    - #### 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(java.lang.String jspPage)

      The page that is shown when no workpage is available within the workpage container.

    - #### getEmptyPage

          java.lang.String getEmptyPage()

    - #### 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(java.lang.String workpageId)

      Check if a workpage already is available for a passed workpage id.

    - #### closeWorkpage

          void 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.

    - #### closeWorkpage

          void 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.

    - #### 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,
                                 java.lang.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

          java.util.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

          java.util.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(java.lang.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

          java.util.Map<java.lang.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

          java.lang.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.

    - #### exportCurrentWorkpages

          java.util.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).

    - #### 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(java.lang.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(java.lang.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

          java.lang.String getRendererClassName()

    - #### getRenderer

          IWorkpageContainerRenderer getRenderer()

    - #### getOwnSubContainerId

          java.lang.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

          java.lang.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()`.

Copyright © CaptainCasa Gmbh. All Rights Reserved.