private void BtnModifyButton_Click(object sender, EventArgs e)
        {
            Enumerations.EnumerationItem item = GetCurrentSelectedItem();
            if (item == null)
            {
                return;
            }
            EditEnumForm dlg = new EditEnumForm(enumName, EditEnumForm.eFormType.Edit, item);

            do
            {
                DialogResult result = dlg.ShowDialog(this);
                if (result != DialogResult.OK)
                {
                    return;
                }
                if (IsUnique(dlg.enumValue, item))
                {
                    UpdateItem(dlg.enumValue, item);
                    return;
                }
                if (MessageBox.Show(Lang.Error_EnumMustBeUnique, Lang.Error, MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation) != DialogResult.OK)
                {
                    return;
                }
            }while (true);
        }
 private void BtnDeleteButton_Click(object sender, EventArgs e)
 {
     Enumerations.EnumerationItem item = GetCurrentSelectedItem();
     if (item == null)
     {
         return;
     }
     DeleteItem(item);
 }
 public void EnumerationListView_RetrieveVirtualItem(object Sender, RetrieveVirtualItemEventArgs e)
 {
     if (e.ItemIndex < 0 || e.ItemIndex >= enumeration.Count)
     {
         return;
     }
     Enumerations.EnumerationItem item = enumeration[e.ItemIndex];
     e.Item      = new ListViewItem();
     e.Item.Text = item.Id.ToString();
     e.Item.SubItems.Add(item.Name);
     e.Item.SubItems.Add(item.IsDefault.ToString());
 }
 private void UpdateItem(Enumerations.EnumerationItem newItem, Enumerations.EnumerationItem original)
 {
     foreach (Enumerations.EnumerationItem item in enumeration)
     {
         if (original == item)
         {
             item.Id        = newItem.Id;
             item.Name      = newItem.Name;
             item.IsDefault = newItem.IsDefault;
             EnumerationListView.Invalidate();
             return;
         }
     }
 }
        private string enumName; // the name of the enumeration set.

        public EditEnumForm(string enumName, eFormType type, Enumerations.EnumerationItem enumValue)
        {
            InitializeComponent();
            this.type      = type;
            this.enumName  = enumName;
            this.enumValue = enumValue;

            if (this.type == eFormType.Edit)
            {
                EnumIdTextBox.Text            = enumValue.Id.ToString();
                EnumNameTextBox.Text          = enumValue.Name;
                EnumIsDefaultCheckBox.Checked = enumValue.IsDefault;
            }
            LoadLanguage();
        }
 private bool IsUnique(Enumerations.EnumerationItem item, Enumerations.EnumerationItem itemOri)
 {
     foreach (Enumerations.EnumerationItem real in enumeration)
     {
         if (itemOri != null)
         {
             if (itemOri == real)
             {
                 continue;
             }
         }
         if (real.Id == item.Id ||
             String.Compare(item.Name, item.Name, true) == 0 ||
             real.IsDefault == item.IsDefault)
         {
             return(false);
         }
     }
     return(true);
 }
 private void DeleteItem(Enumerations.EnumerationItem item)
 {
     enumeration.Remove(item);
     EnumerationListView.VirtualListSize = enumeration.Count;
 }
 private void AddItem(Enumerations.EnumerationItem item)
 {
     enumeration.Add(item);
     EnumerationListView.VirtualListSize = enumeration.Count;
 }
 private bool IsUnique(Enumerations.EnumerationItem item)
 {
     return(IsUnique(item, null));
 }