Chapter 4. Version History

copyright © 2008 - 2013
by S. Serper | Home

version 1.01.01 - The File menu on top of the GUI is not providing us with the intended functionality yet. If time allows, in the next program version, I will implement the functions for loading and saving all Widget settings into a file. This will provide us reproducability.
- In the next version, some TAB & other widgets color related problems in Linux will be fixed.
- A more comprehensive demo will be implemented including the iWidgets too.

version 1.02.01 -updated tG2.tcl to enable running & packaging the program from any folder modified make_pack.bat & Makefile, in cooperation with ./tools/mod.tcl

-created new script template v1.01 with:
     - update of generic_tcl.tcl
        - added several new Windows registry procedures
        - improved saveFile procedure, selectable line-termination
    - update of tkwidgets_1.tcl
        - new widget-call : createTkWindow
        - new widget-call : place_hotlink
        - bug-fix for place_editor, the returned path did not point to the text-widget.
    - update of iwidgets_1.tcl
        - upgraded createMenuStructure, more easier to maintain.
        - upgraded place_splashscreen, no manual labour needed to fit your custom .gif file.
    - new contributer N. Coenen, contributing with generic_tcl2.tcl
    - updated custom.tcl, the "Authors" variable was not updated, fixed.
    - modified Makefile, in cooperation with ./tools/mod.tcl. The previous packaging script was failing, made it more robust as well as less maintenance sensitive. Same story for make_pack.bat.
    - introducing debugging of widgets by hovering over any control to display all relevant information. debugger_1.tcl provides the necessary scripts. Option is selectable within tG2, user decides to include or not.

-the Makefile for the Linux binary wrapper was not correctly implemented, added the "collected_files.txt" method, same as in make_pack.bat file.

-the option to enable resizing of the main frame did not work, variable resizableMain needs to be set to 'No' instead of "0" in case of disabling.

- Introducing the 'Menu Designer' interface with scriptset v1.01 to enable the user to design the initial menu-structure of the program.

- Introducing the 'Tool Bar Designer' interface with scriptset v1.01 to enable the user to layout the buttons of your program's toolbar. The .gif pictures associated with each button, is automatically included in the Makefile and make_pack.bat files.

- A script database viewer interface is included to enable the user to parse through all generated scripts of a given/selected template.

version 1.03.02 - Release on 1-08-2009, based on script template v1.03
- New library template v1.03
    - introducing new hierarchy, where user generates all files on demand with the
    help of the tG2 interface and only manually changes, modifies and customize the
    program with preserved files:
        ./procedures/_customized.tcl => to customize the main program
        ./collected_files_customized.txt => for Makefile and make_pack.bat
        ./modules/module{nr}_customized.txt => for customization of (opt) modules
    - Lot's of new functions added, too much to list.
- Drawing the mainmenu to determine size & pos, user is freed from syntax control
- Upgraded the custom Tool Bar designer:
    -includes separator
    -Introducing complete new interface to download icons from www!
- Calling of demo is now optional, see 'miscelleneous' section
- New : conversion of .gif files into ascii (base64), see 'Tools' menu
- New : CRC32 value calculation of a file, see 'Tools' menu
- Debugger menu completely reviewed, added debugger function for timers
- Load/save of *.tg2 project settings supported now, incl. list of recent files...
- Checking online for upgrades from within tG2 on user request
- Reviewed 'balloon' procedure, added attribute forcing balloon-text to be topmost
- Reviewed 'center_window' procedure and moved from iWidgets_1.tcl to generic_1.tcl, it is a generic functional afterall, and now ready for usage.
- Introducing Module Designer interface, see 'Tools' menu
- Argument processing included, doubleclicking a .tg2 extensioned file will start a new tg2 instance and load the .tg2 file. For this functionality, user needs to run the "Tools" -> "miscelleneous ..." -> "Register .tg2 extension" only once.
- The tG2 interface has been reviewed and made more robust to invalid user entries

version 1.04.04 - Release on 19-08-2009, based on script template v1.04
- Several improvements in template v1.04 and some tuning :
        - Many widget wrappers include support for balloon text, backward compatible
        - build-in safetynet for getUniqueWidgetIndex

- Checks for programversion when loading presets (.tg2 files)

- Reviewed the complete interface, included many additional controls to modify various program settings.

