private void enterBTN_Click(object sender, EventArgs e)
        {
            m_EnumItem.EnumStr = textBox1.Text.Trim();

            //验证枚举值
            int value = m_EnumItem.EnumValue;

            if (!int.TryParse(textBox2.Text, out value))
            {
                MainForm.Instance.ShowMessage("枚举值请填写整数");
                return;
            }
            m_EnumItem.EnumValue = value;

            //枚举项描述
            m_EnumItem.Describe = textBox3.Text.Trim();

            //验证枚举项是否为空
            if (string.IsNullOrEmpty(m_EnumItem.EnumStr))
            {
                MainForm.Instance.ShowMessage("枚举项不能为空");
                return;
            }

            //验证枚举选项是否已存在
            if (m_CustomEnum.ExistEnumStr(m_EnumItem.EnumStr))
            {
                MainForm.Instance.ShowMessage(string.Format("已存在枚举项:{0},请换一个枚举项字符", m_EnumItem.EnumStr));
                return;
            }

            //验证枚举值是已存在
            if (m_CustomEnum.ExistEnumValue(m_EnumItem.EnumValue))
            {
                MainForm.Instance.ShowMessage(string.Format("已存在枚举值:{0},请换一个枚举值", m_EnumItem.EnumValue));
                return;
            }

            m_CustomEnum.AddEnumItem(m_EnumItem);

            if (m_Form is AddEnumForm)
            {
                (m_Form as AddEnumForm).AddEnumItem(m_EnumItem);
            }
            else if (m_Form is EditEnumForm)
            {
                (m_Form as EditEnumForm).AddEnumItem(m_EnumItem);
            }

            this.Close();
        }
Example #2
0
        private void Paste()
        {
            try
            {
                EnumItemListContent content = XmlUtility.StringToObject <EnumItemListContent>(Clipboard.GetText());

                for (int i = 0; i < content.DataList.Count; i++)
                {
                    EnumItem customEnum = content.DataList[i];
                    string   enumStr    = customEnum.EnumStr;
                    do
                    {
                        enumStr += "_New";
                    }while (m_CustomEnum.ExistEnumStr(enumStr));

                    int enumValue = customEnum.EnumValue;
                    do
                    {
                        enumValue++;
                    }while (m_CustomEnum.ExistEnumValue(enumValue));

                    customEnum.EnumStr   = enumStr;
                    customEnum.EnumValue = enumValue;

                    m_CustomEnum.AddEnumItem(customEnum);
                }

                Exec("Refresh");
                MainForm.Instance.ShowInfo("您粘贴了" + content.DataList.Count + "个枚举选项!!!");
            }
            catch (Exception ex)
            {
                MainForm.Instance.ShowInfo("无法进行粘贴,错误信息:" + ex.Message);
                MainForm.Instance.ShowMessage("无法进行粘贴,错误信息:" + ex.Message, "警告");
            }
        }
        public void ResetEnums()
        {
            m_Enums.Clear();

            CustomEnum SUCCESS_POLICY = new CustomEnum();

            SUCCESS_POLICY.EnumType = "SUCCESS_POLICY";
            SUCCESS_POLICY.AddEnumItem(new EnumItem()
            {
                EnumStr = "SUCCEED_ON_ONE", EnumValue = 1, Describe = "当某一个节点返回成功时退出;"
            });
            SUCCESS_POLICY.AddEnumItem(new EnumItem()
            {
                EnumStr = "SUCCEED_ON_ALL", EnumValue = 2, Describe = "当全部节点都返回成功时退出"
            });
            AddEnum(SUCCESS_POLICY);

            CustomEnum FAILURE_POLICY = new CustomEnum();

            FAILURE_POLICY.EnumType = "FAILURE_POLICY";
            FAILURE_POLICY.AddEnumItem(new EnumItem()
            {
                EnumStr = "FAIL_ON_ONE", EnumValue = 1, Describe = "当某一个节点返回失败时退出;"
            });
            FAILURE_POLICY.AddEnumItem(new EnumItem()
            {
                EnumStr = "FAIL_ON_ALL", EnumValue = 2, Describe = "当全部节点都返回失败时退出"
            });
            AddEnum(FAILURE_POLICY);

            CustomEnum ParameterType = new CustomEnum();

            ParameterType.EnumType = "ParameterType";
            ParameterType.AddEnumItem(new EnumItem()
            {
                EnumStr = "Agent", EnumValue = 1, Describe = "在Agent定义的参数"
            });
            ParameterType.AddEnumItem(new EnumItem()
            {
                EnumStr = "Global", EnumValue = 2, Describe = "全局定义的参数"
            });
            AddEnum(ParameterType);

            CustomEnum CompareType = new CustomEnum();

            CompareType.EnumType = "CompareType";
            CompareType.AddEnumItem(new EnumItem()
            {
                EnumStr = "Less", EnumValue = 1, Describe = "<"
            });
            CompareType.AddEnumItem(new EnumItem()
            {
                EnumStr = "Greater", EnumValue = 2, Describe = ">"
            });
            CompareType.AddEnumItem(new EnumItem()
            {
                EnumStr = "LEqual", EnumValue = 3, Describe = "<="
            });
            CompareType.AddEnumItem(new EnumItem()
            {
                EnumStr = "GEqual", EnumValue = 4, Describe = ">="
            });
            CompareType.AddEnumItem(new EnumItem()
            {
                EnumStr = "Equal", EnumValue = 5, Describe = "=="
            });
            CompareType.AddEnumItem(new EnumItem()
            {
                EnumStr = "NotEqual", EnumValue = 6, Describe = "!="
            });
            AddEnum(CompareType);
        }