Product
Support
Everything Else
Helix 6.1 — Editing Preferences
Introduction

Some behaviors of OS X Helix applications can be changed by setting preference values. These are semi-documented settings that are mostly designed to aid in the transition from Classic Helix to OS X.

Currently most of these preferences can only be set by editing a preference file directly. A future release will bring all of the preferences into the standard interface.

OS X Helix application preferences are stored in an XML formatted plist named com.qsatoolworks.helixapplication (where application is either server, engine, client, or rade) found in the user's ~/Library/Preferences/ folder.

Editing Preferences the Hard Way

The preference files can be edited with any XML editor. If you have installed Apple's Developer tools, you have their Property List Editor application and double clicking on the Helix Server preference file should launch it automatically. If you have installed the developer tools, we assume you don't need instructions on using Property List Editor.

All OS X installations include the Terminal application (in the Utilities folder), so the following instructions explain how to change preferences using Terminal.

To change a setting, make sure the OS X Helix application is not running, then open the Terminal application (/Applications/Utilities/) and enter a command in this format:
defaults write com.qsatoolworks.helixserver keyword -datatype value
The underlined words must be replaced with appropriate values taken from the chart found in the built-in help for your version of Helix Server. These three values represent the preference to be changed for the word keyword, the type of data required by the preference for the word datatype and the value to set the preference to for the word value.

Note: Keywords are case sensitive! If you enter a value with the wrong case, it will not cause a problem, but the entry has no effect on Helix's behavior.

Editing Preferences the Easy Way

QSA ToolWorks has created a simple AppleScript applet that you can use to edit most of these preferences. You can download it here. Updated Jan 13, 2012: added HxListPageCacheSize & HxTcpUsePort preferences.

To use this tool, simply double click the applet and follow the built-in prompts.