- Including freewrap 6.2 distribution, interactive binary wrapping is here!

- Introducing integrated source editor, with many additional functions.

- The online upgrade process has been reviewed and made more robust.

version 1.05.02 - Release on 19-01-2010, based on script template v1.05
- developed with tcl/tk v8.4.19
- shortcut keys for build/generation/run of scripts, if required with user defined command line arguments
- added project properties menu to customize project startup/behaviour and more
- Created new script template v1.05:
        - added mod_iW1_toolBar procedure to iwidgets_1.tcl, toolbar modifier
        - added fadeOut procedure to generic_1.tcl, performs fadeout effect on toplevel
        - wheelEvent procedure modified, Y-scrolling is reduced per mouswheel scroll
        - added cmdOptions procedure, extracts tcl-command arguments
        - updated widget-wrapper place_iW1_combobox to make it more robust
        - modified iwidgets library to visually enhance the button of place_iW1_combobox
        - updated procedure createMenuStructure to fix bug for menu access via Alt-keys
        - most widget wrappers include the optional balloon-help string variable now
        - added place_pDialog procedure to tkwidgets_1.tcl, flexible dialog wrapper
        - updated integrated debugger with new icon for displaying tcl console
        - updated module.tcl template, disabled 'createWindow', instead using 'toplevel'
        - introducing Drag-And-Drop features to listbox widgets, see tkwidgets_1.tcl
        - introducing Windows TaskBar icon wrapper and menu tool
        - introducing 'Override Script Generator' tool
- Source editor enhanced with additional functions:
        - tcl-command assistance while typing
        - dynamic bracelevel monitor
        - file state monitoring
        - more enhanced search/replace, Ctrl-G fast search
        - popup menu has been enhanced, included :
                - Goto line...
                - Text Modification...
                - Debugging...
        - debugging enhancements included, such as break & watch functions
        - statusbar included, providing filebrowser shortcuts and x,y cursor coordinates
        - left/right margins of editor is now alligned to window boundries
        - search help for tcl/tk commands on the www
        - easy access for widget wrapper procedures by means of icons
        - reviewed functionality reloading of a file, checks for unsaved data
        - tG2 has full start/stop control over the tool being executed

version 1.06.01 - tG2 interface:
        - introducing "what-you-see-is-what-you-get" toplevel Layout Editor !
        - Finally been able to pack all libraries into freeWrap/tG2 executable !
        - The interactive packager makes use of this new architecture too, packages
        are stored in tG2-folder, project get's a copy of the lib-folder for
         full user access during program development and wrapping of program.
        - new project folder structure:
                +--> source : all source scripts
                +--> lib : all packages
                +--> distrib : distributable exe/package
        - User is enabled to edit the auto_path content, additional tab created.
        - introducing new tG2 dialog forms, experimenting with rounded rectangle forms
        - introducing new small toolbar in upper right corner, moved 'procedure browser'
         to statusbar which popsup only on demand by user. New toolbar provides 3 new
         functions : Windows Explorer, Project Explorer and Project Properties.
        - Project Properties enables user to set custom image & icon editors
        - Project Properties enables user to set project name.
        - new : Project Explorer. The view mimicks some of the Windows Explorer
         functions with additional features to integrate with the Source Editor.
         Included also widget attribute editor in this view
        - moved selection of script template to Project Properties, default
         selection of latest template during program start.
        - added Ctrl-F6 option to quickly build + start the source editor
        - the central timing-engine polling-interval is configurable
        - main tabs reflects the flow : set project -> generate/edit source -> deploy
        - Removed creation of Makefile and make_pack.bat from tab "Generate Script",
         these are now options within the "Deployment" tab.
        - Toplevel Module Designer : creating a new module while none existing in list
         caused error state, fixed.
        - Toplevel Module Designer : added new feature, "Smooth entry & exit (fading)"
        - temporary disable project startup settings with Ctrl-key pressed during load
        - improved splashScreen procedures, pops up much earlier now

