void HandleEvent(IntPtr eventHandle)
{
var e = ScreenEvent.FromEventHandle(eventHandle);
if (e.Type == EventType.SCREEN_EVENT_CLOSE ||
e.Type == EventType.SCREEN_EVENT_CREATE)
{
if (HandleWindowEvent(e))
{
return;
}
}
switch (e.Type)
{
case EventType.SCREEN_EVENT_CLOSE:
if (OnCloseWindow != null)
{
OnCloseWindow(e);
}
break;
case EventType.SCREEN_EVENT_CREATE:
if (OnCreateWindow != null)
{
OnCreateWindow(e);
}
break;
case EventType.SCREEN_EVENT_MTOUCH_TOUCH:
if (OnFingerTouch != null)
{
OnFingerTouch(e.X, e.Y);
}
break;
case EventType.SCREEN_EVENT_MTOUCH_MOVE:
if (OnFingerMove != null)
{
OnFingerMove(e.X, e.Y);
}
break;
case EventType.SCREEN_EVENT_MTOUCH_RELEASE:
if (OnFingerRelease != null)
{
OnFingerRelease(e.X, e.Y);
}
break;
default:
Console.WriteLine("UNHANDLED SCREEN EVENT, TYPE: {0}", e.Type);
if (e.Type == EventType.SCREEN_EVENT_PROPERTY)
{
Console.WriteLine(" - Name: {0}", (Property)e.GetIntProperty(Property.SCREEN_PROPERTY_NAME));
}
break;
}
}