JFrame:
  name: frame
  title: appname
  size: 800x600
  minimumSize: 400x300
  locationRelativeTo: null
  defaultCloseOperation: doNothingOnClose
  onWindowOpened: [checkDotNet,execDepotUpdate,checkMandatoryFiles,initialize,checkUpdates,focus]
  onWindowClosing: [saveLocalData,exit]
  iconImage: img.ae
  content:
    - Action(name=exitAction, text=menu.exit, toolTipText=menu.exitTooltip, icon=img.exit, onAction=[saveLocalData,exit])
    - Action(name=settings, text=menu.settings, toolTipText=menu.settingsTooltip, icon=img.settings, onAction=[showSettings])
    - Action(name=about, text=menu.about, toolTipText=menu.aboutTooltip, icon=img.about, onAction=[showAbout])
    - Action(name=runOniFull, text=menu.runOniFull, toolTipText=menu.runOniFullTooltip, icon=img.oni, onAction=[oniFull])
    - Action(name=runOniWin, text=menu.runOniWin, toolTipText=menu.runOniWinTooltip, icon=img.oni, onAction=[oniWin])
    - Action(name=openEditionFolder, text=menu.openEditionFolder, toolTipText=menu.openEditionFolderTooltip, icon=img.folder, onAction=[openEditionFolder])
    - Action(name=loadConfig, text=menu.loadConfig, toolTipText=menu.loadConfigTooltip, icon=img.openFile, onAction=[loadConfig])
    - Action(name=saveConfig, text=menu.saveConfig, toolTipText=menu.saveConfigTooltip, icon=img.saveFile, onAction=[saveConfig])
    - Action(name=reglobalize, text=menu.reglobalize, toolTipText=menu.reglobalizeTooltip, icon=img.refresh, onAction=[reglobalize])
    - Action(name=tools, text=menu.tools, toolTipText=menu.toolsTooltip, icon=img.tools, onAction=[tools])
    - JMenuBar:
        - JMenu(name=mainMenu, text=menu.main):
            - JMenuItem(action=settings)
            - JMenuItem(action=about)
            - JMenuItem(action=exitAction)
        - JMenu(name=fileMenu, text=menu.file):
            - JMenuItem(action=runOniFull)
            - JMenuItem(action=runOniWin)
            - JSeparator()
            - JMenuItem(action=openEditionFolder)
            - JSeparator()
            - JMenuItem(action=loadConfig)
            - JMenuItem(action=saveConfig)
            - JSeparator()
            - JMenuItem(action=reglobalize)
            - JSeparator()
            - JMenuItem(action=tools)
    - JToolBar(name=toolbar, floatable=false, orientation=0):
        - JButton(action=exitAction, hideActionText=true)
        - JToolBarSeparator()
        - JButton(action=settings, hideActionText=true)
        - JButton(action=about, hideActionText=true)
    - JSplitPane(name=contents, orientation=horizontalSplit, continuousLayout=true):
        - JPanel(name=panMods):
            - JLabel(name=lblModTypes, text=lblModTypes.text)
            - JComboBox(name=cmbModTypes, onAction=modTypeSelection)
            - JScrollPane(name=scrollMods, vScrollBar=always, hScrollBar=never):
                JTable(name=tblMods, visible=false)
            - JButton(name=btnRevertSelection, icon=img.undo16, text=btnRevertSelection.text, toolTipText=btnRevertSelection.tooltip, onAction=[revertSelection])
            - JButton(name=btnInstall, icon=img.install, text=btnInstall.text, toolTipText=btnInstall.tooltip, onAction=[install])
            - JLabel(name=lblDownloadSize, text=lblDownloadSize.text)
            - JLabel(name=lblDownloadSizeVal)
            - MigLayout: |
                 [grow]
                 lblModTypes<,cmbModTypes           [min]
                 scrollMods                         [grow]
                 >btnRevertSelection,btnInstall     [min]
                 lblDownloadSize,lblDownloadSizeVal [min]
        - JPanel(name=panInfo):
            - JLabel(name=lblSubmitter, text=lblSubmitter.text)
            - JLabel(name=lblSubmitterVal)
            - JLabel(name=lblCreator, text=lblCreator.text)
            - JLabel(name=lblCreatorVal)
            - JLabel(name=lblTypes, text=lblTypes.text)
            - JLabel(name=lblTypesVal)
            - JLabel(name=lblPlatform, text=lblPlatform.text)
            - JLabel(name=lblPlatformVal)
            - JLabel(name=lblDescription, text=lblDescription.text)
            - JScrollPane(name=scrollDescription, vScrollBar=always, hScrollBar=asNeeded):
                HTMLLinkLabel(name=lblDescriptionVal)
            - MigLayout: |
                 [min]             [grow]
                 >lblSubmitter     lblSubmitterVal    [min]
                 >lblCreator       lblCreatorVal      [min]
                 >lblTypes         lblTypesVal        [min]
                 >lblPlatform      lblPlatformVal     [min]
                 >^lblDescription  scrollDescription  [grow]
    - MigLayout:
        layoutConstraints: wrap 1
        columnConstraints: grow
        rowConstraints: grow
        constraints:
            - contents: grow

#            - tools: dock north
