What’s New in UniPlot 4.2.2

This page describes the changes made to UniPlot 4.2.2 since version 4.2.1.

New Features

  • A new report control with edit fields has been added to the DialogBox function. The new control may contain edit fields, buttons, checkboxes and combo boxes. A combo box can be defined to select colors, markers, line styles etc.
  • New UniPlot File Viewer: The new Viewer 4.2.2 can zoom and scroll x/y datasets. The viewer is a free tool to view and print UniPlot documents.
  • Improved log-axis scaling. If the axis range is relatively small (approx. 1 decade) a linear labelling can be displayed. Example: 1 to 12 in steps of 2 will produce the labels 1,2,4,6,8,10 and 12. So far the log axis could only be labeled with full decades, e.g. 1, 10, 100, 1000. (see Diagram=>X/Y/Z-Axis=>Parameters). Limitation: Axes with the scaling option Log: Label linear cannot be correctly displayed with older UniPlot versions.
  • The 2D filter function boundary() has been extended. The function can now calculate the upper and lower hull curve. The data can be unsorted and must not be monoton. (see Data=>Data Filter and Data=>Create Data Boundary).

New UniScript Functions

  New Functions in UniPlot 4.2.2
AppEventWndClear AppEventWndClear removes all events from the event window.
CreateListBoxText CreateListBoxText creates the iniatialize string for list boxes and combo boxes.
GetListBoxText GetListBoxText splits the return value of a combo box or list box into a string vector. The value is returned from the DialogBox function.
NC_GetVarNames NC_GetVarNames returns the variable names of a netCDF data file (NC file).
ReportControl_GetColorNames ReportControl_GetColorNames returns a string vector with color values and names.
ReportControl_GetColorRGB ReportControl_GetColorRGB returns the color values of a marker control in a report control.
ReportControl_GetInit ReportControl_GetInit converts a string matrix into a scalar string which can be used to initialize the report control in a dialog box.
ReportControl_GetLineStyle ReportControl_GetLineStyle returns the line style value of a marker combo box of a report control.
ReportControl_GetLineStyleNames ReportControl_GetLineStyleNames returns a string vector with line style names which can be used to initialize the marker combo box in a report control.
ReportControl_GetMarkerStyle ReportControl_GetMarkerStyle returns the marker index of the marker selected in the report control in the dialog box.
ReportControl_GetMarkerStyleNames ReportControl_GetMarkerStyleNames returns a string vector with marker names which can be used to initialize the marker combo box in a report control.
ReportControl_GetMatrix ReportControl_GetMatrix converts the DialogBox return value for the report control into a matrix.
ReportControl_RemoveSelection ReportControl_RemoveSelection is a helper function to remove the selected records from a report control. Add a button to the control and call this function in the button callback function.
ReportControl_SelUpOrDown ReportControl_SelUpOrDown is a helper function to modify the record order in a report control. Add a button to the control and call this function in the button callback function.
ReportControl_Sort The ReportControl_Sort callback function can be set in the dialog box template string of a report control to enable sorting of records. The function is invoked by UniPlot when the user clicks the buttons in the header of a report control.

Modified UniScript Functions

  Changed Functions in UniPlot 4.2.2
DialogBox DialogBox creates a dialog box with static text, edit fields, list boxes, combo boxes, check boxes, a report list (list with multiple columns), a property list box, a group box, tree control and buttons.The dialog box can be configured to be resizeable (see Dialog control |F @ xxx_callback|).

Bug Fixes

The following bugs have been fixed:

  • (ID810) auto_ReplaceTextFromNCFile: The netCDF file was not closed if there was no text to replace.

  • (ID820) The function to empty the event window (see View=>Event Window Configuration) did not delete the events correctly. Sometimes after a new start of UniPlot events already deleted were displayed in the event window.

  • (ID821) MDF/VS100/INCA: Certain MDF files that could be read with UniPlot 4.2.0 could not be imported with UniPlot 4.2.1. The bug has been fixed.

  • (ID822) Problem with local variables if objects were used. Example:

    def test_local()
        a = [.];
        a.a1 = 1;
        a.a2 = 2;
        // ...
        a.a299 = 299;
        a.a300 = 300;
        b = 1; // Error message

    In the function above UniScript calculated an incorrect number of local variables. The elements “a1” to “a300” were treated as local variables. That created the following error message “To many local variables: * internal error *”. In fact the function has only two variables, a and b.

  • (ID824) Style File: If a style file in the old format (.icb) was converted to the new format (.sty) the attribute “label-format” (3D-Style) was not saved correctly. The created style file could not be loaded.

  • (ID825) MDF Files: The MDF filter has been extended to support the data type double. Time channels that are stored in the MDF file as 64-Bit-double values cannot be read.

  • (ID826) Import: If the unit string is already enclosed in square brackets in the source file, the brackets will be removed to avoid double brackets.

  • (ID827) Data exchange: In one of the older UniPlot versions an important function call was removed for test purposes. The function call updated depended datasets, for example the sort function.

  • (ID829) Function DialogBox: The number of parameters of the callback functions were determined incorrectly. If the number of parameters were greater than expected, the function was invoked with less parameters than necessary.

  • (ID831) UniScript-Parameter: Functions as parameters could not invoke themselves. Example:

    def TTest()
        AppSetTimer(TTest, 100);

    This bug has been fixed.

  • (ID835) Axes scaling: If the x-axis has a descending scaling the axis title could not be left or right aligned.

  • (ID837) The RegConnect function did not work in UniPlot 4.2.0 and 4.2.1. All functions which accessed the Windows registry did not work as well.

  • (ID840) Excel-Report: If an excel template used the option Scaling/Fit to in the “Page setup” dialog box the report could not be created correctly. The option is now set to Scaling/Adjust to 100% of normal size.