/// <param name="type">The type of step.</param>
        /// <returns></returns>
        protected IStep getStep(StepsType type)
        {
            if (steps.ContainsKey(type))
            {
                return(steps[type]);
            }

            switch (type)
            {
            case StepsType.Gen: {
                steps[type] = new StepGen();
                return(steps[type]);
            }

            case StepsType.Struct: {
                steps[type] = new StepStruct(new MSBuild.Parser(env))
                {
                    fnumber = StepStruct.NumberType.NativeStruct
                };
                return(steps[type]);
            }

            case StepsType.DirectRepl: {
                steps[type] = new StepRepl();
                return(steps[type]);
            }

            case StepsType.CfgData: {
                steps[type] = new StepCfgData();
                return(steps[type]);
            }

            case StepsType.Fields: {
                steps[type] = new StepFields();
                return(steps[type]);
            }

            case StepsType.Final:
            {
                steps[type] = new StepFinal(this);
                return(steps[type]);
            }
            }
            throw new NotFoundException("getStep: the type - `{0}` is not found.", type);
        }
示例#2
0
        /// <param name="type">The type of step.</param>
        /// <returns></returns>
        protected IStep getStep(StepsType type)
        {
            if(steps.ContainsKey(type)) {
                return steps[type];
            }

            switch(type)
            {
                case StepsType.Gen: {
                    steps[type] = new StepGen();
                    return steps[type];
                }
                case StepsType.Struct: {
                    steps[type] = new StepStruct(new MSBuild.Parser(env)) {
                        fnumber = StepStruct.NumberType.NativeStruct
                    };
                    return steps[type];
                }
                case StepsType.DirectRepl: {
                    steps[type] = new StepRepl();
                    return steps[type];
                }
                case StepsType.CfgData: {
                    steps[type] = new StepCfgData();
                    return steps[type];
                }
                case StepsType.Fields: {
                    steps[type] = new StepFields();
                    return steps[type];
                }
                case StepsType.Final:
                {
                    steps[type] = new StepFinal(this);
                    return steps[type];
                }
            }
            throw new NotFoundException("getStep: the type - `{0}` is not found.", type);
        }
示例#3
0
 private void save(StepGen s)
 {
     if(radioGenCSharpStruct.Checked) {
         s.gtype = GenType.CSharpStruct;
     }
     else if(radioGenCppStruct.Checked) {
         s.gtype = GenType.CppStruct;
     }
     else if(radioGenCppDefine.Checked) {
         s.gtype = GenType.CppDefinitions;
     }
     else if(radioGenDirect.Checked) {
         s.gtype = GenType.Direct;
     }
 }
示例#4
0
 private void render(StepGen s)
 {
     switch(s.gtype)
     {
         case GenType.CSharpStruct: {
             radioGenCSharpStruct.Checked = true;
             return;
         }
         case GenType.CppStruct: {
             radioGenCppStruct.Checked = true;
             return;
         }
         case GenType.CppDefinitions: {
             radioGenCppDefine.Checked = true;
             return;
         }
         case GenType.Direct: {
             radioGenDirect.Checked = true;
             return;
         }
     }
 }