I was confronting this issue - I'm trying to use QLab to run the lights for a moderately complex show (lights and sound, often linked together), and every now and then the operator hits Go too soon, so I wanted a Back button.
I've create a Script cue, given it a hotkey trigger of "B", and given it this script:
tell application id "com.figure53.QLab.4" to tell front workspace
set theList to cues of current cue list as list
set currentcue to playback position of current cue list
set lastcue to 0
set secondlast to 0
repeat with a from 1 to count of theList
if item a of theList is currentcue then exit repeat
-- set x to q type of item a of theList
-- display dialog x
if q type of item a of theList is "Light" then
set secondlast to lastcue
set lastcue to item a of theList
end if
end repeat
if not secondlast is 0 then
set savecontinue to continue mode of secondlast
if not savecontinue is do_not_continue then set continue mode of secondlast to do_not_continue
set savecollate to always collate of secondlast
if not savecollate then set always collate of secondlast to true
try
start secondlast
end try
if not savecontinue is do_not_continue then set continue mode of secondlast to savecontinue
if not savecollate then set always collate of secondlast to savecollate
set playback position of current cue list to lastcue
end if
end tell
At least in my testing, it goes back to the light cue before the most recent one, runs it (turning on collation and turning off continue), and puts the playhead back at the most recently run light cue.
I haven't tested this in real use yet, but it seems likely to work.
Nathan Schroeder