User Interface Concepts
TouchDRO is an Android application and as such, uses standard Android user interface concepts:
Activity
Windows that take up the whole available screen are called "activities". Only one activity can be shown at the time. For instance, when TouchDRO first starts, it displays the "DRO Display" activity. From there, you can navigate to the "Graphical View" activity or the "Application Settings" activity.
Dialog
Smaller windows that appear on the top of activities are called dialogs; only one dialog can be shown at the time. Dialogs can have different appearances and serve different functions.
- Confirmation dialogs are used by TouchDRO to confirm your actions and usually consist of a message and two action buttons, "OK" and "Cancel". Pressing the "OK" button will apply the changes; pressing "Cancel" will close the dialog without performing the action.
- Tool dialogs are used for more complex operations that require multiple inputs from you. Some examples of tool dialogs include "Bolt Hole Circle" or "Tool Radius Compensation". Changes made within the tool dialog are applied when the "OK" action button is pressed. Pressing the "Cancel" button will close the dialog and clear any temporary changes.
- Item list dialogs are used to interact and manage a list of items. These dialogs allow you to add or remove new items, edit, and select existing items. Clicking on an item will select it and dismiss the dialog; pressing any of the icon buttons on the row will bring up a relevant dialog needed to complete the action. "Workspace List" is an example of such dialog.
Panel
Panels provide a logical grouping for other user interface elements and, generally, take up either the right or the left side of the screen. They can be hidden by default, be collapsible, or permanently visible. For instance, the Saved Sub-Datum panel takes up about 1/4 of the screen on the right and can be collapsed as needed. "Application Menu" [drawer] panel is hidden by default and can be displayed by pressing the main "Application Menu" icon or simply sliding a finger from the left edge of the screen.
Button
Buttons are the most common UI element and are extensively used by TouchDRO. There are three main types of buttons:
Action Button
Action buttons perform immediate action. For instance, the "Zero Set" button sets the axis incremental position to 0; axis label buttons to the left of each axis bring up axis details dialog, etc. The function of an action button does not change depending on the application state but it can be disabled if some preconditions are not met.
Many action buttons have a secondary function that can be brought up by long-pressing the button. For instance, long-pressing the global "Zero Set" button sets the absolute position for all enabled axes.
Toggle Button
Toggle buttons are used to toggle various application functions. Toggle functions have at least two states, which are indicated by a change in the button display. For instance:
The global "Inch/mm" button can be in one of the three states: "inch", "mm" and "both". In the two former cases, the active units will appear in green bold text; in the latter case, neither units will be highlighted, indicating that the axes are set to a mix of units. Pressing the button will cycle through the state without a confirmation dialog.
The "Tool Radius Compensation" button is a toggle button that has different "on" and "off" appearance and behavior. If the offset is inactive when the button is pressed, the "Tool Radius Compensation" dialog is brought up; if there is an active offset of X or Y axis, the button will clear it (after displaying a confirmation dialog).
Icon Button
Icon buttons are smaller buttons that can act either as action buttons or toggle buttons and are used for less common operations to save space. Just like their larger counterparts, they can be enabled or disabled and can have different toggle appearance and behavior. For example, when the icon button is disabled, it will appear grayed out. Examples of icon buttons include the main menu button, Sub-datum pane expand/collapse toggle button, and the Sub-Datum action buttons.
List
Lists are used to display and manage larger numbers of items. The most prominent example in TouchDRO is the stored sub-datum list that appears on the right slide-out panel. Other examples include Workspace List, Saved Tools list, etc.
Clicking an item in the list will activate (or deactivate) the item. For example, clicking a store sub-datum will activate it by setting the appropriate axis offsets and set the display to bold light-green font; clicking the same item again will deactivate it, clear the offset, and set the display to the normal gray font.
Some lists display icons on each item. These are action buttons that allow you to perform additional actions, such as deleting a workspace, editing a stored tool, etc.
Some lists allow selecting multiple items in order to perform actions on them. For instance, to activate multi-selection in the Sub-datum list, long-press one of the items to be selected. The list will switch to selection mode; clicking other items will add them to the selection. Depending on the number of the selected items, a different action icon button on the top of the list will be enabled, allowing you to perform the action on all selected sub-datums.
Data Entry Widgets
TouchDRO uses several standard Android widgets for information entry. This includes:
Text Box
The text box is the most basic data entry widget and, depending on the particular Android version, looks like a rectangular box or a line with a cursor. Depending on the expected type of information, the on-screen keyboard changes to include only the allowed characters. Most numeric entry textboxes support basic arithmetic equations, including multiplication, addition, division, and subtraction.
Selection List (A.K.A. Dropdown List)
Selection lists are used to select from a set of predefined items. They look similar to text boxes but have a small down-pointing triangle on the right side.
CheckBox
Checkboxes look like small squares with a checkmark inside and are used to express boolean values (true/false, yes/no). For instance, in the screenshot above, the checkbox next to the "Z" label enabled the input for the axis.
Radio Button
Radio buttons are small hollow circles that can have smaller filled circles inside. They usually come in groups of two or more and are used for selecting mutually exclusive options. For example, inches or millimeters in the screenshot above are selected using a set of two mutually exclusive radio buttons.