Exemple #1
0
	def kwargsFromSuper(cls,kwargs,relation=None):
		jabContext=None
		windowHandle=kwargs['windowHandle']
		if relation=="focus":
			vmID=ctypes.c_int()
			accContext=JABHandler.JOBJECT64()
			JABHandler.bridgeDll.getAccessibleContextWithFocus(windowHandle,ctypes.byref(vmID),ctypes.byref(accContext))
			jabContext=JABHandler.JABContext(hwnd=windowHandle,vmID=vmID.value,accContext=accContext.value)
		elif isinstance(relation,tuple):
			jabContext=JABHandler.JABContext(hwnd=windowHandle)
			if jabContext:
				jabContext=jabContext.getAccessibleContextAt(*relation)
		else:
			jabContext=JABHandler.JABContext(hwnd=windowHandle)
		if not jabContext:
			return False
		kwargs['jabContext']=jabContext
		return True
Exemple #2
0
	def _getJABRelationTargets(self, key):
		rs = self.jabContext.getAccessibleRelationSet()
		targets=[]
		for relation in rs.relations[:rs.relationCount]:
			for target in relation.targets[:relation.targetCount]:
				if relation.key == key:
					targets.append(JABHandler.JABContext(self.jabContext.hwnd, self.jabContext.vmID, target))
				else:
					JABHandler.bridgeDll.releaseJavaObject(self.jabContext.vmID,target)
		return targets
Exemple #3
0
 def _getJABRelationFirstTarget(self, key):
     rs = self.jabContext.getAccessibleRelationSet()
     targetObj = None
     for relation in rs.relations[:rs.relationCount]:
         for target in relation.targets[:relation.targetCount]:
             if not targetObj and relation.key == key:
                 targetObj = JAB(jabContext=JABHandler.JABContext(
                     self.jabContext.hwnd, self.jabContext.vmID, target))
             else:
                 JABHandler.bridgeDll.releaseJavaObject(
                     self.jabContext.vmID, target)
     return targetObj