FairyGUI.GRoot.ShowPopup C# (CSharp) Method

ShowPopup() public method

Show a popup object along with the specific target object. 显示一个popup。将popup显示在指定对象的上边或者下边。 popup的特点是点击popup对象外的区域,popup对象将自动消失。
public ShowPopup ( GObject popup, GObject target, object downward ) : void
popup GObject
target GObject
downward object True to display downwards, false to display upwards, null to display automatically.
return void
        public void ShowPopup(GObject popup, GObject target, object downward)
        {
            if (_popupStack.Count > 0)
            {
                int k = _popupStack.IndexOf(popup);
                if (k != -1)
                {
                    for (int i = _popupStack.Count - 1; i >= k; i--)
                    {
                        int last = _popupStack.Count - 1;
                        ClosePopup(_popupStack[last]);
                        _popupStack.RemoveAt(last);
                    }
                }
            }
            _popupStack.Add(popup);

            AddChild(popup);
            AdjustModalLayer();

            if ((popup is Window) && target == null && downward == null)
                return;

            Vector2 pos = GetPoupPosition(popup, target, downward);
            popup.xy = pos;
        }

Same methods

GRoot::ShowPopup ( GObject popup ) : void
GRoot::ShowPopup ( GObject popup, GObject target ) : void

Usage Example

示例#1
0
    static int ShowPopup(IntPtr L)
    {
        try
        {
            int count = LuaDLL.lua_gettop(L);

            if (count == 2)
            {
                FairyGUI.GRoot   obj  = (FairyGUI.GRoot)ToLua.CheckObject <FairyGUI.GRoot>(L, 1);
                FairyGUI.GObject arg0 = (FairyGUI.GObject)ToLua.CheckObject <FairyGUI.GObject>(L, 2);
                obj.ShowPopup(arg0);
                return(0);
            }
            else if (count == 3)
            {
                FairyGUI.GRoot   obj  = (FairyGUI.GRoot)ToLua.CheckObject <FairyGUI.GRoot>(L, 1);
                FairyGUI.GObject arg0 = (FairyGUI.GObject)ToLua.CheckObject <FairyGUI.GObject>(L, 2);
                FairyGUI.GObject arg1 = (FairyGUI.GObject)ToLua.CheckObject <FairyGUI.GObject>(L, 3);
                obj.ShowPopup(arg0, arg1);
                return(0);
            }
            else if (count == 4)
            {
                FairyGUI.GRoot          obj  = (FairyGUI.GRoot)ToLua.CheckObject <FairyGUI.GRoot>(L, 1);
                FairyGUI.GObject        arg0 = (FairyGUI.GObject)ToLua.CheckObject <FairyGUI.GObject>(L, 2);
                FairyGUI.GObject        arg1 = (FairyGUI.GObject)ToLua.CheckObject <FairyGUI.GObject>(L, 3);
                FairyGUI.PopupDirection arg2 = (FairyGUI.PopupDirection)ToLua.CheckObject(L, 4, typeof(FairyGUI.PopupDirection));
                obj.ShowPopup(arg0, arg1, arg2);
                return(0);
            }
            else if (count == 5)
            {
                FairyGUI.GRoot          obj  = (FairyGUI.GRoot)ToLua.CheckObject <FairyGUI.GRoot>(L, 1);
                FairyGUI.GObject        arg0 = (FairyGUI.GObject)ToLua.CheckObject <FairyGUI.GObject>(L, 2);
                FairyGUI.GObject        arg1 = (FairyGUI.GObject)ToLua.CheckObject <FairyGUI.GObject>(L, 3);
                FairyGUI.PopupDirection arg2 = (FairyGUI.PopupDirection)ToLua.CheckObject(L, 4, typeof(FairyGUI.PopupDirection));
                bool arg3 = LuaDLL.luaL_checkboolean(L, 5);
                obj.ShowPopup(arg0, arg1, arg2, arg3);
                return(0);
            }
            else
            {
                return(LuaDLL.luaL_throw(L, "invalid arguments to method: FairyGUI.GRoot.ShowPopup"));
            }
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
All Usage Examples Of FairyGUI.GRoot::ShowPopup