public override void InitContextMenu() { base.InitContextMenu(); PredicateMenuList.Clear(); MainViewModel.Resource.ConditionPrototypeList.ForEach(v => { var command = new CommonCommand((obj) => { var o = v.CreateInstance() as ICondition; o.GetInstrumentList = () => { var l = new List <IInstrument>(); foreach (var inst in InstrumentList) { l.Add(inst); } return(l); }; o.AnalyseDataSource = CurrentDataSource; var vm = new ConditionViewModel() { TargetObject = o }; PredicateList.Add(vm); TargetProject.PredicateList.Add(o); }); command.Name = "New " + v.Name; command.Memo = v.Memo; command.ForegroundBrush = new SolidColorBrush(Colors.Blue); PredicateMenuList.Add(command); }); var pcommand = new CommonCommand((obj) => { if (CurrentPredicate != null && PredicateList.Contains(CurrentPredicate)) { PredicateList.Remove(CurrentPredicate); } }); pcommand.Name = "Delete Predicate"; pcommand.Memo = "Delete Current Predicate"; pcommand.ForegroundBrush = new SolidColorBrush(Colors.Orange); PredicateMenuList.Add(pcommand); }
public bool Contains(Word word) { if (subjects != null) { if (subjects.Contains(word)) { return(true); } } if (predicates != null) { if (predicates.Contains(word)) { return(true); } } return(false); }