private void CollectionChanged(ObservableList <object> collection, NodeViewModel node, NotifyCollectionChangedEventArgs e) { if (updatingCollection) { return; } updatingCollection = true; var newEnumValue = EnumExtensions.GetEnum(node.Type, collection.Cast <Enum>()); if (e.OldItems != null) { foreach (var oldItem in e.OldItems) { newEnumValue = (Enum)Enum.ToObject(node.Type, System.Convert.ToUInt64(newEnumValue) & ~System.Convert.ToUInt64(oldItem)); } } if (e.NewItems != null) { foreach (var oldItem in e.NewItems) { newEnumValue = (Enum)Enum.ToObject(node.Type, System.Convert.ToUInt64(newEnumValue) | System.Convert.ToUInt64(oldItem)); } } var flags = newEnumValue.GetAllFlags().ToList(); foreach (var item in collection.ToList()) { if (!flags.Contains(item)) { collection.Remove(item); } } foreach (var flag in flags) { if (!collection.Contains(flag)) { collection.Add(flag); } } if (!Equals(node.NodeValue, EnumExtensions.GetEnum(node.Type, collection.Cast <Enum>()))) { node.NodeValue = EnumExtensions.GetEnum(node.Type, collection.Cast <Enum>()); } updatingCollection = false; }
private void okBtn_Click(object sender, RoutedEventArgs e) { OKButtonClicked = true; mActivity.MappedErrorHandlers.Clear(); mActivity.MappedErrorHandlers = new ObservableList <Guid>(lstCurrentBusinessFlowErrorHandler.Cast <ErrorHandler>().Where(x => x.IsSelected).Select(x => x.Guid)); _pageGenericWin.Close(); }
public override List <ObservableList <ActInputValue> > GetInputValueListForVEProcessing() { List <ObservableList <ActInputValue> > list = new List <ObservableList <ActInputValue> >(); List <ActInputValue> AIVList = APIModelParamsValue.Cast <ActInputValue>().ToList(); list.Add(General.ConvertListToObservableList(AIVList)); return(list); }
public static bool CheckForItemWithDuplicateName(UploadItemSelection selectedItem) { List <RepositoryItemBase> existingRepoItems = new List <RepositoryItemBase>(); ObservableList <Activity> activities = WorkSpace.Instance.SolutionRepository.GetAllRepositoryItems <Activity>(); ObservableList <Act> SharedActions = WorkSpace.Instance.SolutionRepository.GetAllRepositoryItems <Act>(); ObservableList <VariableBase> variables = WorkSpace.Instance.SolutionRepository.GetAllRepositoryItems <VariableBase>(); ObservableList <ActivitiesGroup> activitiesGroup = WorkSpace.Instance.SolutionRepository.GetAllRepositoryItems <ActivitiesGroup>(); if (selectedItem.UsageItem is ActivitiesGroup) { existingRepoItems = activitiesGroup.Cast <RepositoryItemBase>().ToList(); } else if (selectedItem.UsageItem is Activity) { existingRepoItems = activities.Cast <RepositoryItemBase>().ToList(); } else if (selectedItem.UsageItem is Act) { existingRepoItems = SharedActions.Cast <RepositoryItemBase>().ToList(); } else if (selectedItem.UsageItem is VariableBase) { existingRepoItems = variables.Cast <RepositoryItemBase>().ToList(); } if (selectedItem.ItemUploadType == UploadItemSelection.eItemUploadType.Overwrite) { existingRepoItems.Remove(selectedItem.ExistingItem); } foreach (object o in existingRepoItems) { if (((RepositoryItemBase)o).GetNameForFileName() == selectedItem.ItemName) { return(true); } } return(false); }