CommandFusion software uses a method of data assignment and object identification called 'Joins'. Joins are basically a way of assigning a value to a particular GUI object (or multiple objects). You can think of a join as the ID of a GUI object such as a Button, Slider, etc.
Joins are divided into four data types:
A digital join has two possible values, 0 or 1 (off or on, low of high, active or inactive). This boolean data type allows button interaction, such as detecting button press/release and toggling the button, as well as showing/hiding subpages and performing page flips.
Within guiDesigner, digital join numbers will appear on a blue background above the object the join is assigned to when 'View > Display Object Join Numbers' is enabled.
The image below gives shows how a basic digital join system can work. Please note that this is only showing one of many possible ways that digital joins can work.
In the system shown above we are turning a projector on and getting feedback from the projector which updates the button state. It would work as follows:
An analog join has an integer value ranging from 0 (zero) to 65535. This whole integer data type allows for gauge and slider interactions, such as setting a gauge level or sending a level when adjusting a slider.
It can also be used to adjust the Interval of Page Timers.
Within guiDesigner, analog join numbers will appear on a red background above the object the join is assigned to when 'View > Display Object Join Numbers' is enabled.
The image below gives shows how a basic analog join system can work. Please note that this is only showing one of many possible ways that analog joins can work.
In the system shown above we are adjusting the volume level on an AV Receiver and getting feedback from the Receiver which updates the slider value to reflect the current level. This means that if the level is changed from another GUI or on the unit directly, the level is updated automatically. It would work as follows:
A serial join has a string value, with no length limitation set on the CommandFusion end (a Control System being used may have it's own string length restrictions however). This string data type allows showing dynamic text, dynamic images URLs, webview URLs, etc. A serial join value can also be set using Input Fields within iViewer.
Within guiDesigner, serial join numbers will appear on a black background above the object the join is assigned to when 'View > Display Object Join Numbers' is enabled.
The image below gives shows how a basic serial join system can work. Please note that this is only showing one of many possible ways that serial joins can work.
In the system shown above we are touching a button which sends a command to the AV Receiver to go to the next input. The AV Receiver would then send feedback to the GUI, automatically showing the name of the input on the button. It would work as follows:
A list join is used to identify a List object.
Within guiDesigner, list join numbers will appear on a purple (dark red in older versions of guiDesigner) background above the object the join is assigned to when 'View > Display Object Join Numbers' is enabled.
The image below gives shows how a basic list join system can work. Please note that this is only showing one of many possible ways that list joins can work.
In this example, the user is selecting an album. A list is then being populated with the album track information. It would work as follows:
The actual number used can be in the range from 0 to 999999999. The same join number and join type can be assigned to multiple objects in your GUI, and they will all react to a change of the join value.
A join number of zero (0) is a special case, which means “no join assigned”. By default all objects are assigned a zero join.