Hi all,
I'm going to be short (follow steps)

1) press mouse button on nuiButton:
nuiButton::MouseClick{... Grab(); ...}

2) move mouse outside nuiButton area:
nuiButton::MouseMove {... if (GetHover()) {...}else{SetState(nuiDisabled)} ... }

3) mouse will never ungrab (it is practicly disabled):
nuiTopLevel::CallMouseUnClick { mpGrab?mpGrab->DispatchMouseUnClick(...) ...}
nuiContainer::DispatchMouseUnClick{ if (GetState()==nuiDisabled()) return; }

4) comment out SetState(nuiDisabled) in nuiButton::MouseMove

5) make points 1) and 2) and release mouse outside button area - mouse remains grabbed: nuiTopLevel::CallMouseUnClick { mpGrab?mpGrab->DispatchMouseUnClick(...) ...}
nuiContainer::DispatchMouseUnClick{ if (IsInside(...)) {...} return; }

Button disabling is nuiButton problem and my solution is comment out disabling as in 4) - don't know why this disabling is here and if it can be safely commented. Ungrabbing is global problem and my solution here is ungrab mouse on every UnClick(). I don't know where is good place to make Ungrab() but I think it make sense.

Regards,

Martin



Reply via email to