LDTP  2.3.1
registerevent

Syntax

registerevent(<'event_name'>, <fn_name>[, *args])

Description

Register user defined window event

Return values:
1on success, 0 on failure

Refer: http://cgit.freedesktop.org/ldtp/ldtp/tree/python/ldtp.py

Example

 from ldtp import *
 import threading
 
 launchapp('gedit')
 waittillguiexist('*-gedit')
 
 callbackRunning = threading.Event()
 callbackRunning.set()
 
 def cb():
      if waittillguiexist('dlgReplace', guiTimeOut = 5):
           wait(0.5)
           click('dlgReplace', 'btnClose')
           waittillguinotexist('dlgReplace')
      callbackRunning.set()
      print 'cb callbackend'
 
 def cbwithvarargs(*args):
      for arg in args:
           print arg
      if waittillguiexist('dlgOpenFiles', guiTimeOut = 5):
           wait(0.5)
           click('dlgOpenFiles', 'btnCancel')
           waittillguinotexist('dlgOpenFiles')
      callbackRunning.set()
      print 'cbwithvarargs callbackend'
 
 registerevent('window:create', cb)
 click('*gedit', 'btnReplace')
 if callbackRunning.isSet():
      callbackRunning.clear()
      print 'Waiting for callback to complete'
      callbackRunning.wait()
      print 'callbackset'
 deregisterevent('window:create')
 print 'wait'
 callbackRunning.set()
 registerevent('window:create', cbwithvarargs, 'test', 'var', 'args')
 
 click('*gedit', 'btnOpen')
 
 if callbackRunning.isSet():
      callbackRunning.clear()
      print 'Waiting for callback to complete'
      callbackRunning.wait()
      print 'callbackset'
 
 print 'test end'
 deregisterevent('window:create')
 selectmenuitem('*-gedit', 'mnuFile;mnuQuit')
 waittillguinotexist('*-gedit')
Author:
Nagappan Alagappan <nagappan@gmail.com>