Exemple #1
0
        unsafe internal static void OnRequestCoordItem(ItemBox item_box, RequestCoordWidgetItemEventArg rc_arg)
        {
            bool      drag  = rc_arg.drop;
            IntCoord *coord = (IntCoord *)rc_arg.Coord.ToPointer();

            item_box.mHandleCoordItem(item_box.mName, ref (*coord), drag);
        }
Exemple #2
0
        internal static void OnRequestCreateWidgetItem(ItemBox item_box, RequestCreateWidgetItemEventArg rc_arg)
        {
            Instance inst = rc_arg.Item;
            ItemInfo info = item_box.findItem(inst);

            if (null != info)
            {
                info.LayoutName = item_box.mName.Name + "_Layout_" + inst.Ptr.ToString(); //;//(item_box.ItemCount - 1).ToString()
                //item_box.mHandleCreateWidgetItem(item_box.Name, info.mItem.Name);

                item_box.mHandleCreateWidgetItem(item_box.Name, info);
            }
        }
Exemple #3
0
 internal static void OnSelectItemAccept(ItemBox widget, ItemEventArg arg)
 {
     widget.mHandleSelectItemAccept(widget.Name, (int)arg.index);
 }
Exemple #4
0
        internal static void OnRequestDrawItem(ItemBox item_box, RequestDrawItemEventArg rc_arg)
        {
            Instance inst = rc_arg.Item;

            ItemInfo info = item_box.findItem(inst);
            if (null != info && null != info.Item)
            {
                IBDrawItemInfo draw_info = (IBDrawItemInfo)Util.PtrToStruct<IBDrawItemInfo>(rc_arg.DrawItemInfo);
                item_box.mHandleDrawItem(item_box.Name, info, draw_info);
            }
        }
Exemple #5
0
        internal static void OnRequestCreateWidgetItem(ItemBox item_box, RequestCreateWidgetItemEventArg rc_arg)
        {
            Instance inst = rc_arg.Item;
            ItemInfo info = item_box.findItem(inst);
            if (null != info)
            {
                info.LayoutName = item_box.mName.Name + "_Layout_" + inst.Ptr.ToString(); //;//(item_box.ItemCount - 1).ToString()
                //item_box.mHandleCreateWidgetItem(item_box.Name, info.mItem.Name);

                item_box.mHandleCreateWidgetItem(item_box.Name, info);
            }
        }
Exemple #6
0
 internal static unsafe void OnRequestCoordItem(ItemBox item_box, RequestCoordWidgetItemEventArg rc_arg)
 {
     bool drag = rc_arg.drop;
     IntCoord* coord = (IntCoord*)rc_arg.Coord.ToPointer();
     item_box.mHandleCoordItem(item_box.mName, ref (*coord), drag);
 }
Exemple #7
0
 internal static void OnNotifyItem(ItemBox widget, NotifyItemEventArg arg)
 {
     IBNotifyItemData info = Util.PtrToStruct<IBNotifyItemData>(arg.IBNotifyItemData);
     widget.mHandleNotifyItem(widget.Name, ref info);
 }
Exemple #8
0
        internal static Widget CreateWidget(Instance inst, FString name, Layout parent_layout)
        {
            WidgetType type = ICall_getType(inst.Ptr);

            Widget widget = null;
            switch (type)
            {
                case WidgetType.Widget:
                    widget = new Widget(inst, name, parent_layout, WidgetType.Widget);
                    break;
                case WidgetType.ImageBox:
                    widget = new ImageBox(inst, name, parent_layout);
                    break;
                case WidgetType.Window:
                    widget = new Window(inst, name, parent_layout);
                    break;
                case WidgetType.TextBox:
                    widget = new TextBox(inst, name, parent_layout);
                    break;
                case WidgetType.ListBox:
                    widget = new ListBox(inst, name, parent_layout);
                    break;
                case WidgetType.Button:
                    widget = new Button(inst, name, parent_layout);
                    break;
                case WidgetType.EditBox:
                    widget = new EditBox(inst, name, parent_layout);
                    break;
                case WidgetType.ComboBox:
                    widget = new ComboBox(inst, name, parent_layout);
                    break;

                case WidgetType.ScrollBar:
                    widget = new ScrollBar(inst, name, parent_layout);
                    break;
                case WidgetType.DDContainer:
                    widget = new DDContainer(inst, name, parent_layout);
                    break;
                case WidgetType.ItemBox:
                    widget = new ItemBox(inst, name, parent_layout);
                    break;
                case WidgetType.Canvas:
                    widget = new Canvas(inst, name, parent_layout);
                    break;
                default:
                    widget = new Widget(inst, name, parent_layout, WidgetType.Unknown);
                    break;
            }
            return widget;
        }
Exemple #9
0
        internal static void OnNotifyItem(ItemBox widget, NotifyItemEventArg arg)
        {
            IBNotifyItemData info = Util.PtrToStruct <IBNotifyItemData>(arg.IBNotifyItemData);

            widget.mHandleNotifyItem(widget.Name, ref info);
        }
Exemple #10
0
 internal static void OnMouseItemActivate(ItemBox widget, ItemEventArg arg)
 {
     widget.mHandleSelectItemAccept(widget.Name, (int)arg.index);
 }
Exemple #11
0
 internal static void OnChangeItemPosition(ItemBox widget, ItemEventArg arg)
 {
     widget.mHandleSelectItemAccept(widget.Name, (int)arg.index);
 }
Exemple #12
0
        // ----------------------- 模板,勿删 -----------------------------------------
        //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;
            }
        }