Version 4.5
Post date: May 19, 2014 3:27:58 PM
Version 4.5.5, 24 Nov 2014 (rev 26 Nov). Minor update to Figure Composer. Reworked the checkout scheme for revising a portal archive in DataNav Builder.
(Rev 26 Nov) The Matlab FIG-to-FypML import engine -- part of the supporting JAR that comes with matfig2fyp() -- now uses your preferred default values for certain FypML node properties (like font and stroke characteristics, axis label offset, heatmap smoothing enable, etc.) -- as read from the settings file in your DataNav workspace.
You can now reposition a figure tab anywhere in the tab strip in Figure Composer. Just drag past the left edge of the strip to move a tab to hidden positions at the front of the list, or drag past the right edge to move it to hidden positions at the tail of the list.
You can also access the File|Close submenu as a "right-click context menu" -- just right-click anywhere along the figure tab strip.
New feature - Moving, deleting, or copying multiple figure files in FC's Workspace Browser. You can now select any subset of files in the browser's file list, using the Shift or Ctrl (Command in Mac OS X) in the usual manner to construct the selection. Buttons below the file list let you delete or duplicate the files selected (in the latter case, the file copies are put in the same folder as the originals). Alternatively, drag the selection and drop it on a folder in the browser's folder list. The selected files will be moved to that folder; if the Ctrl key is depressed when you release the mouse, the files are copied to the destination folder instead.
Other FC changes and bug fixes: (1) Fixed a bug in the generation of PS code that renders a rose plot (histogram in a polar graph). (2) Whether or not image smoothing should be enabled for a newly created heat map is now a user preference. Use the File|Preferences... command to view and change any of your preferences. (3) You can now "nudge" an object in the figure canvas up, down, left or right in 0.05-inch or 0.005-inch increments via Alt+arrow or Alt+Ctrl+arrow, respectively.
Updated Builder and Server to implement a different scheme for checking out a portal archive for revision. In the previous version, the checked-out archive was downloaded to the user's workspace on the Builder client, where changes could be made offline; at check-in, the revised archive was uploaded to the portal server, where it replaced the previous version of the archive. This scheme proved far too slow, since downloading and uploading an entire archive can take many minutes for a large data hub. In the new design, a private copy of the checked-out archive is maintained on the server but is "seen" only by the registered user that checked out the archive in the first place. That user can hold the "checkout lock" for an indefinite time, across many login sessions. The user must be logged into the portal in order to submit changes to the archive. Those revisions are applied to the private copy, while the original version of the archive remains "live" for others to explore. On check-in, the private copy replaces the original, and the checkout lock is released. Minor revisions were made to Viewer to account for minor changes in the DataNav client-server communication protocol; the protocol version number = 3.
Version 4.5.4, 27 Oct 2014. Added some minor new features to Figure Composer. Reworked the DataNav portal app to introduce archive "checkout" and "check-in" so that an author can work on revisions to a portal archive while it remains "live" on the portal.
New feature - Rearranging figure tabs in Figure Composer. Drag any visible figure tab to the left or right to reposition it. Unfortunately, only the visible tabs can be repositioned in this manner; you cannot "grab" a hidden tab in the popup-menu and drag it onto the tab strip.
New feature - Closing multiple figure tabs in FC. The new File|Close submenu includes eight options: close the current figure (same as clicking the tab's "X" button; close all figures; close all visible figure tabs (if there are more tabs than can be shown horizontally); close any hidden figure tabs; close all figures except the current one; close all figure tabs left of the current selection (including any hidden ones; close all figure tabs right of the current selection (again including any hidden ones); and close all unmodified figures. If any figure to be closed has been modified, FC will ask you whether or not to save the changes.
Performance tweak -- Polyline simplification to speed rendering in FC. In an attempt to improve rendering performance when drawing traces representing very large data sets (more than 5000 points), FC implements a simple distance-based sub-sampling technique. Given a point P in the polyline rendered "thus far", the algorithm will skip all subsequent points that remain within two stroke widths of P. Any discontinuities in the original polyline are preserved in the sub-sampled version. Tests indicated that this improved the speed of rendering by an order of magnitude for a 30MB figure file. The sub-sampling scheme applies only to function and trace nodes. In the case of a trace node, the algorithm is not applied in the histogram display mode, nor to the error bars that may be rendered in the polyline display mode. A future release may allow you to disable sub-sampling (if, for example, you are concerned about the fidelity of the rendered data traces).
Other changes in FC: (1) The background task that checks for changes in any DataNav figure or data set source files now runs more frequently in order to detect file changes more quickly (roughly once a second instead of every 5). (2) When FC detects that the source file for a currently open figure has been deleted from the file system, it will automatically remove the corresponding figure tab UNLESS the figure has been modified within FC.
Modified the Matlab utility putdata2fyp() so that it will not fail when you attempt to replace a data set in the figure with an identical data set. Prior versions of the utility would throw a Matlab error in this scenario, which may arise often when you automate data injection with a script. Now, the function will return without throwing an error and -- since on changes were made -- without saving the figure to file (unless an alternate destination file was specified).
Some minor changes to reduce the minimum height of the Builder frame window down to 828 pixels. Now you can use the app on screens that are 1280x1024 or better.
Updated Builder and Server to support four fields of contact information for a registered portal user (full name, job title or position, phone number, and email address). The contact information is optional, can be updated by the user when logged in, and is not checked for validity.
Completed extensive changes to Builder and Server to support checkout and check-in of a portal archive. An archive is checked out in order to make revisions "off-line", possibly for an extended, indefinite period of time . A copy of the checked-out archive is downloaded to the user's local workspace so revisions can be made to it there; no portal interactions are necessary. The current version of the archive remains "live" on the portal but cannot be checked out by any other registered user. When the user has finished his revisions, he will check-in the revised archive, uploading it to the portal, where it replaces the old version. The checkout/check-in scheme is a prerequisite to supporting multi-author collaboration on the construction and maintenance of portal archives, a feature which we hope to introduce in the next release of the DataNav portal application.
Version 4.5.3, 16 September 2014. Some minor changes to Figure Composer, and a refactoring of DataNav Builder's GUI.
The GUI for DataNav Builder has been reworked to eliminate the three "perspectives". Since FC will remain as a standalone app, there was no need for the My Figures perspective in Builder. In this new release, the remaining two perspectives (My Archives and My Portals were combined into a single more unified interface. The section in this online guide that describes Builder has been updated to reflect the application's new "look". There were no changes to portal data or infrastructure, so DataNav Server and Viewer were unaffected.
FC now detects when the source file for a currently open figure is modified outside the application. If you have not yet modified the figure within FC, it will be reloaded automatically. If you HAVE modified the figure, no reload occurs; however, if you then save the figure to the same source file, FC raises an alert that the source file has been altered externally; you'll have the option to cancel the save operation or proceed anyway.
Modified implementation of multi-line axis label to allow text lines that are up to 2x the length of the axis itself. Insert line breaks as needed in the multi-line label to achieve the desired appearance.
Bugs fixed: (1) When you start typing characters into the data set ID field (labelled Data) in a Trace, Raster or HeatMap Properties editor, the caret would get repositioned at the end of the string, so the second and subsequent characters end up there, instead of where you intended. (2) When you enter a new ID string in that same data set ID field and then shift the focus to a different component on the user interface, FC would fail to "detect" the change in the data set ID.
Added Matlab support JAR, itextpdf-5.5.0.jar: The introduction of PDF support in V4.4.3 injected a dependency on this iText PDF JAR in the FypML rendering code. Since both matfig2fyp.m and putdata2fyp.m render previews of FypML figures, the iText JAR is now required in the Matlab Java class path, or those Matlab utilities will fail to run. The distribution packages have been fixed to include itextpdf-5.5.0.jar in the Matlab support folder.
Version 4.5.2, 11 August 2014 (rev 25 Aug)
Setting the "anchor node" for object alignment operations. When you select multiple objects in a figure, one of the selected objects is distinctively highlighted by a bright blue outline in both the Figure Canvas and Figure Navigator --this is the focus or "anchor" node for the selection. Now, when you perform any of the object alignment operations, all other objects in the multi-selection are aligned with respect to this anchor node. You can change the selection state (including whether or not it is the anchor for the selection) by clicking on the node in either the canvas or navigation tree while the Ctrl key (Command key in Mac OS X) is depressed. Try it.
Alignment of rotated objects now permitted.
Support for multi-line automated axis labels. The automated label for any graph axis can now be broken across multiple lines by inserting a line break character between each line. The text widget in which you enter the axis label has been updated to allow line breaks in the label string.
Support for transparent color. You can now set an element's text/fill color (the FypML fillColor attribute) to fully transparent, which is essentially the same as not filling the element. The primary reason for this feature was to permit hollow shapes and data point marker symbols (for example, in a scatter plot). You can also specify a transparent background for the textbox and image elements. You can even set an element's strokeColor to transparent.
The filled attribute was removed from the trace and raster elements, since it is the same as specifying a transparent fillColor. FypML schema version number is now 16. As always, previous versions of Figure Composer will not be able to read in figure files generated by FC 4.5.2.
Adjusting line height in a multi-line text box or axis label. You can now control the spacing between consecutive text lines in a text box or multi-line axis label by changing the element's lineHt property. This new property is specified as a fraction of the element's font size and is restricted to the range [0.8, 3.0]; its default value is 1.2.
Minor changes and bug fixes in Figure Composer: (1) Fixed erase-and-redraw artifacts that appeared when moving shape or textbox elements. (2) A trace node was not updated properly when the "Hide?" flag or text/fill color was changed on the Trace Editor's "Error Bars" tab. (3) Improved the FypML-to-Postscript export engine to support images with transparent backgrounds; requires a Postscript Language Level 3 feature (a type 4 image dictionary).
Minor changes and bug fixes in DataNav Portal Apps: (1) Changed the rendering of shapes and marker symbols in Viewer to better match how it's done in Figure Composer. (2) Portal login is now initiated upon hitting the Enter key after entering your password (so you don't have to hit the "Login" button directly). Similarly when changing your password or adding a user. (3) The Change password command was not working in Builder's portal manager UI, due to a coding error. (4) A portal's archive vault will now open successfully even if a transaction state file is found in the vault's root directory -- as long as the file is empty. The file is normally deleted when the vault is closed, unless the server machine shuts down abnormally.
Revised, 25 August: Fixed a bug in file-saving procedure related to the new lineHt attribute. Also: (1) You can now pan the figure canvas in any cursor mode other than zoom mode. (2) Added some keyboard shortcuts and other minor tweaks to the HTML editor panel used in DataNav Builder to compose the HTML description for an archive, a hub navigation view, or an archived figure.
Version 4.5.1, 01 July 2014. Introduced the "figure archive" concept in the DataNav Portal application suite. [NO changes to Figure Composer.]
This release updates the conceptual design of the portal and its contents. The portal or workspace "vault" is considered a collection of archives that come in one of two flavors. A data archive, or data hub, has already been implemented; that implementation is unchanged. A figure archive is an ordered collection of related FypML figures, along with some descriptive information. Like a data hub, a figure archive has a title, author list, and description that together comprise the archive's summary. Furthermore, each member figure comes with a title and description that serve as the figure's legend. A figure archive is far simpler, much easier to build, and takes up a lot less disk space than a data hub. It was introduced to provide a convenient, fast way to store a set of figures on the portal and share them with others -- and not have to deal with the complexities of constructing a data hub.
All three components of the DataNav application suite: Builder, Server, and Viewer -- have been updated to support figure archives. The Lisberger lab portal has been updated accordingly, and it includes a sample figure archive containing a collection of random figures.
Version 4.5.0, 20 May 2014. More new features for Figure Composer.
New feature: Multiple selection. You can now select multiple nodes on the figure for certain editing operations. There are various ways to form a multi-node selection on the Figure Navigator or the Figure Canvas. Multi-node operations are limited to copying, cutting, moving, applying a style set, and aligning the selected nodes. This last operation is a new feature (see below) that requires the selection of at least two relocatable graphic objects. You'll notice that the Property Editor is hidden whenever more than one node is selected in the figure, for obvious reasons. Note that all multi-node operations can be undone/redone in the same way as single-node operations.
New feature: Aligning objects. Whenever at least two relocatable objects are selected, the commands in the new Edit|Align submenu are enabled. These let you align all selected objects along a common left, right, bottom or top edge, or horizontally or vertically center the objects. Objects that can be aligned include graphs, text labels, text boxes, image elements, line segments, shapes, legends, and calibration bars.
New feature: "Nudging" an object. Hold down the Alt key and press the Left, Right, Up, or Down arrow key to "nudge" the currently selected object by 0.05 inches in the corresponding direction. The original units of measure for the object's location are preserved. If more than one relocatable object is currently selected, all such nodes are repositioned in the same manner.
Bug fixed: The figure canvas rulers in the FigureComposer UI failed to update when you changed the dimensions of the root figure node, although they were corrected once you resized the application window.
Bug fixed (regression): The Export All menu commands stopped working due to a logic mistake introduced in V4.4.3. Fixed.
Bug fixed: Figures were not printing correctly in landscape orientation. Essentially, the page would usually contain nothing at all because the figure was rotated off the page.
Bug fixed, Portal Viewer web client: If a view template happened to include two placeholder data sets that were identical, then data set injection did not work correctly. Regardless the injected data, the two placeholder sets would always be injected with the same data set for every instantiation of that view.