Everything Else
Preview Release
What’s New in Helix 6.1.3
Interface changes and refinements since the last Preview Release
High Resolution Printing

This information has been incorporated into the main body of documentation.

The printing code has been completely rewritten, delivering high resolution output.

Helix now automatically reduces the size of the printed material to avoid printing a single page on two (or more) sheets of paper.

Note that if you do not open Page Setup and specify your printer type before printing, macOS assumes fairly large margins. Open Page Setup and choose your specific printer type before printing to get the best results.

You can disable this automatic reduction feature by setting the HxAdjustPrintScaleIfNeeded preference to false. (See this technote for information on changing preferences.)

For users who use multi-page template designs: Because of the transition to macOS, Helix can't reliably use the stored (Classic) Page Setup information when printing. Therefore, if it sees that a template will require more than one sheet of paper, it reduces the template to fit everything on a single sheet. However, it does this only up to a 51% reduction. If it would reduce the printout more than 51%, it leaves the scale at 100%. Depending on the specifics of your printer driver(s) you may find that you have to adjust the size of your template to avoid this.

Document Management (Partial)

This information has been incorporated into the main body of documentation.

You can now import and export documents in addition to being able to view them via the Picture tile. Advanced functions, such as Transfer Original, Print Document, Work On Document, etc. are not yet implemented. A dialog box appears to warn you if you try to use one of the disabled document management commands.

View Busy Indicator

processing In earlier Preview Releases a dialog box appeared whenever a lengthy operation was going on.

For the times when that 'lengthy operation' is a view that is filling in, the dialog has been replaced by the standard macOS busy indictor, placed in the upper left corner of the view. Presence of the busy indicator means the view is still gathering and displaying all the necessary data. When the view is ready, the busy indicator goes away.

Because long lists are somewhat slow in macOS, you sometimes have to wait a while for the busy indicator to disappear. And since lists are currently non-asynchronous, you can do nothing in Helix until the list is complete and the busy indicator has gone away. Wait it out: patience is a virtue that will be rewarded.

Note: Helix has to create the entire page for every page that is visible in the view window. If a view is sized so that even 1 pixel of a second page is showing, Helix will have to create all of the data required for the second page before the view is complete.

Cursor Contextual Change

The contextual cursor change is now present in macOS, with one change: because there is no cursor built into macOS that mimics the Classic Helix "left pointing finger" when hovering over a clickable list, we chose to go with the OS-supplied "closed fist" cursor. We like to think of it as the "knock twice to get in" cursor. ;^)

Field Data Display Size

Because macOS renders field rectangles with a 3D effect, it steals 2 pixels from the rectangle area where text would normally appear. The result is that text no longer fits into rectangles that are trimmed to the minimum vertical height allowed for a particular point size.

Because the ‘content’ area of rectangles is smaller in macOS, leaving the text at its intended size would result in character descenders are chopped off.

In order to resolve this problem, the previous Preview Releases reduced fonts to 90% of their designated size. Helix 6.1.3 changes this to 95%, making some fonts larger at the expense of an occasional clipped descender. 12 point text is now reduced to 11 point (12 * 0.95 = 11.4, drop the fraction to get 11 point) instead of 10 point as it was in previous releases.

To minimize the impact of this on small sizes, open the System Preferences -> Appearance panel and set Font Smoothing to a value small enough to allow macOS to smooth out the reduced size fonts.

The only long-term solution to this problem is to go into RADE and adjust the design of your templates to use larger font sizes.

In addition to the overall font reduction, fonts can be reduced further if the rectangle they are in is not tall enough to reasonably display the text. This technote illustrates the various ways fonts are adjusted.

Full Keyboard Access Improvements

This information has been incorporated into the main body of documentation.

macOS provides a mechanism known as Full Keyboard Access to allow keyboard control of all interface elements: checkboxes, radio buttons, popup lists and buttons. Collectively, these items are referred to as Controls. In the macOS built-in help we read:

“… With Full Keyboard Access, you use the Tab key, arrow keys, and space bar to move to and select or activate items on the screen … You can use your keyboard to select … items in windows and dialogs. Selected items are highlighted. You can specify whether you want to use the keyboard to select only text boxes and lists in a window, or all the controls in the window …”

The macOS Full Keyboard Access state is controlled by a setting in the Keyboard section of System Preferences. This technote explores the the options in detail.

In this release you will notice two important changes with respect to Full Keyboard Access:

  1. Crashes that are directly attributable to Full Keyboard Access have been eliminated. This alone will resolve the majority of the reported issues, as most users do not know the current state of Full Keyboard Access on their systems.

  2. When Full Keyboard Access is in any state that does not allow Helix to tab in a natural manner, a dialog is displayed during startup, alerting you to the problem. You can then open System Preferences and change the settings without having to quit and restart Helix.

Transparent Client Logout

When working from a saved structure, Helix Client now transparently logs out. The “Do you want to save changes…” dialog no longer appears.

Show Fonts Panel Command Key

The Show Fonts command — which replaces the list of fonts seen in Classic Helix — now has the command key equivalent Shift-Command-T automatically assigned to it.

Popup Menu Slot for Undefined Moved to Top

In popup menus, the item used to select an undefined value has been moved to the top of the menu. If there is a value in the field (defaulted or stored) that is not among the popup choices, it appears first, followed by the undefined (i.e. blank) selection.

View Contents Shifted 1 Pixel Down/Left

Previously the contents of a view were positioned so they would overlay the page border on the top/left, and leave a 1 pixels gap on the bottom/right. Now the content fits in the border correctly.

