#! /usr/local/bin/wish

source [file dirname [file dirname [file dirname $argv0]]]/lib/require.tcl

set _program(name)    "CenterStage"
set _program(version) 2.2
set _program(id)      "$_program(name) v$_program(version)"

if ![info exists env(PWD)] {set env(PWD) [exec pwd]}

Require config.tcl
Require user.tcl

Require gv-IO.tcl
_input(StartHandler)
_command(Register) $_program(name) $_program(name)
proc StageDoor {args} {eval _command(Print) $args}


Require window.tcl
Require error.tcl
Message Install
_user Window

Message Set "Initializing:  Widgets"
Require widgets.tcl
Require sliders.tcl
Require typeins.tcl
Require checkbox.tcl
_user Widgets

Message Set "Initializing:  Menus"
Require file.tcl
Require edit.tcl
Require object.tcl
Require help.tcl
_user Menus

Message Set "Initializing:  Windows"
Require percent.tcl
Require rgb.tcl
Require library.tcl
Require coloredit.tcl
_user Windows

Message Set "Initializing:  Objects"
Require csObject.tcl

Message Set "Initializing:  Math"
Require math.tcl
Require expr.tcl
set tcl_precision 8

Message Set "Initializing:  Classes"
Require classes.tcl
_user Classes

bind all <Control-S><Control-S> \
  {Require shell.tcl; TclShell "$_program(id): Shell"}

Message Set "Initializing:  Miscellaneous"
_File TrapExit
_Object Init

puts "(bbox-draw world off)"
flush stdout

_user Ready