public override void DoActive(string key, bool isActive)
        {
            if (PanelInfo == null)
            {
                return;
            }

            PanelInfo.SetActive(isActive);
        }
        protected override void AddPanel(string name)
        {
            PanelInfo info = new PanelInfo();

            info.Key       = name;
            info.GObject   = null;
            info.OpenParam = null;
            info.SetActive(false);

            m_panelInfo = info;
        }
        public override void DoClose()
        {
            if (PanelInfo == null)
            {
                return;
            }

            PanelInfo.SetActive(false);
            PanelInfo.OpenParam = null;

            OnClose();
        }
        public override void DoOpen(string key, object param)
        {
            if (PanelInfo == null)
            {
                return;
            }

            if (PanelInfo.GObject == null)
            {
                PanelInfo.GObject = WindowManager.GetObject(PanelInfo.Key);
            }

            PanelInfo.SetActive(true);
            PanelInfo.OpenParam = param;

            OnOpen(param);
        }