widgets/dialog/widget.ss
#lang scheme

(require "../../mred-plugin.ss"
         "../../mred-id.ss"
         "../../controller.ss"
         "../../default-values.ss"
         "../../toolbox-frame.ss"
         "../project/preview.ss" ; needed for plugin% class... ; ????  WARNING: make-plugin??
         "../frame/preview.ss"
         scheme/gui/base)


(make-plugin
 [type 'dialog]
 [tooltip "Dialog"]
 [button-group "Containers"]
 [widget-class preview-frame%] ; dialogs are modal, so use a frame for a preview
 [code-gen-class dialog%] ; for code generation. By default the same as widget-class
 [parent-class (list dialog% frame% project%)] ; can only instanciate under a frame% or under nothing
 [necessary '(label parent)] ; necessary properties
 [options '(id)]
 ( ; widget properties
  [label "Dialog"]
  ;[parent #f] ; NO! do NOT use the parent property!
  ; optional
  [width #f]	 
  [height #f]	 
  [x #f]
  [y #f]	 
  [style (prop:popup
          (prop:some-of (list 'no-caption 'resize-border 'no-sheet)
                        '()))]
  [enabled #t]	 
  [border 0]	 
  [spacing 0]	 
  [alignment (alignment-values)]
  [min-width 70]
  [min-height 30]	 
  [stretchable-width #t]
  [stretchable-height #t]
  ))