-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTooltipSpy Trimmed
57 lines (55 loc) · 2.41 KB
/
TooltipSpy Trimmed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
RButton::
Send,{RButton Down}
While GetKeyState("RButton","P")
{ If GetKeyState("Esc","P")
{ SetTimer,TooltipSpy,% (20,Full:=0,SpyActive:=1)
break
}}Send,{RButton Up}
If SpyActive
Send,{Escape}
return
#If SpyActive
a::Clipboard:=MPosSX "," MPosSY
b::Clipboard:=MPosWX "," MPosWY
c::Clipboard:=ColorHex
d::Clipboard:="R=" ColorRed ",G=" ColorGreen ",B=" ColorBlue
e::Clipboard:=WinX "," WinY
f::Clipboard:=WinH " x " WinW
g::Clipboard:=WinTitle
r::Clipboard:=WinClass
s::Clipboard:=WinID
t::Clipboard:=WinCount
v::Clipboard:=CClassNN
w::Clipboard:=CHwnd
x::Clipboard:=CHybrid
z::Clipboard:=CHwndDll
LAlt::Clipboard:=MouseInfo WinInfo CInfo
Tab::Full:=!Full
$Esc::SpyActive:=0
#If
TooltipSpy:
If SpyActive
{ CoordMode,Mouse
MouseGetPos,MPosSX,MPosSY,WinID
If !(PriorX=MPosSX&&PriorY=MPosSY&&PriorFull=Full,TextLen:=(Full?100:15))
{ CoordMode,Mouse,Window
MouseGetPos,MPosWX,MPosWY
CoordMode,Pixel
PixelGetColor,ColorHex,%MPosSX%,%MPosSY%,RGB
WinGetClass,WinClass,ahk_id %WinID%
If(WinClass!="tooltips_class32",ColorRed:=((ColorHex&0xFF0000)>>16),ColorGreen:=((ColorHex&0x00FF00)>>8),ColorBlue:=ColorHex&0x0000FF,MouseInfo:="MOUSE`n (a) Screen (x,y):`t" MPosSX "," MPosSY "`n (b) Win. (x,y):`t" MPosWX "," MPosWY "`n (c) RGB Hex:`t" ColorHex "`n (d) RGB Dec:`t" ColorRed "," ColorGreen "," ColorBlue "`n")
{ WinGetPos,WinX,WinY,WinW,WinH,ahk_id %WinID%
WinGetTitle,WinTitle,ahk_id %WinID%
WinGet,WinCount,Count,ahk_class %WinClass%
WinInfo:="WINDOW`n (e) X,Y:`t`t" WinX "," WinY "`n (f) H x W:`t" WinH " x " WinW "`n (g) Title:`t" SubStr(WinTitle,1,TextLen) "`n (r) Class:`t" SubStr(WinClass,1,TextLen) "`n (s) ID:`t`t" SubStr(WinID,1,TextLen) "`n (t) Count:`t" SubStr(WinCount,1,TextLen) "`n"
SetFormat,IntegerFast,H
MouseGetPos,m_x,m_y
MouseGetPos,,,,CClassNN,1
MouseGetPos,,,,CHwnd,2
MouseGetPos,,,,CHybrid,3
CInfo:="Control`n (v) ClassNN:`t" SubStr(CClassNN,1,TextLen) "`n (w) HWND:`t" SubStr(CHwnd,1,TextLen) "`n (x) Hybrid:`t" SubStr(CHybrid,1,TextLen) "`n (z) HWND_DLL:`t" SubStr(CHwndDll:=DllCall("WindowFromPoint","int64",(m_y<<32)|(m_x&0xFFFFFFFF),"Ptr"),1,TextLen) "`n"
}ToolTip,% (MouseInfo (Sep:="--------------------------------------`n") WinInfo Sep CInfo Sep (TooltipHeader:="Esc = Exit`nAlt = Copy everything`nTab = Toggle full/short view`n"),PriorX:=MPosSX,PriorY:=MPosSY,PriorFull:=Full)
}}else
{ SetTimer,TooltipSpy,Off
ToolTip
}return