Package dogtail :: Module wrapped
[hide private]
[frames] | no frames]

Source Code for Module dogtail.wrapped

 1  """ 
 2  Superclasses for application wrappers 
 3   
 4  Subclass these classes if you want to create application wrappers, e.g.: 
 5  http://svn.gnome.org/viewvc/dogtail-tests/trunk/appwrappers/dogtail/appwrappers/gedit.py?view=markup 
 6  """ 
 7  __author__ = "Zack Cerza <zcerza@redhat.com>" 
 8  import Accessibility 
 9   
10   
11 -def makeWrapperClass(wrappedClass, name): # pragma: no cover
12 class klass(object): 13 14 def __init__(self, obj): 15 self.obj = obj 16 17 def __getattr__(self, name): 18 if name == 'obj': 19 return self.__dict__['obj'] 20 return getattr(self.obj, name) 21 22 def __setattr__(self, name, value): 23 if name == 'obj': 24 self.__dict__['obj'] = value 25 else: 26 return setattr(self.obj, name, value) 27 28 klass.__name__ = name 29 return klass 30 31 Application = makeWrapperClass(Accessibility.Application, 32 "WrappedApplication") 33 Node = makeWrapperClass(Accessibility.Accessible, "WrappedNode") 34