Edit page History

Delayed Snapshot

    Purpose

    As simple as that: a dialog opens to ask for a time delay (in seconds).

    After such delay, a screenshot of the desktop is taken.

    The script is maintained by Albert Cardona.

    Code

    # Take a snapshot after a delay specified in a dialog
    # 
    # The plugin has to fork, which is done by:
    # 1 - declaring a function to do the work, 'snasphot'
    # 2 - invoking the function via thread.start_new_thread,
    #     which runs it in a separate thread.
    
    
    import thread
    import time
    
    def snapshot(delay):
       time.sleep(delay)
       IJ.doCommand('Capture Screen ')
    
    gd = GenericDialog('Delay')
    gd.addSlider('Delay (secs.): ', 0, 20, 5)
    gd.showDialog()
    
    if not gd.wasCanceled():
        # the 'extra' comma signals tuple, a kind of list in python.
        thread.start_new_thread(snapshot, (int(gd.getNextNumber()),))
    

    See also

    Jython Scripting