// ----------------------- 模板,勿删 -----------------------------------------
//internal static void On(Widget widget, EventArg arg)
//{
// widget.mHandle(widget.Name);
//}
//internal event Event. Event
//{
// add
// {
// if (null == )
// {
// if (ICall_appendEvent(this, mInstance.Ptr, EventType.))
// {
// += value;
// }
// }
// }
// remove
// {
// -= value;
// if (null == )
// {
// ICall_removeEvent(this, mInstance.Ptr, EventType.);
// }
// }
//}
//protected Event. mHandle;
unsafe private static void onEvent(Widget widget, IntPtr int_ptr)
{
EventArg arg = Util.PtrToStruct <EventArg>(int_ptr);
switch (arg.EventType)
{
case EventType.MouseButtonClick:
{
Widget.OnMouseButtonClick(widget, Util.PtrToStruct <EventArg>(int_ptr)); //
}
break;
case EventType.MouseButtonPressed:
{
Widget.OnMouseButtonPressed(widget, Util.PtrToStruct <MouseButtonEventArg>(int_ptr));
}
break;
case EventType.MouseButtonReleased:
{
Widget.OnMouseButtonReleased(widget, Util.PtrToStruct <MouseButtonEventArg>(int_ptr));
}
break;
case EventType.MouseButtonDoubleClick:
{
Widget.OnMouseButtonDoubleClick(widget, Util.PtrToStruct <EventArg>(int_ptr));
}
break;
case EventType.MouseLostFocus:
{
Widget.OnMouseLostFocus(widget, Util.PtrToStruct <FocusEventArg>(int_ptr));
}
break;
case EventType.MouseSetFocus:
{
Widget.OnMouseSetFocus(widget, Util.PtrToStruct <FocusEventArg>(int_ptr));
}
break;
case EventType.MouseDrag:
{
Widget.OnMouseDrag(widget, Util.PtrToStruct <MouseDragEventArg>(int_ptr));
}
break;
case EventType.MouseMove:
{
Widget.OnMouseMove(widget, Util.PtrToStruct <MouseMoveEventArg>(int_ptr));
}
break;
case EventType.MouseWheel:
{
Widget.OnMouseWheel(widget, Util.PtrToStruct <MouseWheelEventArg>(int_ptr));
}
break;
case EventType.KeyLostFocus:
{
Widget.OnKeyLostFocus(widget, Util.PtrToStruct <FocusEventArg>(int_ptr));
}
break;
case EventType.KeySetFocus:
{
Widget.OnKeySetFocus(widget, Util.PtrToStruct <FocusEventArg>(int_ptr));
}
break;
case EventType.KeyButtonPressed:
{
Widget.OnKeyButtonPressed(widget, Util.PtrToStruct <KeyButtonPressedEventArg>(int_ptr));
}
break;
case EventType.KeyButtonReleased:
{
Widget.OnKeyButtonReleased(widget, Util.PtrToStruct <KeyButtonReleasedEventArg>(int_ptr));
}
break;
case EventType.RootMouseChangeFocus:
{
Widget.OnRootMouseChangeFocus(widget, Util.PtrToStruct <RootChangeFocusEventArg>(int_ptr));
}
break;
case EventType.RootKeyChangeFocus:
{
Widget.OnRootKeyChangeFocus(widget, Util.PtrToStruct <RootChangeFocusEventArg>(int_ptr));
}
break;
case EventType.ToolTip:
{
Widget.OnToolTip(widget, Util.PtrToStruct <ToolTipEventArg>(int_ptr));
}
break;
case EventType.ScrollChangePosition:
{
ScrollBar sb = widget as ScrollBar;
if (null != sb)
{
ScrollBar.OnScrollChangePosition(sb, Util.PtrToStruct <ScrollChangePositionEventArg>(int_ptr));
}
}
break;
// --------------------------------------- DDContainer event ------------------------------------------------
case EventType.StartDrag:
{
DDContainer ct = widget as DDContainer;
if (null != ct)
{
DDContainer.OnStartDrag(ct, Util.PtrToStruct <DragEventArg>(int_ptr));
}
}
break;
case EventType.RequestDrop:
{
DDContainer ct = widget as DDContainer;
if (null != ct)
{
DDContainer.OnRequestDrop(ct, Util.PtrToStruct <DragEventArg>(int_ptr));
}
}
break;
case EventType.DropResult:
{
DDContainer ct = widget as DDContainer;
if (null != ct)
{
DDContainer.OnDropResult(ct, Util.PtrToStruct <DragEventArg>(int_ptr));
}
}
break;
case EventType.ChangeDDState:
{
DDContainer ct = widget as DDContainer;
if (null != ct)
{
DDContainer.OnChangeDDState(ct, Util.PtrToStruct <ChangeDDStateEventArg>(int_ptr));
}
}
break;
case EventType.RequestDragWidgetInfo:
{
DDContainer ct = widget as DDContainer;
if (null != ct)
{
DDContainer.OnDragWidgetInfo(ct, Util.PtrToStruct <RequestDragWidgetInfoEventArg>(int_ptr));
}
}
break;
// --------------------------------------- item box event ------------------------------------------------
case EventType.RequestCoordItem:
{
ItemBox ib = widget as ItemBox;
if (null != ib)
{
ItemBox.OnRequestCoordItem(ib, Util.PtrToStruct <RequestCoordWidgetItemEventArg>(int_ptr));
}
}
break;
case EventType.RequestCreateWidgetItem:
{
ItemBox ib = widget as ItemBox;
if (null != ib)
{
ItemBox.OnRequestCreateWidgetItem(ib, Util.PtrToStruct <RequestCreateWidgetItemEventArg>(int_ptr));
}
}
break;
case EventType.RequestDrawItem:
{
ItemBox ib = widget as ItemBox;
if (null != ib)
{
ItemBox.OnRequestDrawItem(ib, Util.PtrToStruct <RequestDrawItemEventArg>(int_ptr));
}
}
break;
case EventType.SelectItemAccept:
{
ItemBox ib = widget as ItemBox;
if (null != ib)
{
ItemBox.OnSelectItemAccept(ib, Util.PtrToStruct <ItemEventArg>(int_ptr));
}
}
break;
case EventType.ChangeItemPosition:
{
ItemBox ib = widget as ItemBox;
if (null != ib)
{
ItemBox.OnChangeItemPosition(ib, Util.PtrToStruct <ItemEventArg>(int_ptr));
}
}
break;
case EventType.MouseItemActivate:
{
ItemBox ib = widget as ItemBox;
if (null != ib)
{
ItemBox.OnMouseItemActivate(ib, Util.PtrToStruct <ItemEventArg>(int_ptr));
}
}
break;
case EventType.NotifyItem:
{
ItemBox ib = widget as ItemBox;
if (null != ib)
{
ItemBox.OnNotifyItem(ib, Util.PtrToStruct <NotifyItemEventArg>(int_ptr));
}
}
break;
// -------------------------------- List Box event ----------------------------------
case EventType.ListSelectAccept:
{
ListBox ib = widget as ListBox;
if (null != ib)
{
ListBox.OnListSelectAccept(ib, Util.PtrToStruct <ListBoxEventArg>(int_ptr));
}
}
break;
case EventType.ListChangePosition:
{
ListBox ib = widget as ListBox;
if (null != ib)
{
ListBox.OnListChangePosition(ib, Util.PtrToStruct <ListBoxEventArg>(int_ptr));
}
}
break;
case EventType.ListMouseItemActivate:
{
ListBox ib = widget as ListBox;
if (null != ib)
{
ListBox.OnListMouseItemActivate(ib, Util.PtrToStruct <ListBoxEventArg>(int_ptr));
}
}
break;
case EventType.ListMouseItemFocus:
{
ListBox ib = widget as ListBox;
if (null != ib)
{
ListBox.OnListMouseItemFocus(ib, Util.PtrToStruct <ListBoxEventArg>(int_ptr));
}
}
break;
case EventType.ListChangeScroll:
{
ListBox ib = widget as ListBox;
if (null != ib)
{
ListBox.OnListChangeScroll(ib, Util.PtrToStruct <ListBoxEventArg>(int_ptr));
}
}
break;
// -------------------------------- Window event ----------------------------------
case EventType.WindowButtonPressed:
{
Window window = widget as Window;
if (null != window)
{
Window.OnWindowButtonPressed(window, Util.PtrToStruct <WindowButtonPressedEventArg>(int_ptr));
}
}
break;
case EventType.WindowChangeCoord:
{
Window window = widget as Window;
if (null != window)
{
Window.OnWindowChangeCoord(window, arg);
}
}
break;
// -------------------------------- Canvas event ----------------------------------
case EventType.PreTextureChanges:
{
Canvas canvas = widget as Canvas;
if (null != canvas)
{
Canvas.OnPreTextureChanges(canvas, Util.PtrToStruct <EventArg>(int_ptr));
}
}
break;
case EventType.RequestUpdateCanvas:
{
Canvas canvas = widget as Canvas;
if (null != canvas)
{
Canvas.OnRequestUpdateCanvas(canvas, Util.PtrToStruct <RequestUpdateCanvasEventArg>(int_ptr));
}
}
break;
default:
break;
}
}