Block: PopupOutlet

A PopupOutlet block for configuring a popup into which a frame can be inserted.

Overview

The PopupOutlet block is used for configuring a modal popup window that appears in front of the main window. When the popup window is open, user interaction in the main window are disabled. The popup contains an outlet into which a frame can be inserted, defining the contents of the popup. The popup window is not part of the frame layout. It should therefore not be included in the areas of the frame layout. The PopupOutlet block is typically placed in the same frame as the one containing the button used to open the popup. A frame that is inserted in a popup outlet cannot contain other PopupOutlet blocks.

Example

Below is an example configuration.

kind: Solution
version: v0
router:
  kind: Router
  routes:
    - frame: home-frame
frames:
  home-frame:
    kind: Frame
    contents:
      my-open-button:
        kind: Button
        text: Open popup
      my-popup-outlet:
        kind: PopupOutlet
        frame: popup-frame
        subscribe:
          - kind: Button
            frame: home-frame
            source: my-open-button
            action: open
          - kind: ControlPanel
            frame: popup-frame
            source: my-control-panel
            action: close
            button: my-close-button
  popup-frame:
    kind: Frame
    contents:
      my-control-panel:
        kind: ControlPanel
        controls:
          my-text:
            kind: Text
            text: Hello World
          my-close-button:
            kind: Button
            text: Close popup

PopupOutlet

An object for configuring a popup outlet.

Name Type Required Description
kind "PopupOutlet" Yes
frame string Yes A string specifying the name of the frame to be inserted into the popup outlet.
subscribe List<PopupOutletSubscription> No A list of objects for subscribing the PopupOutlet block to other blocks.

PopupOutletSubscription

ButtonSubscription

An object for configuring a subscription from a PopupOutlet block to a Button block. The subscription allows a popup outlet to be opened or closed by clicking a button.

Name Type Required Description
kind "Button" Yes A constant, Button.
frame string Yes A string specifying the name of the frame in which the Button is located.
source string Yes A string specifying the name of the Button.
action "open" | "close" Yes A constant specifying the action to be performed.

ControlPanelInfoButtonSubscription

An object for configuring a subscription from a PopupOutlet block to an infoButton in a ControlPanel block. The subscription allows a popup outlet to be opened or closed by clicking an info button in a control panel.

Name Type Required Description
kind "ControlPanel" Yes A constant, ControlPanel.
frame string Yes A string specifying the name of the frame in which the ControlPanel is located.
source string Yes A string specifying the name of the ControlPanel.
infoButton string Yes A boolean to set whether an information button is generated. The button has an ‘info’ icon and is placed to the right of the label. The default is false.
action "open" | "close" Yes

ControlPanelSubscription

An object for configuring a subscription from a PopupOutlet block to a PopupOutlet block. The subscription allows a popup outlet to be opened or closed by clicking a button in a control panel.

Name Type Required Description
kind "ControlPanel" Yes A constant, ControlPanel.
frame string Yes A string specifying the name of the frame in which the ControlPanel is located.
source string Yes A string specifying the name of the ControlPanel.
button string No A string specifying the name of a button in the control panel. This can be a Button or a SubmitButton.
action "open" | "close" Yes A constant specifying the action to be performed. Valid options are open and close.

An object for configuring a subscription from a PopupOutlet block to a NavPanel block. The subscription allows a popup outlet to be opened or closed by clicking a button in a navigation panel.

Name Type Required Description
kind "NavPanel" Yes A constant, NavPanel.
frame string Yes A string specifying the name of the frame in which the NavPanel is located.
source string Yes A string specifying the name of the NavPanel.
name string Yes A string specifying the name of a navigation item in the navigation panel. The can be a NavButton, NavIcon, or a NavNumber and must have a name property.
action "open" | "close" Yes A constant specifying the action to be performed. Valid options are open and close.