Only call button actions if the mouse is released inside the button. Fixes #96
This commit is contained in:
parent
b05a847e96
commit
fe59ec9659
@ -49,7 +49,7 @@ public:
|
||||
void SetShowSplit(bool split) { showSplit = split; }
|
||||
SplitButtonAction * GetSplitActionCallback() { return splitActionCallback; }
|
||||
void SetSplitActionCallback(SplitButtonAction * newAction) { splitActionCallback = newAction; }
|
||||
virtual void OnMouseUp(int x, int y, unsigned int button)
|
||||
virtual void OnMouseUnclick(int x, int y, unsigned int button)
|
||||
{
|
||||
if(isButtonDown)
|
||||
{
|
||||
@ -58,7 +58,7 @@ public:
|
||||
else if(rightDown)
|
||||
DoRightAction();
|
||||
}
|
||||
ui::Button::OnMouseUp(x, y, button);
|
||||
ui::Button::OnMouseUnclick(x, y, button);
|
||||
|
||||
}
|
||||
virtual void OnMouseMovedInside(int x, int y, int dx, int dy)
|
||||
|
@ -142,7 +142,7 @@ void Button::Draw(const Point& screenPos)
|
||||
}
|
||||
}
|
||||
|
||||
void Button::OnMouseUp(int x, int y, unsigned int button)
|
||||
void Button::OnMouseUnclick(int x, int y, unsigned int button)
|
||||
{
|
||||
if(button != 1)
|
||||
{
|
||||
@ -183,6 +183,7 @@ void Button::OnMouseEnter(int x, int y)
|
||||
void Button::OnMouseLeave(int x, int y)
|
||||
{
|
||||
isMouseInside = false;
|
||||
isButtonDown = false;
|
||||
}
|
||||
|
||||
void Button::DoAction()
|
||||
|
@ -34,7 +34,7 @@ public:
|
||||
bool Enabled;
|
||||
|
||||
virtual void OnMouseClick(int x, int y, unsigned int button);
|
||||
virtual void OnMouseUp(int x, int y, unsigned int button);
|
||||
virtual void OnMouseUnclick(int x, int y, unsigned int button);
|
||||
//virtual void OnMouseUp(int x, int y, unsigned int button);
|
||||
|
||||
virtual void OnMouseEnter(int x, int y);
|
||||
|
Reference in New Issue
Block a user