How does MREST works?

x64 Replacement/Alternative to Microsoft's IntelliMouse application.
Forum rules
Please read the forum rules before posting for the first time.
The more information you can provide, the quicker and more accurately someone can help.
Post Reply
User avatar
BriHecato
Dedicated
Posts: 87
Joined: Tue Sep 06, 2016 9:09 am

How does MREST works?

Post by BriHecato » Tue Jun 26, 2018 8:42 am

Hi guys, long time :)
I got a question like in topic. Got little issue with AutoHotKey (lol) and Phil explanation about XMBC mose mechanics could help me discover what am I doing wrong.

In XMBC I got simkeys for a shortcut in my favourite daily stubborn CAM software - like this

MSAVE1 - saving starting position of mouse - in this situation when no command is active i'm hovering over the text entity (if i have any command active like move, delete draw - the entity below cursor would be highlithed)
MSET:x,y - moving - and there's a question if mouse has been moved or teleported? the target position is icon
LMB - clicking on the icon executing command
MREST1 - returning to starting position over the text entity - this is what it's all about, in XMBC text is highlithed when cursor returns to him so...
LMB - .. I'm able to select this text by clicking (and get edit text window)
Ctrl+c - copying text which is selected in editbox in edit text window by default
Escape - closing edit text window

It's all about MREST here - in AHK I write identical code to this but restored cursor doesn't highligth entity.

Thanks in advance :)
Let the PC do the hard work = AHK + C# + HTML/CSS/JS + XMBC + Clavier+ + AutoLisp + VBA/OOB

User avatar
phil
Site Admin
Posts: 5501
Joined: Sun Apr 06, 2003 11:12 pm

Re: How does MREST works?

Post by phil » Wed Jun 27, 2018 8:32 pm

Hi, MSET simply sets the position, so I guess thats what you mean by teleport!
MREST resets the position to what you saved it as... BUT, just before that you have {LMB} so I suspect the left button is still down, hence causing the selection.

It all depends what method you are using... and if it is method 3 "during", then the LMB will not be released until the button is released... so its going to cause some issues. There are new tags in 2.18 beta to try and help control this, like {OD} {OU} to only exectute the following tag when the button is pressed down (OD) or up (OU). You also have {LMBD} and {LMBU} i believe... so you could do...
....{LMBD}{LMBU}{MREST1}{LMBD}{LMBU}
... to force the button to be released before the cursor position is reset.
--[ Phil ]--
--[ Administrator & XMBC Author ]--
Logitech G9, Logitech MX518, Microsoft Intellimouse, Trust 16341 BT Mouse
Windows 10 x64, Intel i5-6600k, Asus 170-A, 16GB DDR4,
nVidia GeForce GTX 970, 2xEvo 850 (RAID 0), 2x2TB WD Black (RAID1)

Post Reply