ReleaseNotes:Highlights of Planimate Enhancements - Release Versions 4.26 to 4.29z: Difference between revisions

From Planimate Knowledge Base
Jump to navigation Jump to search
No edit summary
 
Line 1: Line 1:
'''<font face="Arial"></font>'''
'''<font face="Arial"></font>'''  
<center>Highlights of Planimate Enhancements<br> Versions 4.26a to 4.29z.<br> </center>
<font face="Times New Roman"><font size="3"><br><br>'''''<font face="Arial"><font size="4">Introduction<br></font></font>'''''<font face="Times New Roman"><font size="3"><br> In the 16 months since January 2002 when Planimate 4.26 was released, there have been about 90 releases which averages to over one release a week during that period. Many of the enhancements are bug fixes and minor tweaks. In addition many significant enhancements in capability have been made and are outlined in this document.</font></font></font></font>


<center>Highlights of Planimate Enhancements<br /> Versions 4.26a to 4.29z.<br /> </center>
<font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><br> This year has seen the emergence of the InterDynamics idBase™. This is being used to provide a growing, real time updated searchable repository of Planimate reference material. Items in the idBase™ are referenced by a note number. Where further material is available, the relevant note number is indicated in square brackets [] in the notes below.</font></font></font></font>


<font face="Times New Roman"><font size="3"><br /><br />'''''<font face="Arial"><font size="4">Introduction<br /> </font></font>'''''<font face="Times New Roman"><font size="3"><br /> In the 16 months since January 2002 when Planimate 4.26 was released, there have been about 90 releases which averages to over one release a week during that period. Many of the enhancements are bug fixes and minor tweaks. In addition many significant enhancements in capability have been made and are outlined in this document.
<font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><br> The updates are presented 5 sections<br><font face="Symbol">• <font face="Times New Roman">End User Interface Enhancements<br><font face="Symbol">• <font face="Times New Roman">Dynamic Spatial Networks<br><font face="Symbol">• <font face="Times New Roman">Interconnectivity<br><font face="Symbol">• <font face="Times New Roman">Modeller Support<br><font face="Symbol">• <font face="Times New Roman">Complex Model Support<br><br><br><br>'''''<font face="Arial"><font size="4">End User Interface Enhancements<br></font></font>'''''Table Editing<br><font face="Times New Roman"><font size="3">Table editing has been improved. The cell context menu has improved undo, copy and paste handling and the index down/across function has been enhanced to make it date aware so it can properly index calendar dates forward and backward by month or year.<br>'''<font face="Arial">Popup Panels<br></font>'''<font face="Times New Roman"><font size="3">Modellers can set up pop up windows for menus, palettes and summary displays. Multiple panels can be opened and the user can reposition them as desired. An Option enables a popup panel to auto-close once it loses focus which simplifies setting up popups. [#94]<br><br>'''<font face="Arial">Paint Buttons With Controllable States and Hover<br></font>'''<font face="Times New Roman"><font size="3">A new paint object specifically intended as a button has been added. This object has many features enabling very responsive user interfaces to be built, including:</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font>
<font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3">
#States. The button can be driven into different states by different states by the model. Each state can have different text, graphical appearance and background image. [#47]
#Hover. A state can be assigned to be mouse-over sensitive. When a user hovers over the button, it can change its appearance to make it clear to the user that it is there [#3].
#Hover Broadcast. The hover event can be relayed to the model as a broadcast. This enables a modeller to pop up additional panels of information as the user moves the mouse without the user having to click [#112].<br><br>'''<font face="Arial">Table Cell Change Broadcast<br></font>'''<font face="Times New Roman"><font size="3">The model can react immediately to changes in a table made by the user. The cell changed is made available to the model so related information can be updated without the user having to press an update button [#20].<br>'''<font face="Arial">Free Text Support In Tables<br></font>'''<font face="Times New Roman"><font size="3">Table cells can be configured to store arbitrary long text strings that the user can type in. These are not processed by Planimate at all but can be used for a user to enter annotations to data in other columns in the tables. [#42].<br>'''<font face="Arial">Value Formatting<br></font>'''<font face="Times New Roman"><font size="3">Many more calendar date formatting options are available. In addition Euro and Rand currency formats can now be displayed and imported.<br>'''<font face="Arial">Dialog Box Calendar Dates<br></font>'''<font face="Times New Roman"><font size="3">Fields in a dialog associated with calendar dates can now use the calendar style input field rather than the free form date entry field.<br>'''<font face="Arial">Conditional Display Of Views and Paint Objects<br></font>'''<font face="Times New Roman"><font size="3">A condition can be used to determine if a view (table, graph etc) or paint object should be displayed or not. This is enables a modeller to hide content on a panel which is not relevant (eg: feature not enabled, user running in non expert mode).<br>'''<font face="Arial">Arrowed Paint Lines<br></font>'''<font face="Times New Roman"><font size="3">Paint lines can have optional end and center arrow heads (outline or solid) displayed along with them.<br><br>'''''<font face="Arial"><font size="4">Dynamic Spatial Network Support<br></font></font>'''''Broadcasts from Portals and Spatial Links<br><font face="Times New Roman"><font size="3">The platform supports the end user creating nodes and connecting them with links to create spatial networks. model can receive and process. Broadcasts are available when nodes are clicked or dragged and the links joining them are clicked. Both mouse buttons are supported so they can be assigned different actions. [#99] [#100] The model can dynamically enable whether portals can be repositioned by the user. [#97]</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font>


<font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><br> In addition to creating and deleting portals, portals can be replaced under model control. This enables nodes to be automatically updated with new content placed in a master node. [#48].<br>'''''<font face="Arial"><font size="4">Interconnectivity<br></font></font>'''''Simple Web Server<br><font face="Times New Roman"><font size="3">Planimate includes the ability to serve very simple web pages. These can be constructed on the fly by the model. The server is not sophisticated but enables Planimate to directly interface with systems that send processing requests as a URL. [#46]<br>'''<font face="Arial">URL Request<br></font>'''<font face="Times New Roman"><font size="3">Planimate can generate and send a URL request to another web site. This can be used to trigger action from a server configured to process active server page requests.<br>'''<font face="Arial">File Name Support<br></font>'''<font face="Times New Roman"><font size="3">Models can generate and manipulate file names as labels. The name of the last loaded data set [#35] and the name or name and full path of the last loaded data file can be referenced by the model [#106].<br>'''<font face="Arial">File Access Error Trapping<br></font>'''<font face="Times New Roman"><font size="3">In the past, Planimate would stop a model run when an error occurred while reading or writing to a data file. The modeller can now intercept such errors and take action without the default error message being presented to the user. [#59].<br>'''<font face="Arial">ODBC Enhancements<br></font>'''<font face="Times New Roman"><font size="3">ODBC data sources are accessed by name. The name can now be dynamically provided by the model at runtime rather than hard coded by the modeller. [#10]. An ODBC connection cache can be used to speed up multiple ODBC accesses to the same database. [#40].<br>'''''<font face="Arial"><font size="4">Application Generation<br></font></font>'''''<font face="Times New Roman"><font size="3">Planimate models can be saved as stand alone EXE files which package all the required resources for the model into a single EXE. [#37] Multimedia files such as sounds and AVI clips can be imported into a DB. Planimate will extract them as required to play them. [#38]</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font>


This year has seen the emergence of the InterDynamics idBase™. This is being used to provide a growing, real time updated searchable repository of Planimate reference material. Items in the idBase™ are referenced by a note number. Where further material is available, the relevant note number is indicated in square brackets [] in the notes below.
<font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><br> Planimate models can also be saved as a new type of file, PMB, Planimate Model Bundles. A PMB file includes both the model and database components of a Planimate model.<br>'''<font face="Arial">Time Zone Correction<br></font>'''<font face="Times New Roman"><font size="3">If a model is used from different time zones, the need may arise to present, import and export calendar dates and times in local time format. Rather than adjust all the data in the model, a time zone correction system attribute has been added which gets applied to all displays and inputs of calendar times. The model can then be built to store times internally in UTC with a local offset configured and applied by each particular user. [#85]<br>'''''<font face="Arial"><font size="4"><br> Modeller Support<br></font></font>'''''Modeless Table Editing<br><font face="Times New Roman"><font size="3">Table editing is no longer modal. Multiple tables can be opened for viewing and editing and their windows can be repositioned and decoupled from the Planimate main window (so they become accessible via alt-tab). These windows can be dynamically opened by Planimate and by buttons. This means a model need not contain a view for every table that a modeller may want to inspect, reducing overheads and increasing model run speed.<br>'''<font face="Arial">Group Selection<br></font>'''<font face="Times New Roman"><font size="3">Groups of objects can now be selected by dragging and forming a box around them. This enables many objects to be rapidly selected then copied, moved, aligned or deleted. Multiple group selections can be combined to select objects in different regions of a panel.<br>'''<font face="Arial">Navigation Enhancement<br></font>'''<font face="Times New Roman"><font size="3">A new history list stores the panels recently visited by a modeller as they edit and navigate a model. This history can be rapidly navigated using keys and panels within the history can be repositioned to enable panels of interest to be placed close together in the history list. [#103]<br>'''<font face="Arial">Paint re-inheritance<br></font>'''<font face="Times New Roman"><font size="3">It is now possible to re-inherit objects from a panel without having to delete all existing inherited objects.<br>'''<font face="Arial">Debugging Enhancements<br></font>'''<font face="Times New Roman"><font size="3">Debugging options can be changed without having to pause the run, via the background menu. The debug and breakpoint windows show more information about the model when an error occurs and enable attributes and routines to be inspectedw without having to pause or stop the run. [#13]</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font>


<font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><br> Trace animation is now a system attribute and can be switched on and off within routine code. This can be invaluable when homing in on a trouble spot in a model.</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font>


The updates are presented 5 sections<br /><font face="Symbol"><font face="Times New Roman">End User Interface Enhancements<br /><font face="Symbol"><font face="Times New Roman">Dynamic Spatial Networks<br /><font face="Symbol"><font face="Times New Roman">Interconnectivity<br /><font face="Symbol"><font face="Times New Roman">Modeller Support<br /><font face="Symbol"><font face="Times New Roman">Complex Model Support<br /><br /><br /><br />'''''<font face="Arial"><font size="4">End User Interface Enhancements<br /> </font></font>'''''Table Editing<br /><font face="Times New Roman"><font size="3">Table editing has been improved. The cell context menu has improved undo, copy and paste handling and the index down/across function has been enhanced to make it date aware so it can properly index calendar dates forward and backward by month or year.<br />'''<font face="Arial">Popup Panels<br /> </font>'''<font face="Times New Roman"><font size="3">Modellers can set up pop up windows for menus, palettes and summary displays. Multiple panels can be opened and the user can reposition them as desired. An Option enables a popup panel to auto-close once it loses focus which simplifies setting up popups. [#94]<br /><br />'''<font face="Arial">Paint Buttons With Controllable States and Hover<br /> </font>'''<font face="Times New Roman"><font size="3">A new paint object specifically intended as a button has been added. This object has many features enabling very responsive user interfaces to be built, including:
<font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Symbol"><font face="Times New Roman"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><font face="Times New Roman"><font size="3"><br> A system attribute stores the reason the runtime engine last stopped. This prevents the modeller having to track this themselves when dealing with models that restart the engine in order to effect changes upon their structure. [#8].<br>'''<font face="Arial">Label List Enhancements<br></font>'''<font face="Times New Roman"><font size="3">The contents of a label list can be copied from one list to another as easily as copying an attribute, using the SET routine operation with label list references for the source and target attribute references.<br>'''<font face="Arial">Messaging Enhancements<br></font>'''<font face="Times New Roman"><font size="3">Messages can now be sent to a specifically named message entry within a targeted subsystem. This greatly enhances the options for producing modular models with portals containing processing subsystems which can be “plugged in”, replaced and dynamically created. [#83]<br>'''''<font face="Arial"><font size="4">Complex model support.<br></font></font>'''''Memory<br><font face="Times New Roman"><font size="3">PC capabilities continue to grow and Planimate scales to keep up with them. Planimate originally ran in 500K of RAM on a 286. The latest sophisticated network models have approached 1GB of memory requirement for the model ''database''. The framework has undergone a number of enhancements to optimize the way memory is managed.<br>'''<font face="Arial">Model Profiling<br></font>'''<font face="Times New Roman"><font size="3">Profiling tools have been added to assist the modeller in identifying opportunities for improvement in their models execution by providing a breakdown where the most time was spent. [#8]<br>'''<font face="Arial">Batch Mode<br></font>'''<font face="Times New Roman"><font size="3">Batch mode running handles the loading of data sets as well as model files from the command line. [#86].<br>'''<font face="Arial">Run Time Engine<br></font>'''<font face="Times New Roman"><font size="3">The order that the engine processes events occurring at the same time has been much more strictly defined. Broadcasts get the highest priority, followed by item moves and unblocks. Lower priority events like button clicks and zero delays are only processed when there are no more higher priority events at the current time. This guarantees to the modeller that all side effects of an update to an attribute are applied before the user gets to interact with the system again. [#18]<br><br><br><font face="Arial"><br></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font>  
*States. The button can be driven into different states by different states by the model. Each state can have different text, graphical appearance and background image. [#47]
*Hover. A state can be assigned to be mouse-over sensitive. When a user hovers over the button, it can change its appearance to make it clear to the user that it is there [#3].
*Hover Broadcast. The hover event can be relayed to the model as a broadcast. This enables a modeller to pop up additional panels of information as the user moves the mouse without the user having to click [#112].<br /><br />'''<font face="Arial">Table Cell Change Broadcast<br /> </font>'''<font face="Times New Roman"><font size="3">The model can react immediately to changes in a table made by the user. The cell changed is made available to the model so related information can be updated without the user having to press an update button [#20].<br />'''<font face="Arial">Free Text Support In Tables<br /> </font>'''<font face="Times New Roman"><font size="3">Table cells can be configured to store arbitrary long text strings that the user can type in. These are not processed by Planimate at all but can be used for a user to enter annotations to data in other columns in the tables. [#42].<br />'''<font face="Arial">Value Formatting<br /> </font>'''<font face="Times New Roman"><font size="3">Many more calendar date formatting options are available. In addition Euro and Rand currency formats can now be displayed and imported.<br />'''<font face="Arial">Dialog Box Calendar Dates<br /> </font>'''<font face="Times New Roman"><font size="3">Fields in a dialog associated with calendar dates can now use the calendar style input field rather than the free form date entry field.<br />'''<font face="Arial">Conditional Display Of Views and Paint Objects<br /> </font>'''<font face="Times New Roman"><font size="3">A condition can be used to determine if a view (table, graph etc) or paint object should be displayed or not. This is enables a modeller to hide content on a panel which is not relevant (eg: feature not enabled, user running in non expert mode).<br />'''<font face="Arial">Arrowed Paint Lines<br /> </font>'''<font face="Times New Roman"><font size="3">Paint lines can have optional end and center arrow heads (outline or solid) displayed along with them.<br /><br />'''''<font face="Arial"><font size="4">Dynamic Spatial Network Support<br /> </font></font>'''''Broadcasts from Portals and Spatial Links<br /><font face="Times New Roman"><font size="3">The platform supports the end user creating nodes and connecting them with links to create spatial networks. model can receive and process. Broadcasts are available when nodes are clicked or dragged and the links joining them are clicked. Both mouse buttons are supported so they can be assigned different actions. [#99] [#100] The model can dynamically enable whether portals can be repositioned by the user. [#97]
 
 
In addition to creating and deleting portals, portals can be replaced under model control. This enables nodes to be automatically updated with new content placed in a master node. [#48].<br />'''''<font face="Arial"><font size="4">Interconnectivity<br /> </font></font>'''''Simple Web Server<br /><font face="Times New Roman"><font size="3">Planimate includes the ability to serve very simple web pages. These can be constructed on the fly by the model. The server is not sophisticated but enables Planimate to directly interface with systems that send processing requests as a URL. [#46]<br />'''<font face="Arial">URL Request<br /> </font>'''<font face="Times New Roman"><font size="3">Planimate can generate and send a URL request to another web site. This can be used to trigger action from a server configured to process active server page requests.<br />'''<font face="Arial">File Name Support<br /> </font>'''<font face="Times New Roman"><font size="3">Models can generate and manipulate file names as labels. The name of the last loaded data set [#35] and the name or name and full path of the last loaded data file can be referenced by the model [#106].<br />'''<font face="Arial">File Access Error Trapping<br /> </font>'''<font face="Times New Roman"><font size="3">In the past, Planimate would stop a model run when an error occurred while reading or writing to a data file. The modeller can now intercept such errors and take action without the default error message being presented to the user. [#59].<br />'''<font face="Arial">ODBC Enhancements<br /> </font>'''<font face="Times New Roman"><font size="3">ODBC data sources are accessed by name. The name can now be dynamically provided by the model at runtime rather than hard coded by the modeller. [#10]. An ODBC connection cache can be used to speed up multiple ODBC accesses to the same database. [#40].<br />'''''<font face="Arial"><font size="4">Application Generation<br /> </font></font>'''''<font face="Times New Roman"><font size="3">Planimate models can be saved as stand alone EXE files which package all the required resources for the model into a single EXE. [#37] Multimedia files such as sounds and AVI clips can be imported into a DB. Planimate will extract them as required to play them. [#38]


----


Planimate models can also be saved as a new type of file, PMB, Planimate Model Bundles. A PMB file includes both the model and database components of a Planimate model.<br />'''<font face="Arial">Time Zone Correction<br /> </font>'''<font face="Times New Roman"><font size="3">If a model is used from different time zones, the need may arise to present, import and export calendar dates and times in local time format. Rather than adjust all the data in the model, a time zone correction system attribute has been added which gets applied to all displays and inputs of calendar times. The model can then be built to store times internally in UTC with a local offset configured and applied by each particular user. [#85]<br />'''''<font face="Arial"><font size="4"><br /> Modeller Support<br /> </font></font>'''''Modeless Table Editing<br /><font face="Times New Roman"><font size="3">Table editing is no longer modal. Multiple tables can be opened for viewing and editing and their windows can be repositioned and decoupled from the Planimate main window (so they become accessible via alt-tab). These windows can be dynamically opened by Planimate and by buttons. This means a model need not contain a view for every table that a modeller may want to inspect, reducing overheads and increasing model run speed.<br />'''<font face="Arial">Group Selection<br /> </font>'''<font face="Times New Roman"><font size="3">Groups of objects can now be selected by dragging and forming a box around them. This enables many objects to be rapidly selected then copied, moved, aligned or deleted. Multiple group selections can be combined to select objects in different regions of a panel.<br />'''<font face="Arial">Navigation Enhancement<br /> </font>'''<font face="Times New Roman"><font size="3">A new history list stores the panels recently visited by a modeller as they edit and navigate a model. This history can be rapidly navigated using keys and panels within the history can be repositioned to enable panels of interest to be placed close together in the history list. [#103]<br />'''<font face="Arial">Paint re-inheritance<br /> </font>'''<font face="Times New Roman"><font size="3">It is now possible to re-inherit objects from a panel without having to delete all existing inherited objects.<br />'''<font face="Arial">Debugging Enhancements<br /> </font>'''<font face="Times New Roman"><font size="3">Debugging options can be changed without having to pause the run, via the background menu. The debug and breakpoint windows show more information about the model when an error occurs and enable attributes and routines to be inspectedw without having to pause or stop the run. [#13]
<font size="2">idkbase note 195</font>  


 
[[Category:Obsolete]]
Trace animation is now a system attribute and can be switched on and off within routine code. This can be invaluable when homing in on a trouble spot in a model.
 
 
A system attribute stores the reason the runtime engine last stopped. This prevents the modeller having to track this themselves when dealing with models that restart the engine in order to effect changes upon their structure. [#8].<br />'''<font face="Arial">Label List Enhancements<br /> </font>'''<font face="Times New Roman"><font size="3">The contents of a label list can be copied from one list to another as easily as copying an attribute, using the SET routine operation with label list references for the source and target attribute references.<br />'''<font face="Arial">Messaging Enhancements<br /> </font>'''<font face="Times New Roman"><font size="3">Messages can now be sent to a specifically named message entry within a targeted subsystem. This greatly enhances the options for producing modular models with portals containing processing subsystems which can be “plugged in”, replaced and dynamically created. [#83]<br />'''''<font face="Arial"><font size="4">Complex model support.<br /> </font></font>'''''Memory<br /><font face="Times New Roman"><font size="3">PC capabilities continue to grow and Planimate scales to keep up with them. Planimate originally ran in 500K of RAM on a 286. The latest sophisticated network models have approached 1GB of memory requirement for the model ''database''. The framework has undergone a number of enhancements to optimize the way memory is managed.<br />'''<font face="Arial">Model Profiling<br /> </font>'''<font face="Times New Roman"><font size="3">Profiling tools have been added to assist the modeller in identifying opportunities for improvement in their models execution by providing a breakdown where the most time was spent. [#8]<br />'''<font face="Arial">Batch Mode<br /> </font>'''<font face="Times New Roman"><font size="3">Batch mode running handles the loading of data sets as well as model files from the command line. [#86].<br />'''<font face="Arial">Run Time Engine<br /> </font>'''<font face="Times New Roman"><font size="3">The order that the engine processes events occurring at the same time has been much more strictly defined. Broadcasts get the highest priority, followed by item moves and unblocks. Lower priority events like button clicks and zero delays are only processed when there are no more higher priority events at the current time. This guarantees to the modeller that all side effects of an update to an attribute are applied before the user gets to interact with the system again. [#18]<br /><br /><br /><font face="Arial"><br /> </font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font>
----
[[Category:Release Note]]
<font size="2">idkbase note 195</font>

Latest revision as of 18:51, 27 December 2009

Highlights of Planimate Enhancements
Versions 4.26a to 4.29z.



Introduction

In the 16 months since January 2002 when Planimate 4.26 was released, there have been about 90 releases which averages to over one release a week during that period. Many of the enhancements are bug fixes and minor tweaks. In addition many significant enhancements in capability have been made and are outlined in this document.


This year has seen the emergence of the InterDynamics idBase™. This is being used to provide a growing, real time updated searchable repository of Planimate reference material. Items in the idBase™ are referenced by a note number. Where further material is available, the relevant note number is indicated in square brackets [] in the notes below.


The updates are presented 5 sections
End User Interface Enhancements
Dynamic Spatial Networks
Interconnectivity
Modeller Support
Complex Model Support



End User Interface Enhancements
Table Editing
Table editing has been improved. The cell context menu has improved undo, copy and paste handling and the index down/across function has been enhanced to make it date aware so it can properly index calendar dates forward and backward by month or year.
Popup Panels
Modellers can set up pop up windows for menus, palettes and summary displays. Multiple panels can be opened and the user can reposition them as desired. An Option enables a popup panel to auto-close once it loses focus which simplifies setting up popups. [#94]

Paint Buttons With Controllable States and Hover
A new paint object specifically intended as a button has been added. This object has many features enabling very responsive user interfaces to be built, including:

  1. States. The button can be driven into different states by different states by the model. Each state can have different text, graphical appearance and background image. [#47]
  2. Hover. A state can be assigned to be mouse-over sensitive. When a user hovers over the button, it can change its appearance to make it clear to the user that it is there [#3].
  3. Hover Broadcast. The hover event can be relayed to the model as a broadcast. This enables a modeller to pop up additional panels of information as the user moves the mouse without the user having to click [#112].

    Table Cell Change Broadcast
    The model can react immediately to changes in a table made by the user. The cell changed is made available to the model so related information can be updated without the user having to press an update button [#20].
    Free Text Support In Tables
    Table cells can be configured to store arbitrary long text strings that the user can type in. These are not processed by Planimate at all but can be used for a user to enter annotations to data in other columns in the tables. [#42].
    Value Formatting
    Many more calendar date formatting options are available. In addition Euro and Rand currency formats can now be displayed and imported.
    Dialog Box Calendar Dates
    Fields in a dialog associated with calendar dates can now use the calendar style input field rather than the free form date entry field.
    Conditional Display Of Views and Paint Objects
    A condition can be used to determine if a view (table, graph etc) or paint object should be displayed or not. This is enables a modeller to hide content on a panel which is not relevant (eg: feature not enabled, user running in non expert mode).
    Arrowed Paint Lines
    Paint lines can have optional end and center arrow heads (outline or solid) displayed along with them.

    Dynamic Spatial Network Support
    Broadcasts from Portals and Spatial Links
    The platform supports the end user creating nodes and connecting them with links to create spatial networks. model can receive and process. Broadcasts are available when nodes are clicked or dragged and the links joining them are clicked. Both mouse buttons are supported so they can be assigned different actions. [#99] [#100] The model can dynamically enable whether portals can be repositioned by the user. [#97]


In addition to creating and deleting portals, portals can be replaced under model control. This enables nodes to be automatically updated with new content placed in a master node. [#48].
Interconnectivity
Simple Web Server
Planimate includes the ability to serve very simple web pages. These can be constructed on the fly by the model. The server is not sophisticated but enables Planimate to directly interface with systems that send processing requests as a URL. [#46]
URL Request
Planimate can generate and send a URL request to another web site. This can be used to trigger action from a server configured to process active server page requests.
File Name Support
Models can generate and manipulate file names as labels. The name of the last loaded data set [#35] and the name or name and full path of the last loaded data file can be referenced by the model [#106].
File Access Error Trapping
In the past, Planimate would stop a model run when an error occurred while reading or writing to a data file. The modeller can now intercept such errors and take action without the default error message being presented to the user. [#59].
ODBC Enhancements
ODBC data sources are accessed by name. The name can now be dynamically provided by the model at runtime rather than hard coded by the modeller. [#10]. An ODBC connection cache can be used to speed up multiple ODBC accesses to the same database. [#40].
Application Generation
Planimate models can be saved as stand alone EXE files which package all the required resources for the model into a single EXE. [#37] Multimedia files such as sounds and AVI clips can be imported into a DB. Planimate will extract them as required to play them. [#38]


Planimate models can also be saved as a new type of file, PMB, Planimate Model Bundles. A PMB file includes both the model and database components of a Planimate model.
Time Zone Correction
If a model is used from different time zones, the need may arise to present, import and export calendar dates and times in local time format. Rather than adjust all the data in the model, a time zone correction system attribute has been added which gets applied to all displays and inputs of calendar times. The model can then be built to store times internally in UTC with a local offset configured and applied by each particular user. [#85]

Modeller Support
Modeless Table Editing
Table editing is no longer modal. Multiple tables can be opened for viewing and editing and their windows can be repositioned and decoupled from the Planimate main window (so they become accessible via alt-tab). These windows can be dynamically opened by Planimate and by buttons. This means a model need not contain a view for every table that a modeller may want to inspect, reducing overheads and increasing model run speed.
Group Selection
Groups of objects can now be selected by dragging and forming a box around them. This enables many objects to be rapidly selected then copied, moved, aligned or deleted. Multiple group selections can be combined to select objects in different regions of a panel.
Navigation Enhancement
A new history list stores the panels recently visited by a modeller as they edit and navigate a model. This history can be rapidly navigated using keys and panels within the history can be repositioned to enable panels of interest to be placed close together in the history list. [#103]
Paint re-inheritance
It is now possible to re-inherit objects from a panel without having to delete all existing inherited objects.
Debugging Enhancements
Debugging options can be changed without having to pause the run, via the background menu. The debug and breakpoint windows show more information about the model when an error occurs and enable attributes and routines to be inspectedw without having to pause or stop the run. [#13]


Trace animation is now a system attribute and can be switched on and off within routine code. This can be invaluable when homing in on a trouble spot in a model.


A system attribute stores the reason the runtime engine last stopped. This prevents the modeller having to track this themselves when dealing with models that restart the engine in order to effect changes upon their structure. [#8].
Label List Enhancements
The contents of a label list can be copied from one list to another as easily as copying an attribute, using the SET routine operation with label list references for the source and target attribute references.
Messaging Enhancements
Messages can now be sent to a specifically named message entry within a targeted subsystem. This greatly enhances the options for producing modular models with portals containing processing subsystems which can be “plugged in”, replaced and dynamically created. [#83]
Complex model support.
Memory
PC capabilities continue to grow and Planimate scales to keep up with them. Planimate originally ran in 500K of RAM on a 286. The latest sophisticated network models have approached 1GB of memory requirement for the model database. The framework has undergone a number of enhancements to optimize the way memory is managed.
Model Profiling
Profiling tools have been added to assist the modeller in identifying opportunities for improvement in their models execution by providing a breakdown where the most time was spent. [#8]
Batch Mode
Batch mode running handles the loading of data sets as well as model files from the command line. [#86].
Run Time Engine
The order that the engine processes events occurring at the same time has been much more strictly defined. Broadcasts get the highest priority, followed by item moves and unblocks. Lower priority events like button clicks and zero delays are only processed when there are no more higher priority events at the current time. This guarantees to the modeller that all side effects of an update to an attribute are applied before the user gets to interact with the system again. [#18]




idkbase note 195