- source editor:
        - wrapper & menu can now be invoked from toolbar, without leaving Source Editor
        - can be set to use a alternative tcl-interpretor.
        - Ctrl-a not working properly, fixed.
        - tab insertion is replaced by (2) spaces
        - new architecture, where libraries of project are stored in ../lib
         with auto_path adapated for this new architecture, this also enables
         running the tcl-script by "wishrun" without tcl/tk installation!
        - introducing image-viewing on user request of selected base64 text
        - smarter text-paste function
        - fixed bug when invoking a CR while tG2 is trying to mark the line
         numbers of a large procedure.
        - popup menu provides entry to retrieve environment variable values.
        - block-selection is now possible in ALL directions !
        - forgot to include the widsetX.tcl files into the wrapper, oops...
        - fastbrowsing of _customized.tcl files with buttons & Ctrl-Shift-(+/-) keys
        - reviewed 'bracelevel2' procedure, \{ and \} recognition enabled now.
        - tuned 'markLineNrs' procedure, 50% faster execution, including enhancement
         to display matched line in progressbar, if line is out of sight.
        - Ctrl-g (fastsearch) was not placed correctly when editor was max.zoomed
        - Ctrl-f/g does not include braces when multiple words selected
        - many (minor) visual improvements
        - removed Widget-icons menu, transferred to Project Explorer instead

- module.tcl:
        - added fade IN/OUT animation support
        - optimized script for ESCAPE key handling

- ffidl_1.tcl:
        - added a couple of new dll declarations to manipulate form layout
        - added 2 new ddl declarations to enable moving any form, from anywhere

- generic_tcl.tcl:
        - new win32_place_desktopLNK
        - bugfix win32_registerFileType
        - new getEnvParameters
        - updated Txt2Pic
        - fadeIn procedure added
        - initBackground procedure added
        - new : Pic2Txt2
        - new : place_ScrolledWidget, tested with & used by table-widget

- iwidgets_1.tcl:
        - updated place_iW1_scrolledText & place_iW1_panedWindow
        - place_iW1_panedWindow: return is now parent widgetpath, not children
        - new place_iW1_pushButton, scalable button with either text or image
        - updated createMenuStructure in conjunction with place_menuBar
        - updated 'about' functionality, no flashing toplevel anymore

- tkwidgets_1.tcl:
        - removed redundant code from place_imageButton
        - enhanced DAD-functionality for listbox widgets
        - procedure clock0:set enables dynamic setting of timing engine interval
          Also reduced polling frequency from 1ms to 5ms, this eases the uC !
        - new : place_fileList, place_dirList
        - updated place_hotlink, URL-label widgetpath is 1:1 related now
        - safetynet for proc ::tk::spinbox::Invoke, needed for Layout Editor
        - new : place_canvas, place_wArray
        - updated place_menuBar

- new optional wrapper libraries : tktable_1.tcl and electronics_1.tcl
- All beta updates & bug fixes

version 1.07.01 Short summary:

    - Mayor update in debugging options, introducing variable tracers/watches.
    - Source Editor received many additional intuitive functions to ease the
     customized code creation.
    - The Project Properties toplevel form has been reviewed and includes more
     startup behavioral options as well as control over the Hyperlink Sensitivity
     newly introduced in the Source Editor.
    - Some mayor improvements inside the Project Manager & Explorer to enhance
     the flexibility of code insertion, wrapper maintenance and layout object
     properties navigation.
    - New optional wrapper library BWidget and more to come in next versions!
    - Many (minor) updates and some additional procedures inside existing wrappers
    - A couple of minor bug fixes and pruned some herited functionality of the pure
     generator era of tG2, such as the iwidgets Toolbar Designer. The more
     intuitive Layout Designer provides all necessary objects to build a toolbar.

A more elaborate list of these new features & enhancements is available inside the latest release notes.
Click here

version 1.09.01 Some of the highlights of this release:

   - plugin wizard to create a project template and start a new project in no-time
   - cleanup of redundant scripts to save static (tG² wrap) and active memory
   - introducing custom (some downloadable) plugins, using namespaces
   - error handling of tool-under-development now optionally managed by tG²
   - now tG² is in full charge of the tool being developed and run, using
    Windows tools in the background (health-tracking)
   - previous secondary project settings, such as documents opened and
    window geometry, saved and reloaded optionally in next session
   - basic syntax checker
   - extraction and presentation of project data much more and enhanced,
    such as namespaces, procedures and environment variables, etc.
   - new wrapper for gif animation functionality
   - layout editor is enhanced in many ways, now supports selection-box
   - much, much more in release notes

A more elaborate list of these new features & enhancements is available inside
the latest release notes.