private void okButton_Click(object sender, RoutedEventArgs e) { for (int i = SourceCollection.Count - 1; i >= 0; i--) { object o = SourceCollection[i]; if (!SourceCollectionEdited.Contains(o)) { SourceCollection.RemoveAt(i); } } foreach (object o in SourceCollectionEdited) { if (!SourceCollection.Contains(o)) { SourceCollection.Add(o); } } for (int i = TargetCollection.Count - 1; i >= 0; i--) { object o = TargetCollection[i]; if (!TargetCollectionEdited.Contains(o)) { TargetCollection.RemoveAt(i); } } foreach (object o in TargetCollectionEdited) { if (!TargetCollection.Contains(o)) { TargetCollection.Add(o); } } cancelButton_Click(sender, e); }
private void ItemParameterChanged(object sender, EventArgs e) { if (TargetCollection == null || targetCollection.Count < 1 || Index < 0 || Index >= targetCollection.Count) { return; } MASM_FormattingItem updatedValues = TargetCollection[Index]; updatedValues.enable = EnableToggle.Checked; updatedValues.prefix = PrefixField.Text; updatedValues.postfix = PostfixField.Text; updatedValues.property = PropertyField.Text; updatedValues.mode = ModeField.ToEnum(MASM_FormattingItem.ItemMode.Property); updatedValues.operationValue = ParseFloat(ValueField.Text); updatedValues.operationType = OperationField.ToEnum(MASM_FormattingItem.OperationType.None); updatedValues.targetData = TargetField.ToEnum(MASM_FormattingItem.TargetData.PropertyValue); updatedValues.roundMode = RoundField.ToEnum(MASM_FormattingItem.RoundingType.None); updatedValues.modulo = ModuloToggle.Checked; updatedValues.outFormat = OutFormatField.Text; if (TargetCollection[Index] != updatedValues) { TargetCollection[Index] = updatedValues; } if (sender == CopyButton) { TargetCollection.Insert(index + 1, TargetCollection[Index]); } if (sender == MoveUpButton && index - 1 > -1) { TargetCollection.Move(index, index - 1); } if (sender == MoveDownButton && index + 1 < TargetCollection.Count) { TargetCollection.Move(index, index + 1); } if (sender == RemoveButton && MessageBox.Show("Are you sure to delete item " + index + "?", "Confirm Delete!", MessageBoxButtons.OKCancel) == DialogResult.OK) { TargetCollection.RemoveAt(index); return; } }