public IfElseStatement(IElementCreationContext context)
            : base(context)
        {
            _data = new IfElseData();

            try
            {
                if (!string.IsNullOrWhiteSpace(context.Data))
                {
                    _data = JsonConvert.DeserializeObject <IfElseData>(context.Data);
                }

                if (_data.NumberOfIfs == 0)
                {
                    _data.NumberOfIfs = 1;
                }
            }
            catch (Exception ex)
            {
                //TODO: Add this to the IElementCreationContext error/warning interface that we have yet to add.
                Console.WriteLine(ex);
            }

            for (var index = 0; index < _data.NumberOfIfs; index++)
            {
                AddIfClause(index);
            }

            if (_data.IncludeElse)
            {
                AddElse();
            }

            //Add actions for adding / removing else clauses.
            this.AddAction("Add 'Else If'", AddIfClause);
            this.AddAction("Remove last 'Else If'", RemoveLastIf, CanRemoveLastIf);
            this.AddAction("Add 'Else'", AddElse, CanAddElse);
            this.AddAction("Remove 'Else'", RemoveElse, CanRemoveElse);
        }
Exemple #2
0
        public IfElseStatement(IElementCreationContext context) 
            : base(context)
        {
            _data = new IfElseData();

            try
            {
                if (!string.IsNullOrWhiteSpace(context.Data))
                {
                    _data = JsonConvert.DeserializeObject<IfElseData>(context.Data);
                }

                if (_data.NumberOfIfs == 0)
                {
                    _data.NumberOfIfs = 1;
                }
            }
            catch (Exception ex)
            {
                //TODO: Add this to the IElementCreationContext error/warning interface that we have yet to add.
                Console.WriteLine(ex);
            }

            for (var index = 0; index < _data.NumberOfIfs; index++)
            {
                AddIfClause(index);
            }

            if (_data.IncludeElse)
            {
               AddElse();
            }

            //Add actions for adding / removing else clauses.
            this.AddAction("Add 'Else If'", AddIfClause);
            this.AddAction("Remove last 'Else If'", RemoveLastIf, CanRemoveLastIf);
            this.AddAction("Add 'Else'", AddElse, CanAddElse);
            this.AddAction("Remove 'Else'", RemoveElse, CanRemoveElse);
        }