Package appModules :: Module mirc
[hide private]
[frames] | no frames]

Source Code for Module appModules.mirc

 1  #appModules/mirc.py 
 2  #A part of NonVisual Desktop Access (NVDA) 
 3  #This file is covered by the GNU General Public License. 
 4  #See the file COPYING for more details. 
 5  #Copyright (C) 2010 James Teh <jamie@jantrid.net> 
 6   
 7  """App module for mIRC 
 8  """ 
 9   
10  import controlTypes 
11  from NVDAObjects.window import Window, DisplayModelLiveText 
12  from NVDAObjects.IAccessible import StaticText 
13  import appModuleHandler 
14   
15 -class Input(Window):
16
17 - def event_gainFocus(self):
18 super(Input, self).event_gainFocus() 19 try: 20 output = self.parent.parent.lastChild.firstChild 21 except AttributeError: 22 output = None 23 if isinstance(output, DisplayModelLiveText): 24 output.startMonitoring() 25 self._output = output 26 else: 27 self._output = None
28
29 - def event_loseFocus(self):
30 if self._output: 31 self._output.stopMonitoring()
32
33 -class AppModule(appModuleHandler.AppModule):
34
35 - def chooseNVDAObjectOverlayClasses(self, obj, clsList):
36 if obj.role == controlTypes.ROLE_WINDOW: 37 return 38 if obj.windowClassName == "Static" and obj.windowControlID == 32918: 39 clsList.remove(StaticText) 40 clsList.insert(0, DisplayModelLiveText) 41 elif obj.windowClassName == "RichEdit20W" and obj.windowControlID == 32921: 42 clsList.insert(0, Input)
43