本文整理汇总了Python中watchdog.cancellableSendMessage函数的典型用法代码示例。如果您正苦于以下问题:Python cancellableSendMessage函数的具体用法?Python cancellableSendMessage怎么用?Python cancellableSendMessage使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了cancellableSendMessage函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _get_role
def _get_role(self):
hItem=watchdog.cancellableSendMessage(self.windowHandle,CLM_GETSELECTION,0,0)
iType=watchdog.cancellableSendMessage(self.windowHandle,CLM_GETITEMTYPE,hItem,0)
if iType==CLCIT_DIVIDER or iType==CLCIT_INVALID: #some clists treat invalid as divider
return controlTypes.ROLE_SEPARATOR
else:
return controlTypes.ROLE_TREEVIEWITEM
示例2: _getWordOffsets
def _getWordOffsets(self,offset):
start=watchdog.cancellableSendMessage(self.obj.windowHandle,SCI_WORDSTARTPOSITION,offset,0)
end=watchdog.cancellableSendMessage(self.obj.windowHandle,SCI_WORDENDPOSITION,start,0)
if end<=offset:
start=end
end=watchdog.cancellableSendMessage(self.obj.windowHandle,SCI_WORDENDPOSITION,offset,0)
return [start,end]
示例3: _getOffsetFromPoint
def _getOffsetFromPoint(self,x,y):
x, y = winUser.ScreenToClient(self.obj.windowHandle, x, y)
if self.obj.editAPIVersion>=1:
processHandle=self.obj.processHandle
internalP=winKernel.virtualAllocEx(processHandle,None,ctypes.sizeof(PointLStruct),winKernel.MEM_COMMIT,winKernel.PAGE_READWRITE)
try:
p=PointLStruct(x,y)
winKernel.writeProcessMemory(processHandle,internalP,ctypes.byref(p),ctypes.sizeof(p),None)
offset=watchdog.cancellableSendMessage(self.obj.windowHandle,winUser.EM_CHARFROMPOS,0,internalP)
finally:
winKernel.virtualFreeEx(processHandle,internalP,0,winKernel.MEM_RELEASE)
else:
p=x+(y<<16)
res=watchdog.cancellableSendMessage(self.obj.windowHandle,winUser.EM_CHARFROMPOS,0,p)
offset=winUser.LOWORD(res)
lineNum=winUser.HIWORD(res)
if offset==0xFFFF and lineNum==0xFFFF:
raise LookupError("Point outside client area")
if self._getStoryLength() > 0xFFFF:
# Returned offsets are 16 bits, therefore for large documents, we need to make sure that the correct offset is returned.
# We can calculate this by using the start offset of the line with the retrieved line number.
lineStart=watchdog.cancellableSendMessage(self.obj.windowHandle,winUser.EM_LINEINDEX,lineNum,0)
# Get the last 16 bits of the line number
lineStart16=lineStart&0xFFFF
if lineStart16 > offset:
# There are cases where the last 16 bits of the line start are greather than the 16 bits offset.
# For example, this happens when the line start offset is 65534 (0xFFFE)
# and the offset we need ought to be 65537 (0x10001), which is a 17 bits number
# In that case, add 0x10000 to the offset, which will make the eventual formula return the correct offset,
# unless a line has more than 65535 characters, in which case we can't get a reliable offset.
offset+=0x10000
offset = (offset - lineStart16) + lineStart
return offset
示例4: _getTextRange
def _getTextRange(self, start, end):
bufLen = (end - start) + 1
textRange = TextRangeStruct()
textRange.chrg.cpMin = start
textRange.chrg.cpMax = end
processHandle = self.obj.processHandle
internalBuf = winKernel.virtualAllocEx(
processHandle, None, bufLen, winKernel.MEM_COMMIT, winKernel.PAGE_READWRITE
)
try:
textRange.lpstrText = internalBuf
internalTextRange = winKernel.virtualAllocEx(
processHandle, None, ctypes.sizeof(textRange), winKernel.MEM_COMMIT, winKernel.PAGE_READWRITE
)
try:
winKernel.writeProcessMemory(
processHandle, internalTextRange, ctypes.byref(textRange), ctypes.sizeof(textRange), None
)
watchdog.cancellableSendMessage(self.obj.windowHandle, SCI_GETTEXTRANGE, 0, internalTextRange)
finally:
winKernel.virtualFreeEx(processHandle, internalTextRange, 0, winKernel.MEM_RELEASE)
buf = ctypes.create_string_buffer(bufLen)
winKernel.readProcessMemory(processHandle, internalBuf, buf, bufLen, None)
finally:
winKernel.virtualFreeEx(processHandle, internalBuf, 0, winKernel.MEM_RELEASE)
cp = watchdog.cancellableSendMessage(self.obj.windowHandle, SCI_GETCODEPAGE, 0, 0)
if cp == SC_CP_UTF8:
return unicode(buf.value, errors="replace", encoding="utf-8")
else:
return unicode(buf.value, errors="replace", encoding=locale.getlocale()[1])
示例5: _get_columnCount
def _get_columnCount(self):
if not self.isMultiColumn:
return 0
headerHwnd= watchdog.cancellableSendMessage(self.windowHandle,LVM_GETHEADER,0,0)
count = watchdog.cancellableSendMessage(headerHwnd, HDM_GETITEMCOUNT, 0, 0)
if not count:
return 1
return count
示例6: _get_states
def _get_states(self):
newStates=super(mirandaIMContactList,self)._get_states()
hItem=watchdog.cancellableSendMessage(self.windowHandle,CLM_GETSELECTION,0,0)
state=watchdog.cancellableSendMessage(self.windowHandle,CLM_GETEXPAND,hItem,0)
if state==CLE_EXPAND:
newStates.add(controlTypes.STATE_EXPANDED)
elif state==CLE_COLLAPSE:
newStates.add(controlTypes.STATE_COLLAPSED)
return newStates
示例7: _getPointFromOffset
def _getPointFromOffset(self,offset):
point=textInfos.Point(
watchdog.cancellableSendMessage(self.obj.windowHandle,SCI_POINTXFROMPOSITION,None,offset),
watchdog.cancellableSendMessage(self.obj.windowHandle,SCI_POINTYFROMPOSITION,None,offset)
)
if point.x and point.y:
return point
else:
raise NotImplementedError
示例8: _getLineNumFromOffset
def _getLineNumFromOffset(self,offset):
ciChar=AECHARINDEX()
processHandle=self.obj.processHandle
internalCiChar=winKernel.virtualAllocEx(processHandle,None,ctypes.sizeof(ciChar),winKernel.MEM_COMMIT,winKernel.PAGE_READWRITE)
try:
watchdog.cancellableSendMessage(self.obj.windowHandle,AEM_RICHOFFSETTOINDEX,offset,internalCiChar)
winKernel.readProcessMemory(processHandle,internalCiChar,ctypes.byref(ciChar),ctypes.sizeof(ciChar),None)
finally:
winKernel.virtualFreeEx(processHandle,internalCiChar,0,winKernel.MEM_RELEASE)
return ciChar.nLine
示例9: _getStoryLength
def _getStoryLength(self):
ciChar=AECHARINDEX()
processHandle=self.obj.processHandle
internalCiChar=winKernel.virtualAllocEx(processHandle,None,ctypes.sizeof(ciChar),winKernel.MEM_COMMIT,winKernel.PAGE_READWRITE)
try:
watchdog.cancellableSendMessage(self.obj.windowHandle,AEM_GETINDEX,AEGI_LASTCHAR,internalCiChar)
end=watchdog.cancellableSendMessage(self.obj.windowHandle,AEM_INDEXTORICHOFFSET,0,internalCiChar)
finally:
winKernel.virtualFreeEx(processHandle,internalCiChar,0,winKernel.MEM_RELEASE)
return end+1
示例10: _getPointFromOffset
def _getPointFromOffset(self,offset):
x, y = winUser.ClientToScreen(self.obj.windowHandle,
watchdog.cancellableSendMessage(self.obj.windowHandle,SCI_POINTXFROMPOSITION,None,offset),
watchdog.cancellableSendMessage(self.obj.windowHandle,SCI_POINTYFROMPOSITION,None,offset)
)
point=textInfos.Point(x, y)
if point.x is not None and point.y is not None:
return point
else:
raise NotImplementedError
示例11: _get_childCount
def _get_childCount(self):
hItem=self.treeview_hItem
if not hItem:
return 0
childItem=watchdog.cancellableSendMessage(self.windowHandle,TVM_GETNEXTITEM,TVGN_CHILD,hItem)
if childItem<=0:
return 0
numItems=0
while childItem>0:
numItems+=1
childItem=watchdog.cancellableSendMessage(self.windowHandle,TVM_GETNEXTITEM,TVGN_NEXT,childItem)
return numItems
示例12: _getColumnImageIDRaw
def _getColumnImageIDRaw(self, index):
processHandle=self.processHandle
internalItem=winKernel.virtualAllocEx(processHandle,None,sizeof(self.LVITEM),winKernel.MEM_COMMIT,winKernel.PAGE_READWRITE)
try:
item=self.LVITEM(iItem=self.IAccessibleChildID-1,mask=LVIF_IMAGE|LVIF_COLUMNS,iSubItem=index)
winKernel.writeProcessMemory(processHandle,internalItem,byref(item),sizeof(self.LVITEM),None)
item.mask=LVIF_IMAGE|LVIF_COLUMNS
winKernel.writeProcessMemory(processHandle,internalItem,byref(item),sizeof(self.LVITEM),None)
watchdog.cancellableSendMessage(self.windowHandle,LVM_GETITEMW, 0, internalItem)
winKernel.readProcessMemory(processHandle,internalItem,byref(item),sizeof(item),None)
finally:
winKernel.virtualFreeEx(processHandle,internalItem,0,winKernel.MEM_RELEASE)
return item.iImage
示例13: _getWordOffsets
def _getWordOffsets(self,offset):
if self.obj.editAPIVersion>=2:
start=watchdog.cancellableSendMessage(self.obj.windowHandle,EM_FINDWORDBREAK,WB_MOVEWORDLEFT,offset)
end=watchdog.cancellableSendMessage(self.obj.windowHandle,EM_FINDWORDBREAK,WB_MOVEWORDRIGHT,start)
if end<=offset:
start=end
end=watchdog.cancellableSendMessage(self.obj.windowHandle,EM_FINDWORDBREAK,WB_MOVEWORDRIGHT,offset)
return (start,end)
else:
if self._getTextRange(offset,offset+1) in ['\r','\n']:
return offset,offset+1
else:
return super(EditTextInfo,self)._getWordOffsets(offset)
示例14: _getColumnLocationRaw
def _getColumnLocationRaw(self,index):
processHandle=self.processHandle
localRect=RECT(left=2,top=index)
internalRect=winKernel.virtualAllocEx(processHandle,None,sizeof(localRect),winKernel.MEM_COMMIT,winKernel.PAGE_READWRITE)
try:
winKernel.writeProcessMemory(processHandle,internalRect,byref(localRect),sizeof(localRect),None)
watchdog.cancellableSendMessage(self.windowHandle,LVM_GETSUBITEMRECT, (self.IAccessibleChildID-1), internalRect)
winKernel.readProcessMemory(processHandle,internalRect,byref(localRect),sizeof(localRect),None)
finally:
winKernel.virtualFreeEx(processHandle,internalRect,0,winKernel.MEM_RELEASE)
windll.user32.ClientToScreen(self.windowHandle,byref(localRect))
windll.user32.ClientToScreen(self.windowHandle,byref(localRect,8))
return (localRect.left,localRect.top,localRect.right-localRect.left,localRect.bottom-localRect.top)
示例15: _getLineOffsets
def _getLineOffsets(self,offset):
(start,end)=super(AkelEditTextInfo,self)._getLineOffsets(offset)
if end == self._getStoryLength():
return (start,end)
ciChar=AECHARINDEX()
processHandle=self.obj.processHandle
internalCiChar=winKernel.virtualAllocEx(processHandle,None,ctypes.sizeof(ciChar),winKernel.MEM_COMMIT,winKernel.PAGE_READWRITE)
try:
watchdog.cancellableSendMessage(self.obj.windowHandle,AEM_RICHOFFSETTOINDEX,offset,internalCiChar)
watchdog.cancellableSendMessage(self.obj.windowHandle,AEM_GETINDEX,AEGI_NEXTLINE,internalCiChar)
end=watchdog.cancellableSendMessage(self.obj.windowHandle,AEM_INDEXTORICHOFFSET,0,internalCiChar)
finally:
winKernel.virtualFreeEx(processHandle,internalCiChar,0,winKernel.MEM_RELEASE)
return (start,end)