--------------------------------------------------------------------------------------------------------------------
v0.1 - 03/02/2003
     - initial release
--------------------------------------------------------------------------------------------------------------------
v0.2 - 20/06/2004
     - added an update cmd in Notebook tab selection to raise
       the tab cache as wanted (workaround for MacOsX)
     - changed default colors for MacOsX use
         (white color is not a beauty for everything)
     - added use of the same label default font for all widgets
     - changed library directory path use into an absolute path one
     - corrected bug in package/path handling 
       + changed in the dynamic loading process:
         -> @RUNTIME(path) contains directories where packages can be found
         -> @RUNTIME(packages) contains directories where classes can be found
     - added package use in the class name (@class core.Object)
     - changed files layout for a easier maintenance
     - changed runtime load to allow the auto_path feature use
         (eg. 2 ways to load the runtime:
               1) source <myObjectiveTclDir>/main.tcl 
               2) lappend auto_path <myObjectiveTclDir> ; @
     - automatically load core and gui packages following the current interpreter capability
     - implemented @import like in Java 
         eg.:
          @import core.* -> loads all classes from core package
          @import core.Object -> loads Object class
     - implemented a @runtimeDump proc that will create a single file called "mOT.tcl"
       with a snapshot of the current runtime in it (with classes definitions)
       -> for use in embedded systems or for network transports
     - changed layout of the @showBitmaps command because too big for the screen
         -> rendered it into columns with 20 items
     - corrected zoom bugs in canvasBox
         -> changed zoom value handling : 
             - added zoomFactor, zoomSync, zoomReset to CanvasBox 
             - replaced zoomingUp, zoomingDown by zooming/unzooming 
         -> added zoomSync instance method to CanvasBox
         -> added zoomSync call in the redraw instance method of the TreeBox
     - corrected Tree bug : got an error message over the property use when changing separator and that
         old separator was the same as root name (/ by ex.)
     - changed frame relief to sunken + inner widget relief to flat 
       for gui classes: CanvasBox, TextBox, ListBox, TableBox
       to correct the too thick relief of the scrollbar under Windows
     - implemented a multiple inheritance mecanism 
         -> taking the first class as the superclass and put the others in superclasses variable
         -> created a new TreeBox class coming from Tree and CanvasBox classes
         -> implemented a message call to super by specifying the class name
              throught "$super@ <superclass> <message>"
              -> allow to call an init message for all superclasses in the child class init body
     - adapted doc generation to take multiple inheritance into account
     - corrected bug in variable access -> change dynamic variable call to a static one:
        change @getAccessTo(Instance|Class)Variables proc call to a static call because of the 
        problem of accessing a variable that cannot have been defined when the methods was created
     - changed getAccessToClassAndInstanceVariables to getAccessToInstanceVariables
        (an instance must not have access to the class variables)
     - added getAccessToInstanceVariables call in the Widget class for a new callback creation 
       because no more access to certain variable due to the previous change in the variables access
     - corrected doc to not take the full path in the file names when library directory 
       is in the path -> added @formatLibraryPathName in path.tcl
     - changed doc to only display class specific variables and methods 
     - allow use of the package name in the class call as calling "core.Object" as for "Object" or gui.Widget for Widget
     - suppressed procedures related to the protocol use like @proto and @protocol
       because protocol isn't really an specific entity : it's just a group of methods
       that a class must responds to if the class is conformed to a certain protocol
       -> it's a class interface without implementation 
       -> it's defined in the runtime with the @interface keyword
     - found a way to have interface and implementation selectors specified somewhere
       -> added interface,instance|class,selectors field into class array to contains
          selectors defined in an interface -> for protocol use
     - removed @DOC global variable
     - adapted doc to take the protocol handling change into account
     - corrected @syntax hanlding to avoid an infinite loop throught and unknown class call
       -> correct @syntax part with @class call by adding a test on the class callback existence before to call it
     - put warning to overwrite class/instance methods that already exist in the class definition
       when importing it again from another class but with a different procedure pointer 
       through the multiple inheritance processing
     - runtime documentation + tcl syntax add-on documentation (ppt+html)
     - changed zoom activation in CanvaBox by a <alt> + <left|right mouse clicks> sequences 
       instead of <alt> + <left|right mouse clicks>
     - added <double click> callback for SplitBox to toggle the split between the max and the last position
     - changed bitmaps to photo image in TreeBox (workaround for macosx bitmap colors bug)
     - changed @bitmapCopy to @imageCopy (copies bitmap & photo)
     - added tests directory with some speed tests (object creation, deletion, ...)
--------------------------------------------------------------------------------------------------------------------
IN PROGRESS

v0.3:
     - redesign the runtime to speed up objects messaging
     - add Runtime virtual classes (no instance possible) 
     - ident the tcl code to satisfy tcl coding guide
     - use return in proc
     - redesign TreeBox code to make it working faster 
     - add sort callback to TableBox columns when clicking on the column header
     - get possibility to have a trace in the categories
     - use a relational embedded database to store the runtime configuration
--------------------------------------------------------------------------------------------------------------------
STILL TODO

       - allow code comments to be displayed in the doc 
       - add optional row header to TableBox
       - add possibility to change color of foreground/background in TableBox for a record       
       - allow multi selection with ListBox and TreeBox 
           through <shift|Ctrl> + <left click> sequences when selecting
       - Next-style scrollbar
--------------------------------------------------------------------------------------------------------------------
