CommandFusion Wiki

Documentation Resources

User Tools

Site Tools



This is an old revision of the document!

Interlocking Module

This is a JavaScript module that allows you to implement interlocking easily in guiDesigner & iViewer.

What is interlocking when we refer to a graphical user interface (GUI)?

Basically, it is when only one join can be active at a time in a group of joins.

E.g. you have 4 buttons in a GUI, each that select a source. Only one source can be selected at a time, so you would use interlocking to make sure that only one join can be active at a time. When a different join is activated, it first deactivates all other joins in that group.

Demo GUI

These files are designed to help you implement interlocking in your projects.

It contains a demo gui and all the required JavaScript files.

Below is a screen shot of the .gui file


The below instructions are included in the Interlock.js file.

// A simple module to manage interlock groups in iViewer
// The module provides a suite of simple calls to manage interlocks:
// * to create an interlock group:
Interlock.create("group name", join1, join2 ... joinN);

// * to set the currently selected item in an interlock group:"group name", join);

// * to be notified when the current selection of an interlock group changes:"group name", function(group name, newSelectedJoin, previousSelectedJoin) {
  // ... do something here ...

// * to stop being notified for an interlock group
Interlock.unwatch("group name");

// * to get the current selected join for an interlock group
var join = Interlock.get("group name");

// * to remove an interlock group (remove interlock functionality):
Interlock.remove("group name");

// Author: Florent Pillet, CommandFusion


software/modules-and-examples/interlocking.1368060982.txt.gz · Last modified: 2013/05/09 00:56 by aaron