Help, please: making "programming wing" for QLab 4 lighting

350 views
Skip to first unread message

Joshua Langman

unread,
Dec 24, 2016, 5:23:39 PM12/24/16
to QLab
Hi all,

I'm preparing to use QLab 4 for lighting on a show that I'm designing and programming. In order to speed up programming, I decided to make myself a custom keypad that mimics the layout of the hardware on a typical lighting console.

I have purchased this Genovation programmable keypad:


I've attached to this post a first draft of the key layout. The keys will be programmed with commands for QLab's light dashboard that correspond to the more traditional command names printed on the buttons: for instance, the keystroke for "@" is "="; the keystrokes for "full" are "= 1 0 0 enter"; etc.

Here's my problem. The keypad contains some keys whose functions relate to the cue list window rather than the dashboard. For instance, I made a "Time" button to set the action time of a cue with the shortcut "D." But while the focus is on the dashboard, this simply types a D into the command line. Thus my question: how can I have keys that apply to the main cue list window in addition to keys that apply to the command line in the dashboard?

I am imagining some solution that operates at the OS level and uses a shortcut to trigger a script that tells QLab to put the focus on the cue list window, send it a command, and then pull focus back to the dashboard. Am I on the right track? Any other ideas?

Thank you, and happy holidays,

Josh
qlab_lx.png

micpool

unread,
Dec 24, 2016, 7:16:06 PM12/24/16
to QLab
There is probably a much better way but the only script I could come up with to switch between the dashboard and the main cue list is this

switch to dashboard:

tell application id "com.figure53.QLab.4"

set workspacename to the (q number of the front document)

set main to the uniqueID of window (workspacename & " — Main Cue List")

set dashboard to the uniqueID of window (workspacename & " — Light Dashboard")

set frontwindow to the uniqueID of front window

if main is frontwindow then

set index of window id dashboard to 1

set index of window id main to 2

set visible of window id dashboard to false

set visible of window id dashboard to true

end if


back to main:


tell application id "com.figure53.QLab.4"

set workspacename to the (q number of the front document)

set main to the uniqueID of window (workspacename & " — Main Cue List")

set dashboard to the uniqueID of window (workspacename & " — Light Dashboard")

set frontwindow to the uniqueID of front window

if dashboard is frontwindow then

set index of window id main to 1

set index of window id dashboard to 2

set visible of window id main to false

set visible of window id main to true

end if

end tell

end tell


It's a bit of a car crash but may be a starting point.


Mic

Joshua Langman

unread,
Dec 26, 2016, 1:48:21 PM12/26/16
to QLab
Thank you, Mic.

I've put these two scripts into Automator workflows saved as "Services," assigned them shortcuts, and programmed the shortcuts into the keyboard.

It is a little bit clunky, but better than anything I had, and it's certainly doing the job. I appreciate it!

Best,

Josh

Joshua Langman

unread,
Dec 28, 2016, 11:37:04 AM12/28/16
to QLab
Hi all,

I am uploading:

(1) a PDF of the keycap labels for my customized "programming wing" using the Genovation keyboard

(2) the keystroke file that can be edited using Genovation's software, and which can be downloaded to the keyboard

I haven't get gotten a chance to try this with the actual keyboard, which is on its way, but I'm putting it here in case others find it useful. Once I've used it on a show or further experimented, I may post revisions.

The keystrokes for "View Cue List" and "View Dashboard" are F1 and F2, which correspond to "Services" containing the scripts Mic helpfully provided above.

Josh
lx keyboard.pdf
QLab lx keyboard.ckd

Joshua Langman

unread,
Jan 7, 2017, 12:51:24 PM1/7/17
to QLab
Hi all,

Just to follow up on this project, here is a photo of the finished keyboard. It works quite well and the hardware feels pleasantly tactile.

Josh
wing.jpg
Reply all
Reply to author
Forward
0 new messages