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 tree 
 9  import Accessibility 
10   
11 -def makeWrapperClass(wrappedClass, name):
12 class klass(object): 13 def __init__(self, obj): 14 self.obj = obj
15 16 def __getattr__(self, name): 17 if name == 'obj': return self.__dict__['obj'] 18 return getattr(self.obj, name) 19 20 def __setattr__(self, name, value): 21 if name == 'obj': 22 self.__dict__['obj'] = value 23 else: 24 return setattr(self.obj, name, value) 25 26 klass.__name__ = name 27 return klass 28 29 Application = makeWrapperClass(Accessibility.Application, \ 30 "WrappedApplication") 31 Node = makeWrapperClass(Accessibility.Accessible, "WrappedNode") 32