====== GUI File ====== A GUI File is a file created by [[software:gui-designer|guiDesigner]] that contains XML markup describing how Viewers should render their interface and interact with External Systems.\\ They use a .gui file extention (hence their name) and are an open format (unencrypted) which allows them to be edited manually in text editors (for batch changes when editing from within guiDesigner would take too long). ===== GUI File Anatomy ===== A GUI file is made up of the following main elements: * Properties - Various properties describing the GUI file itself. * Systems- A list of External System, along with [[software:gui-designer:system-manager:commands|Command]] and Feedback definitions. * Macros - Groups of [[software:gui-designer:system-manager:commands|Commands]] with adjustable delays. * Themes - Definitions of how GUI objects such as [[software:gui-designer:buttons|Buttons]] and [[software:gui-designer:sliders|Sliders]] should be rendered. * Pages - Collections of GUI objects to be rendered as a group. === Properties === The following properties can be defined within a GUI File: * Project name () - The name of the project the GUI File is to be used for. * Project designer () - The name of the person or company who created the GUI File. * Page size () - Two definitions for the page size need to be set; One for the portrait and one for landscape mode. Each mode has a width and height attribute. * Asset folder - The base folder for where all images, sounds and other media assets are referenced from. All references to assets within the GUI File are relative to the asset folder setting. * Debug options - Ability to show or hide error messages to help debug problems. * Devices - A list of devices that have been registered to run the GUI File. If a GUI File is used on an unregistered device, certain restrictions will be enforced depending on the Viewer being used. === Systems === Each system is defined within its own element, nested within the parent element.\\ For more details, see External Systems.