Note: This applet does not check your input to make sure you are entering logical values. If you enter text in a preference that expects an boolean, the applet will not warn you, and Helix may behave unpredictably. (When things go wrong, the Default button restored Helix's default behavior.) Likewise, if you specify a setting outside a preferences's accepted a range of values, the applet will not complain, and Helix's behavior is unpredictable.

In short: Use this tool with caution and make sure you know what you are doing!

Editable Preferences

Until we are able to add a reasonable user interface, please refer to this page for information on what each does.

Preference Datatype Default Legal Values Description
HxTimeStampAdvance -boolean false true/false Tab to the next field after a Time Stamp command.
HxAbortDialogDelay -integer 1000 (msec) 1-? How long before the progress dialog appears for general activity.
Note: Setting this preference to any number less than 1 suppresses these dialogs altogether.
HxFastAbortDialogDelay -integer 1 (msec) 1-? How long before the progress dialog appears for actions that require feedback regardless of how quickly it happens.
Actions included: Post, Import, Export, Delete, Copy Records, Paste Records.
Note: Setting this preference to any number less than 1 suppresses these dialogs altogether.
HxAbortTestInterval -integer 20 (msec) 1-? How often to check if the user canceled.
HxClassicPictureCompatibility -boolean true true/false Forces OS X to operate incorrectly, but match the way Classic works when you have pictures that are recorded at other than 72 ppi. Classic assumes that all pictures are saved at 72 ppi and displays them as such. OS X uses the resolution fields recorded with the picture to determine the proper ppi. With this option off, some pictures appear reduced in OS X Helix, as they are displayed at their true resolution.
HxInvalidBackgroundColor -string 004444DD color name*, 8 digit hex value strings The color to shade an invalid field.
HxDefaultBackgroundColor -string 00338855 color name*, 8 digit hex value string The color to shade a defaulted field.
HxOffPageAreaColor -string 00C8C8C8 color name*, 8 digit hex value strings The color of the area in a window outside the printable page.
HxPageBoundaryColor -array of strings 0000, 0000, 0000, FFFF 4-4 digit hex value strings The color of the line around the printable page(s).
HxPageNumberCode -string P# Any characters The text string for which the actual page number is substituted.
HxDimHiliteColor -array of strings 7777, 7777, 7777, CCCC 4-4 digit hex value strings. Red, Green, Blue, Alpha The highlight shade on a list that indicates an entry view is about to be opened. May also use color name* or 8 character hex string.
HxStrongHiliteColor -array of strings 0000, 0000, AAAA, 8888 4-4 digit hex value strings The highlight shade on a list that indicates a query has been formed. May also use color name* or 8 character hex string.
HxAutoOpenURI None -string URI The path to a file (collection or structure) to automatically open when the Helix application is launched.

Note: Prefix path with file:///

HxAutoConnectToURI None -string hostname or IP Address The address of a Helix Server to which Helix Client will attempt a transparent connection when the application is launched.
HxAutoConnectUsername None -string name of a user icon in the collection Default value for the User Authentication dialog, or transparent authentication when a collection is opened (or connected to for Helix Client).
HxAutoConnectPassword None -string A password to use in conjunction with the HxAutoConnectUsername to for transparent authentication.
HxShadowFilePaths -array of strings none Filepath(s) Where to put the recovery file.
HxRAMJetSize -integer 0 MB 0-1023 Size of Collection buffer. Use the Preferences Interface to set this value.
HxShadowSize -integer 0 MB 0-1023 Size of Recovery File buffer. Use the Preferences Interface to set this value.
HxTotalBufferSize -integer 0 MB 0-1023 Maximum total buffers allowed.
HxClientInfoRefresh -integer 60 (seconds) 0-2147483647 How often to refresh the Client Info window. Setting it to 0 disables refreshing. (The maximum refreshes once every 68 years!)
HxServerInfoRefresh -integer 60 (seconds) 0-2147483647 How often to refresh the Server Info window. Setting it to 0 disables refreshing.
HxCustomHelpPath -string CustomHelp/index.html Location for the Custom Help file, ending with the name (and extension) of help file. Help files must be in a format Help Viewer supports.
HxAutologPath -string Same as Collection Not Yet Implemented. Location for the Session Data Log.
HxAutologPrefix -string Log_ short text string Prefix of Logfile name. If the total length of this prefix plus the collection name exceeds 26 characters, only the first 26 characters are used.
HxAutologSuffix .hlog -string file extension Extension for Logfile name. If the total length of the logfile prefix plus the collection name plus this suffix exceeds 31 characters, only the first 26 characters of the prefix+collection name are used. Do not change this unless you have a compelling reason to do so.
HxAutologging -string Yes Turn Session Logging On/Off
HxLogRecoveryAlert -string Yes Display Dialogs on Recovery
HxDATSize -integer 100 10, 30, 60, 100 Size for the DAT (Dynamic Address Table) manager. Controls some "deep code" that handles memory distribution within Helix. The value stored here is not directly applied: it is cross-referenced to a four level table to choose the correct DAT allocation, so other values are pointless.
HxNextUpdateCheckAt -float n/a 0-? The time (in seconds since Jan 1, 2001) of the next version update check. A CFAbsoluteTime. (Currently forces the About Helix Engine -> Current Version window open.)
HxNextUpdateCheckInterval -float 7200 (seconds) 0-? The number of seconds between update checks. A CFTimeInterval. (Currently opens the About Helix Engine -> Current Version window.)
New in 6.1.3
HxPrintBorderColor -string FFFFFFFF color name*, 8 digit hex value strings The fill color for the space between the page rectangle and the paper rectangle. Default is opaque white (for Classic compatibility). The string is 4 - 2 digit hex values in the range of 00–FF (0-255) concatenated together in this order: alpha, blue, green, red.
HxAdjustPrintScaleIfNeeded -boolean true true/false Turn off the automatic page scaling feature. A template that is sized so that the view requires 2 pages (horizontally or vertically) to print is scaled to fit onto a single page if the scaling is greater than 51%. Setting this to false forces Helix to print based on the Scale setting in Page Setup (100% by default) regardless of the number of pages required.
New in 6.1.4
HxDocumentPath -string path to collection Filepath The path to a folder in which to place exported documents when On Original Path is specified, but the original path can not be resolved. If this path starts with a fore slash (/) it is treated as an absolute path. If it starts with tilde (~) it is relative to the user’s home directory. This path is also used as the working directory for the Open Original command, as internally stored documents need to be downloaded to a local volume before opening.
New in 6.1.5
HxDisableConnect false -boolean true/false

This was HxDisableVisit in Helix 6.1.5; it has been renamed in 6.1.6.

Re-implements the Classic feature that allows admins to disable the Connect command in the Client application, forcing users to open saved structure files.

Because this is a preference edit, it only disables the machine containing the preferences, but it is retained when a new version is released.

The Classic method (editing HVIS/0) is also supported, enabling distribution of a Connect-disabled Client.

New in 6.1.6
HxSequenceShowNames true -boolean true/false Show name of sequence in sequence progress dialog.
HxSequenceShowSteps false -boolean true/false Show currently executing sequence step in sequence progress dialog.
HxSequenceStepDialog 2 -integer -1 – n Sequence step count threshold before showing the sequence progress dialog. Changing this preference as follows causes the following behavior:
  • n: Show only if the sequence has n or more steps. Most useful for prevent the dialog from showing when a sequence is comprised of a single step. (This is the default state.)
  • 0: Shows as indeterminate instead of steps. The user has no indication as to how long the overall sequence will take.
  • -1: Never show. Suppresses the dialog altogether. However, the generic "processing" dialog may appear after a short interval. (See: HxFastAbortDialogDelay)

    While the ability to suppress the dialog is available, it is discouraged: without a dialog to block user interaction, a sequence can be disrupted by user actions such as closing a view, clicking another view to the foreground, or selecting a menu item. Also, the sequence progress dialog provides a "Cancel" button, so disabling the dialog removes the ability to terminate a sequence before its natural end. This preference setting should not be used unless you trust your users not to disrupt a running sequence.

New in 6.1.10
HxUseFontReduction true -boolean true/false

The ability to completely disable the font reduction algorithm is now available. Data rectangles crop the lower portion of the text if the rectangle is not tall enough for OS X to display the entire character height.

Preference Datatype Default Legal Values Description
New in 6.2
HxCheckStructureOnSave -boolean true true/false Run Integrated Structure Checker before saving? Turn this off for collections that take a very long time to check on PowerPC Macs.
HxListPageCacheSize -integer 1 0-1024 Number of pages to cache on a list view. Warning: as the cache size goes up, performance goes down.
HxGridFontFace -string Lucida Grande fontname Default Font Face to use in Relation/Collection windows
HxGridFontSize -integer 10 1-255 Default Font Size to use in Relation/Collection windows
HxTcpUsePort -integer 10860 1024-65535 Specify Client/Server port assignment. Takes precedence over the old PORT resource, which can still be used to handle multiple Servers on one Mac.
HxAllowSubformCropping -boolean false true/false Experimental: This allows a subform’s appearance on a specific template instance to be sized different than the actual subform template. The result is a cropped subform when the instance is smaller than the actual template.

* In place of a hex string, the following standard color names may be used. When entering a multi-word color name, enclose it in single quotes. (e.g. 'cadet blue'):

aquamarine, black, blue, blue violet, brown, cadet blue, coral, cornflower blue, cyan, dark gray, dark green, dark olive green, dark orchid, dark slate blue, dark slate gray dark turquoise, dim gray, firebrick, forest green, gold, goldenrod, gray, green, green yellow, indian red, khaki, light blue, light gray, light steel blue, lime green, magenta, maroon, medium aquamarine, medium blue, medium forest green, medium goldenrod, medium orchid, medium sea green, medium slate blue, medium spring green, medium turquoise, medium violet red, midnight blue, navy, orange, orange red, orchid, pale green, pink, plum, purple, red, salmon, sea green, sienna, sky blue, slate blue, spring green, steel blue, tan, thistle, turquoise, violet, violet red, wheat, white, yellow, and yellow green.