コード例 #1
0
        public override void Remove(RuleViewModelBase rule, bool showOnSnackbar = true)
        {
            var index = _rules.IndexOf(rule);

            if (index == -1)
            {
                return;
            }

            _model.Rules.Remove(rule.Rule);
            _rules.Remove(rule);

            if (!showOnSnackbar)
            {
                return;
            }

            _eventAggregator.PublishOnCurrentThread(new SnackbarMessage()
            {
                Action = smq => smq.Enqueue($"Rule \"{rule.Name}\" removed", "UNDO",
                                            () =>
                {
                    _rules.Insert(index, rule);
                    _model.Rules.Add(rule.Rule);
                }, true)
            });
        }
コード例 #2
0
ファイル: Helpers.cs プロジェクト: szogun1987/analog
 public static bool IsParentOf(this RuleParentViewModelBase ruleParent, RuleViewModelBase rule)
 {
     return(ruleParent.TraverseRulesTree()
            .Any(r => r == rule));
 }
コード例 #3
0
 public abstract void Add(RuleViewModelBase ruleViewModel);
コード例 #4
0
 public virtual void Save(RuleViewModelBase rule)
 {
     _eventAggregator.PublishOnCurrentThread(new SaveRuleMessage(rule.Rule));
 }
コード例 #5
0
 public abstract void Remove(RuleViewModelBase rule, bool showOnSnackbar = true);
コード例 #6
0
 public override void Add(RuleViewModelBase ruleViewModel)
 {
     _rules.Add(ruleViewModel);
     _model.Rules.Add(ruleViewModel.Rule);
 }