private void AddStatement()
        {
            var statementDataList = new List<StatementData>();

            var statementVm = new StatementVm3(statementDataList, _avalibleSignals);
            var statementView = new Views.StatementWindow3();
            statementView.DataContext = statementVm;
            statementView.ShowDialog();

            if (statementVm.VALID_DATA_FLAG)
            {
                if (statementDataList.Count > 1)
                {
                    _statement = new Statement.StatementCollection();
                    foreach (StatementData statementdata in statementDataList)
                    {
                        _statement.
                    }
                }
            }
            else
            {
                MessageBoxResult msgBox = MessageBox.Show("Statement creaton canceled");
            }
        }
        public TriggerForkedStatementData(IEnumerable<Signal> avalibleSignals)
        {
            _statement = new Statement.Equals(new Signal { Name = "A1" }, 0);

            _addStatementCommand = new DelegateCommand<string>(
                  (s) => { AddStatement(); }, //Execute
                  (s) => { return true; } //CanExecute
                  );
        }
        private void AddStatement()
        {
            var statementDataList = new List<StatementData>();

            var statementVm = new StatementVm3(statementDataList, _avalibleSignals);
            var statementView = new Views.StatementWindow3();
            statementView.DataContext = statementVm;
            statementView.ShowDialog();

            if (statementVm.VALID_DATA_FLAG)
            {
                if (statementDataList.Count > 1)
                {
                    var statement = new Statement.StatementCollection();
                    foreach (StatementData statementdata in statementDataList)
                    {
                        switch (statementdata.AlgebraOperator)
                        {
                            case "Or":
                                statement.AddStatement(CreateStatement(statementdata), LogialAnalyzerTrigger.Statement.LogicalOperators.Or);
                                break;
                            case "And":
                                statement.AddStatement(CreateStatement(statementdata), LogialAnalyzerTrigger.Statement.LogicalOperators.And);
                                break;
                            default:
                                statement.AddStatement(CreateStatement(statementdata), LogialAnalyzerTrigger.Statement.LogicalOperators.First);
                                break;
                        }

                    }
                    _statement = statement;
                }
                else
                {
                    _statement = CreateStatement(statementDataList.First());
                }
            }
            else
            {
                MessageBoxResult msgBox = MessageBox.Show("Statement creaton canceled");
            }
        }