Default Button Size Reduction

The Classic Mac OS highlights the default button by drawing a thick border around the button, but macOS designates the default button by coloring it with a system-specified color. Consequently, when creating a collection with Classic in mind designers typically make default button rectangles larger than the others. This gives the Helix view a proper Mac application interface.

macOS uses a different interface, highlighting the default button by shading it with a system-specified color.

This creates a visual problem: when a collection designed with Classic Mac OS in mind is opened in macOS, the default buttons appear as larger than the other buttons, often looking awkward as it does not conform to Apple’s interface guidelines.

To compensate for this discrepancy, Helix now offsets the origin and reduces size of the default button rectangle by 4 pixels on each side, eliminating the over-sizing caused by the 4 pixel thick border drawn by the Classic OS.

Button Style Changed to Square Bevel

For various technical reasons, our change to using rounded bevel buttons resulted in rounded buttons with square black corners. Helix now uses standard (square) bevel buttons, which have square corners. They are not as ‘Mac-like’ as rounded buttons, but they draw correctly.

Default/Invalid Colors Softened

The default/invalid shading colors have been toned down somewhat. In addition, a bug in previous versions made it impossible to reliably adjust these colors by modifying the color preferences has been fixed. If the colors are not acceptable to you, you can now adjust them as desired.

Progress Thermometer Dialog Refinement

Helix now has a progress dialog that appears during any lengthy, but interruptible operation. (This was implemented to replace the Classic method of changing the cursor to a Command symbol, which was supposed to inform the user that pressing Command-period would cancel the operation.) However, to prevent this dialog from appearing continually, a delay value is built into it. This is controlled by the HxAbortDialogDelay preference, which is defaulted to 1000 milliseconds (1 second).

This causes a problem for operations that can happen very quickly, but require visual feedback so the user can know the operation took place. Now, when any of these operations — Posting, Importing, Exporting, Deleting, Copying and Pasting — are done on a list of records, the progress thermometer appears instantly*.

*The definition of instant is controlled by a new preference: HxFastAbortDialogDelay, which is defaulted to 1 millisecond (1/1000th of a second).

Note: Setting either of these preferences to a value less than 1 suppresses those dialogs entirely.

Sequence progress bar displays steps

When a sequence is running a progress bar now shows the name of the sequence. It also fills in as the steps are completes.

Client Info Now Shows Seat Number

As each Client logs in to a Server, it is given a Seat# — similar to the way patrons are seated at a restaurant. Because of various issues, such as messages for one Client being sent to another, we have have added the Seat# column in the Logged In and Logged Out panel of the Client Info window. This information is of little use unless you are working with Helix Technical Support to identify the source of a problem on your system.

Helix Client Uses Buffers

Helix Client can now take advantage of the Collection and Recovery buffers. The performance gain will not be significant, but it should improve performance a little.

If you are working from a saved structure file, that file is loaded into the Collection Buffer. The Recovery Buffer is used internally, just as it is with Engine and Server.

Set your Collection Buffer 1-2 MB larger than the size of your locally saved structure. A Recovery Buffer larger than 5MB is probably wasted memory, but we don’t really have any hard rules here.

Previously Documented Feature Enhancements
Open Recent Menu Item

There is now an Open Recent menu item available when no collection is open.

Helix applications (Server, Engine) list recently opened collections. Helix Client lists recently opened structure files, Bonjour-identified Servers, and other Servers recently visited.

Navigation Services

All Helix file service dialogs (Save, Export, Import, Document Management) take full advantage of macOS Navigation Services.

Auto Connect Mechanism

This information has been incorporated into the main body of documentation.

Local administrators can set a Helix application to automatically open a specific collection every time it is launched.

Helix applications check their local com.qsatoolworks.helixapp preference file for an HXAutoOpenURI string. If that string points to a specific file, the collection is opened.

Auto Connect is ignored if the user…

  • Opens an existing collection by double-clicking on it
  • Opens an existing collection via Drag and Drop
  • Holds the shift key down while launching the Helix application

The HXAutoOpenURI string must start with ‘file://’ or it is ignored. The string is interpreted as a literal path (not an AliasHandle) so the file must be found on that exact path.

Redesigned About Box

The redesigned About Box provides much more and better info than the old one. It includes the EULA, the current version (looked up live from our web site!) and more. (Yes, there is an Easter Egg in there too!)

Contextual Menu Support

Helix now has Contextual Menu support for basic commands (Cut, Copy, Paste, etc.) in fields.

Apple event Processes Tab

Helix Engine users can access the Apple event (AE) Processes panel through the Collection Info window.

As before, Helix Server continues to show the AE Processes panel in the Client Info window.

Page Boundary Color Customization

In Classic Helix the color of the visible page boundary and the ‘off-page’ area is hard-coded. Under macOS they are under user control. In macOS the default page boundary is black and the default off-page area is dark gray. These colors can be changed by editing the HxPageBoundaryColor & HxOffPageAreaColor preferences, respectively.

Invalid/Default Field Color Customization

In Classic Helix the shading for invalid and default data is hard-coded. Under macOS they are under user control. In macOS the default data shade is light green and the invalid data shade is light red. These colors can be changed by editing the HxDefaultDataColor & HxInvalidDataColor preferences, respectively.

PICT display of PDF Documents

Helix Engine for macOS can display the contents of a PDF document via the picture tile. It even shows the first page of multi-page PDFs. All still image formats supported by QuickTime should now be available.

List of Fonts Used in Collection

The Server Information window now contains a panel showing all fonts used in the collection.