#!/bin/sh
# \
	exec itkwish "$0" ${1+"$@"} 

option add *textBackground white

proc view {which} {
   global slb

   $slb clear

   switch -- $which {
       widgets {
	   $slb insert end buttonbox
	   $slb insert end combobox
	   $slb insert end entryfield
	   $slb insert end feedback
	   $slb insert end fileselectionbox
	   $slb insert end menubar
	   $slb insert end notebook
	   $slb insert end optionmenu
	   $slb insert end panedwindow
	   $slb insert end pushbutton
	   $slb insert end radiobox
	   $slb insert end scrolledcanvas
	   $slb insert end scrolledlistbox
	   $slb insert end scrolledframe
	   $slb insert end scrolledhtml
	   $slb insert end scrolledtext
	   $slb insert end selectionbox
	   $slb insert end spinner
	   $slb insert end spinint
	   $slb insert end spintime
	   $slb insert end spindate
	   $slb insert end tabnotebook
	   $slb insert end tabset
	   $slb insert end toolbar
       }
       
       dialogs {
	   $slb insert end canvasprint
	   $slb insert end dialog
	   $slb insert end dialogshell
	   $slb insert end fileselectiondialog
	   $slb insert end hyperhelp
	   $slb insert end messagedialog
	   $slb insert end promptdialog
	   $slb insert end selectiondialog
       }
   }
}

proc selectDemo {} {
    global st slb

    set demo [$slb getcurselection]

    $st clear
    $st import $demo
}

proc runDemo {} {
    global slb

    set demo [$slb getcurselection]

    exec itkwish $demo &
}

frame .mbar -relief raised -borderwidth 2
pack .mbar -side top -fill x

menubutton .mbar.file -text File -underline 0 -menu .mbar.file.menu
pack .mbar.file -side left

menu .mbar.file.menu
.mbar.file.menu add command -label Exit -underline 0 -command exit

panedwindow .pw -width 390 -height 400
.pw add top -minimum 30
.pw add bottom -minimum 20
.pw fraction 40 60
pack .pw -fill both -expand yes

set topsite [.pw childsite top]
set bottomsite [.pw childsite bottom]

set slb [scrolledlistbox $topsite.slb -visibleitems 17x7 \
    -vscrollmode dynamic -hscrollmode none \
    -selectioncommand selectDemo \
    -dblclickcommand runDemo]

pack $topsite.slb -padx 10 -pady 10 -fill both -expand yes -side right

radiobox $topsite.rb
$topsite.rb add widgets -text Widgets -command [list view widgets]
$topsite.rb add dialogs -text Dialogs -command [list view dialogs]
$topsite.rb select widgets
pack $topsite.rb -side left -anchor n -padx 10 -pady 10

set st [scrolledtext $bottomsite.st]
pack $bottomsite.st -fill both -expand yes


