JDialog:
  name: frame
  title: frame.title
  size: packed
  locationRelativeTo: null
  defaultCloseOperation: disposeOnClose
  iconImage: img.ae
  modalityType: applicationModal
  minimumSize: 600x500
  content:
    - JButton(name=btnOk, text=btnOk, onAction=[$validate,send,dispose])
    - JButton(name=btnCancel, text=btnCancel, onAction=[dispose])
    - HTMLLinkLabel(name=lblInfo)
    - JLabel(name=lblMail, text=lblMail)
    - JTextField(name=txtMail)
    - JLabel(name=lblMessage, text=lblMessage)
    - JScrollPane(name=scrollMessage, vScrollBar=always, hScrollBar=asNeeded):
        JTextArea(name=txtMessage)
    - HTMLLinkLabel(name=lblFiles)
    - JCheckBox(name=chkGetCopy, text=chkGetCopy)
    - MigLayout: |
         [min]                   [grow]
         lblInfo+*                              [min]
         lblMail                 txtMail        [min]
         ^lblMessage             scrollMessage  [grow]
         chkGetCopy+*                           [min]
         lblFiles+*                             [min]
         >btnOk+*=1,btnCancel=1                 [min]
  
validate:
  - txtMail.text: {label: lblMail, email: true, mandatory: true}
  - txtMessage.text: {label: lblMessage, mandatory: true, minLength: 20}
