#endif
#ifdef IMPLEMENTATION
-void resizeNotifyInputContainer(entity me, vector relOrigin, vector relSize, vector absOrigin, vector absSize)
+void InputContainer_resizeNotify(entity me, vector relOrigin, vector relSize, vector absOrigin, vector absSize)
{
SUPER(InputContainer).resizeNotify(me, relOrigin, relSize, absOrigin, absSize);
/*
*/
}
-void focusLeaveInputContainer(entity me)
+void InputContainer_focusLeave(entity me)
{
SUPER(InputContainer).focusLeave(me);
me.mouseFocusedChild = NULL;
}
-float keyDownInputContainer(entity me, float scan, float ascii, float shift)
+float InputContainer_keyDown(entity me, float scan, float ascii, float shift)
{
entity f, ff;
if(SUPER(InputContainer).keyDown(me, scan, ascii, shift))
{
for(ff = f.prevSibling; ff; ff = ff.prevSibling)
{
- if not(ff.focusable)
+ if (!ff.focusable)
continue;
me.setFocus(me, ff);
return 1;
{
for(ff = me.lastChild; ff; ff = ff.prevSibling)
{
- if not(ff.focusable)
+ if (!ff.focusable)
continue;
me.setFocus(me, ff);
return 1;
{
for(ff = f.nextSibling; ff; ff = ff.nextSibling)
{
- if not(ff.focusable)
+ if (!ff.focusable)
continue;
me.setFocus(me, ff);
return 1;
{
for(ff = me.firstChild; ff; ff = ff.nextSibling)
{
- if not(ff.focusable)
+ if (!ff.focusable)
continue;
me.setFocus(me, ff);
return 1;
return 0;
}
-float _changeFocusXYInputContainer(entity me, vector pos)
+float InputContainer__changeFocusXY(entity me, vector pos)
{
entity e, ne;
e = me.mouseFocusedChild;
ne = me.itemFromPoint(me, pos);
if(ne)
- if not(ne.focusable)
+ if (!ne.focusable)
ne = NULL;
me.mouseFocusedChild = ne;
if(ne)
return (ne != NULL);
}
-float mouseDragInputContainer(entity me, vector pos)
+float InputContainer_mouseDrag(entity me, vector pos)
{
if(SUPER(InputContainer).mouseDrag(me, pos))
return 1;
return 1;
return 0;
}
-float mouseMoveInputContainer(entity me, vector pos)
+float InputContainer_mouseMove(entity me, vector pos)
{
+ if(me.mouseFocusedChild != me.focusedChild) // if the keyboard moved the focus away
+ me.mouseFocusedChild = NULL; // force focusing
if(me._changeFocusXY(me, pos))
if(SUPER(InputContainer).mouseMove(me, pos))
return 1;
return 1;
return 0;
}
-float mousePressInputContainer(entity me, vector pos)
+float InputContainer_mousePress(entity me, vector pos)
{
me.mouseFocusedChild = NULL; // force focusing
if(me._changeFocusXY(me, pos))
return 1;
return 0;
}
-float mouseReleaseInputContainer(entity me, vector pos)
+float InputContainer_mouseRelease(entity me, vector pos)
{
- float r;
- r = SUPER(InputContainer).mouseRelease(me, pos);
+ SUPER(InputContainer).mouseRelease(me, pos); // return value?
if(me.focused) // am I still eligible for this? (UGLY HACK, but a mouse event could have changed focus away)
if(me._changeFocusXY(me, pos))
return 1;