#pragma once

#include "container.qh"
CLASS(InputContainer, Container)
	METHOD(InputContainer, keyDown, float(entity, float, float, float));
	METHOD(InputContainer, mouseMove, float(entity, vector));
	METHOD(InputContainer, mousePress, bool(InputContainer this, vector pos));
	METHOD(InputContainer, mouseRelease, float(entity, vector));
	METHOD(InputContainer, mouseDrag, float(entity, vector));
	METHOD(InputContainer, focusLeave, void(entity));
	METHOD(InputContainer, resizeNotify, void(entity, vector, vector, vector, vector));

	METHOD(InputContainer, _changeFocusXY, bool(entity this, vector pos));
	ATTRIB(InputContainer, mouseFocusedChild, entity);
	ATTRIB(InputContainer, isTabRoot, bool, false);
ENDCLASS(InputContainer)
