Example #1
0
        /// <summary>
        /// 选项更改
        /// </summary>
        /// <param name="view"></param>
        public void OnOptionClick(NguiCheckBox view)
        {
            if (_curRuleInfo == null)
            {
                return;
            }
            var id    = view.Id;
            var cArgs = _curRuleInfo.CreateArgs;

            if (!cArgs.ContainsKey(id))
            {
                return;
            }
            var cData = cArgs[id];

            if (cData == null)
            {
                return;
            }
            var type       = cData.Type;
            var isSelected = view.Toggle.value;

            if (isSelected)
            {
                if (type == RuleItemType.button)
                {
                    if (cData.Id == _curRuleInfo.CurTabItemId)
                    {
                        return;
                    }
                    _curRuleInfo.CurTabItemId = cData.Id;
                    if (_selectTabToggle != null)
                    {
                        OnChangeTabWithToggle(_selectTabToggle);
                    }
                    return;
                }
                ExecuteWithClickType(cData, cArgs);
                UpdateOtherOptions(cData.Dp, cArgs, true);
                UpdateOtherOptions(cData.Ep, cArgs, false);
            }
            else
            {
                UpdateOtherOptions(cData.Rp, cArgs, false);
            }
            if (cData.Key == AllField)
            {
                return;
            }
            var allCreateData = GetAllRp(cArgs);

            UpdataAllState(allCreateData, cArgs);
        }
Example #2
0
        protected override void OnAwake()
        {
            InitStateTotal = 2;
            CheckIsStart   = true;
            var defaultBox = RadioPerfab;

            if (RadioPerfab == null)
            {
                defaultBox = RadioPerfab = CheckBoxPerfab;
            }
            else if (CheckBoxPerfab == null)
            {
                defaultBox = CheckBoxPerfab = RadioPerfab;
            }
            if (ButtonPerfab == null)
            {
                ButtonPerfab = defaultBox;
            }
            if (TabPerfab == null)
            {
                TabPerfab = ButtonPerfab;
            }
        }
Example #3
0
        /// <summary>
        /// 选项更改
        /// </summary>
        /// <param name="view"></param>
        public void OnOptionClick(NguiCheckBox view)
        {
            if (CurRuleInfo == null)
            {
                return;
            }
            var id    = view.Id;
            var cArgs = CurRuleInfo.CreateArgs;

            if (!cArgs.ContainsKey(id))
            {
                return;
            }
            var cData = cArgs[id];

            if (cData == null)
            {
                return;
            }
            var type       = cData.Type;
            var curToggle  = view.Toggle;
            var isSelected = curToggle.value;
            var group      = cData.Group;
            var curBtnId   = cData.Id;

            if (isSelected)
            {
                switch (type)
                {
                case RuleItemType.tab:
                    if (CurRuleInfo.CurTabId == curBtnId)
                    {
                        return;
                    }
                    CurRuleInfo.CurTabId = cData.Id;
                    CurRuleInfo.SetButtonId(group, cData.Id);
                    CreateRoomRuleInfo.SaveItemState(null, cData.Id, group, CurRuleInfo.GameKey, true);
                    if (SelectTabToggle != null)
                    {
                        OnChangeTabWithToggle(SelectTabToggle);
                    }
                    return;

                case RuleItemType.button:
                    curBtnId = CurRuleInfo.CurrentButtonId(group);
                    if (curBtnId == cData.Id)
                    {
                        return;
                    }
                    CurRuleInfo.SetButtonId(group, cData.Id);
                    CreateRoomRuleInfo.SaveItemState(CurRuleInfo.CurTabId, cData.Id, group, CurRuleInfo.GameKey, true);
                    if (SelectTabToggle != null)
                    {
                        OnChangeTabWithToggle(SelectTabToggle);
                    }
                    return;

                default:
                    CreateRoomRuleInfo.SaveItemState(CurRuleInfo.CurTabId, cData.Id, group, CurRuleInfo.GameKey, true);
                    ExecuteWithClickType(cData, cArgs);
                    if (!IsNotClick(cData.Key == AllField, curToggle.gameObject))
                    {
                        UpdateOtherOptions(cData.Dp, cArgs, true);
                        UpdateOtherOptions(cData.Ep, cArgs, false);
                    }
                    break;
                }
            }
            else
            {
                CreateRoomRuleInfo.SaveItemState(CurRuleInfo.CurTabId, cData.Id, group, CurRuleInfo.GameKey, false);
                if (!IsNotClick(cData.Key == AllField, curToggle.gameObject))
                {
                    UpdateOtherOptions(cData.Rp, cArgs, false);
                }
            }
            if (cData.Key == AllField)
            {
                return;
            }
            if (!IsNotClick(true, view.gameObject))
            {
                var allCreateData = GetAllRp(cArgs);
                UpdataAllState(allCreateData, cArgs);
            }
        }