Good news... bad news...
Good news is I managed to get it to work with the Plus! Window. Unfortunately I can't see how it will work with controls.
js code:
var WM_MOUSEMOVE = 0x200;
var WM_MOUSEHOVER = 0x02A1;
var TME_HOVER = 1;
var wndSubclass;
function OnEvent_Initialize() {
if (Messenger.MyStatus < STATUS_INVISIBLE) return false;
Debug.DebuggingWindowVisible = true;
wndSubclass = MsgPlus.CreateWnd('wndSubclass.xml', 'wndSubclass');
wndSubclass.RegisterMessageNotification(WM_MOUSEMOVE);
wndSubclass.RegisterMessageNotification(WM_MOUSEHOVER);
}
function OnEvent_SigninReady() {
OnEvent_Initialize();
}
function OnwndSubclassEvent_MessageNotification(pPlusWnd, nMessage, wParam, lParam) {
switch (nMessage) {
case WM_MOUSEMOVE:
Debug.ClearDebuggingWindow();
Debug.Trace('WM_MOUSEMOVE');
var TRACKMOUSEEVENT = Interop.Allocate(16);
with(TRACKMOUSEEVENT) {
WriteDWORD(0, Size);
WriteDWORD(4, TME_HOVER);
WriteDWORD(8, pPlusWnd.Handle);
WriteDWORD(12, 1);
}
Interop.Call('user32','TrackMouseEvent',TRACKMOUSEEVENT.DataPtr);
return -1; // Process the message little one
case WM_MOUSEHOVER:
Debug.ClearDebuggingWindow();
Debug.Trace('WM_MOUSEHOVER');
return -1;
}
}