44 appendix. proglet scripting, 1 introduction, 1 buddying/subgroup properties – LSC Lighting CLARITY LX Series v.1 User Manual

Page 260: 2 other properties, 3 channel ids

Advertising
background image

Appendix

Clarity

Operator Manual

Page 250

44 Appendix. Proglet Scripting

44.1 INTRODUCTION
Clarity’s scripting feature (Proglets) is a very powerful and very advanced feature of Clarity and

is thus intended as a power-user feature. The scripts allow the creation of very easy to use
Proglet functions with dedicated simple Graphical User Interfaces, but writing proglets is not an
easy task.

Clarity’s scripting feature uses Qt Script which is based on the ECMAScript standard defined in

http://www.ecma-international.org/publications/standards/Ecma-262.htm

. ECMAScript is the

basis of the well-known JavaScript language. Many tutorials exist online such as

http://www.w3schools.com/js/DEFAULT.asp

. The parts of ECMAScript that are supported by

Clarity’s scripting feature are detailed at the end of this appendix.

When you have installed and run Clarity 2.2, all the built-in scripts will be unpacked into the
Clarity/programmerscripts directory and they serve as good examples upon which to base your
scripts.

44.2 API (APPLICATION PROGRAMMING INTERFACE) PROPERTIES
These properties operate like values in a script, they can be read from and in some cases written

to. For example:

blocking = 2
for (int i=0; i<numSelected; ++i)

44.2.1 Buddying/Subgroup properties

One of the design goals was to allow Proglets to operate independently of the programmer and
not change the programmer’s state in any way. To this end there are separate buddying and

subgroup functions that affect how the Proglet applies values as well as functions that directly
control the programmer’s sort window buddying and grouping. If the local properties are explicitly

assigned then they are used, otherwise the sort control’s values are used instead. These are the
relevant properties (first one refers to the sort controls, second to the API’s local value):

buddying / blocking (read/write)

subgroups / repeat (read/write)

groupBy / repeatSize (read/write)

44.2.2 Other properties

numSelected
Returns the number of currently selected fixtures, respective prev/next, buddying and
subgroups.

atStart
Returns TRUE if stepping and on the first fixture.

atEnd
Returns TRUE if stepping and on the last fixture.

44.2.3 Channel IDs

Some functions require one or more Channel Ids. These are typically the name you see above a
fixture’s channel in the main programmer window. For example:

Advertising
This manual is related to the following products: