Using Legato

The Legato Scripting Language and the IDE are included in all installations of GoFiler Complete. You may also download the Legato Interpreter for free as a standalone package below.

Legato Basic

https://www.novaworkssoftware.com/legato/current/legatobasic.zip

This package will allow you to run Legato scripts from a command line. Legato is free for development for personal or non-commercial use. By downloading Legato Basic, you agree to the Terms and Conditions of its use.

Revised: October 5, 2018

Current Release: 1.1n (GoFiler 4.24a)

10/1/2018

1.0 Legato Script Language Notes

1.1 IDE Changes

Editor

–  Corrected an issue with the Serial Number function (Ctrl+K+N) where it would mess up tabbed data.

–  Added logic to preserve the select region after running the Serial Number function (Ctrl+K+N).

1.2 Script Engine

General

–  Added a test and error report for Unicode encoding.

–  Added a test for a source file containing binary data.

Resource Compiler

–  Added logic to detect and report duplicate items as warnings in the dialog resource header.

1.3 Function Changes

Enhancements

–  Added an optional working folder parameter to the RunProgram function.

–  Improved operation of progress window functions and added checking for class integrity.

–  Added Python (.py) as a known file type.

–  Improved control ID and dialog page validation for combo and list box class API functions.

Changes/Corrections

–  Added an override for placing strings into a buffer using BinaryPutSegment to allow for the size to specify the terminating zero.

–  A general change was made to dialog positioning that relied on an application frame. When the frame was not present, the positioning information was erratic. It now relies on the primary monitor.

–  Improved the error reporting for the DataControlGetColumnCount and DataControlGetRowCount functions. The functions have been changed to return 0 on all failure cases rather than a formatted error code. This can help deal with programmers who may not check for an error condition.

–  Updated error reporting on ListBoxGetSelectCount to return 0 on error.

–  The function DataSheetIsMergedCell has been renamed to DataSheetIsCellMerged for consistency. The function now checks cell positions that are merged over as well as the original cell position. If the cell is the origin cell, the span values are added to the last error returned.

–  The function DataSheetIsNullCell has been renamed to DataSheetIsCellNull for consistency.

–  The SDK name for a merged cell flag has been changed from DS_CF_NULL_CELL to DS_CF_NON_CELL to indicate a cell is not valid, for example a merged cell. This avoids confusion with null cell positions when data has not been added to a specific area of a sheet.

1.4 New Functions

Data Sheet Object

–  DataSheetEnumerateNamedCells — Enumerates all named cells within a sheet.

–  DataSheetGetCellAttributes — Returns the aggregate attribute string of a cell.

–  DataSheetGetCellAttributeString — Returns an array of attributes for a cell.

–  DataSheetHasColumnArray — Tests whether the Data Sheet Object has a Column Array.

–  DataSheetHasRowArray — Tests whether the Data Sheet Object has a Row Array.

–  DataSheetSetCellAttributes — Sets various attributes of a specified cell.

–  DataSheetSetCellText — Sets the display text of a cell

–  DataSheetSetRowDataWord — Sets the data word for a specified row.

Data View Object

–  DataViewEnumerateNamedCells — Enumerates all named cells within a sheet.

Dialog

–  ControlGetID — Returns a control’s ID number.

–  ControlGetWindowStyle — Returns window style bits associated with a control.

–  UseMessageBoxes — Overrides console only messages to use message boxes in a console application.

Flow and System

–  RunProgramElevated — Runs another executable (exe) as a separate elevated process and immediately returns.

HTML Field (Comment) Processing

–  FieldGetFieldProperties — Returns all properties associated with a field.

–  FieldGetParameters — Returns an array of all parameters as key names and values.

–  FieldGetParseString — Returns a copy of the parse buffer from the last parse action.

–  FieldGetFieldToken — Returns the field token value.

–  FieldLoadString — Loads a string into an new Field Object.

–  FieldToParameters — Parses a supplied field in a string and returns a list of parameters.

–  FieldWrite — Writes the current field back to the source object.

Progress Window

–  AttachApplicationProgress — Attaches the application's open progress to the script.

String Functions

–  OrderProperName — Parses name of a person and orders the components as directed.

–  SplitProperName — Splits a person's name into first and last names.

Trackbar Control

–  TrackbarClearSelect — Clears the current selection range in a trackbar.

–  TrackbarClearTicks — Removes the current tick marks from a trackbar.

–  TrackbarGetBuddy — Retrieves the handle to a trackbar control buddy window at a given location.

–  TrackbarGetChannelRect — Retrieves the size and position of the bounding rectangle for a trackbar's channel.

–  TrackbarGetLineSize — Retrieves the number of logical line positions on the trackbar slider.

–  TrackbarGetPageSize — Retrieves the number of logical page positions on the trackbar slider.

–  TrackbarGetRange — Retrieves the minimum and maximum logical range of a trackbar.

–  TrackbarGetSelectRange — Retrieves the low and high select positions of a trackbar.

–  TrackbarGetSliderPosition — Retrieves the current logical position of the slider in a trackbar.

–  TrackbarGetSliderRect — Retrieves the size and position of the bounding rectangle for the slider in a trackbar.

–  TrackbarGetSliderSize — Retrieves the size of the slider in a trackbar.

–  TrackbarGetTickCount — Retrieves the number of tick marks in a trackbar.

–  TrackbarGetTickMarks — Retrieves an array of positions of tick marks for a trackbar.

–  TrackbarGetTickPosition — Retrieves the logical or physical position of a tick mark in a trackbar.

–  TrackbarGetTooltipWindow — Retrieves the handle to the tooltip control assigned to the trackbar, if any.

–  TrackbarSetBuddy — Assigns a window as the buddy window for a trackbar control.

–  TrackbarSetLineSize — Sets the number of steps the trackbar slider moves in response to a line command.

–  TrackbarSetPageSize — Sets the number of steps the trackbar slider moves in response to a page command.

–  TrackbarSetRange — Sets the minimum and maximum logical positions for the slider in a trackbar.

–  TrackbarSetSelectRange — Sets the starting and ending positions for the available selection range in a trackbar.

–  TrackbarSetSliderPosition — Sets the current logical position of the slider in a trackbar.

–  TrackbarSetSliderSize — Sets the size of the slider in a trackbar in pixels.

–  TrackbarSetTickFrequency — Sets the interval frequency for tick marks in a trackbar.

–  TrackbarSetTickMark — Sets a tick mark in a trackbar at the specified logical position.

–  TrackbarSetTooltip — Assigns a tooltip control to a trackbar control.

–  TrackbarSetTooltipPosition — Positions a tooltip control used by a trackbar control.