Beispiel #1
0
            public Language(string _name, string _lineChar, List <string> _keywords, arrangement _setup)
            {
                name     = _name;
                lineChar = _lineChar;

                keywords = _keywords;

                setup = _setup;
            }
Beispiel #2
0
        public void Start()
        {
            //TODO: For and Foreach Loops & cases
            //TODO: Spaces on Ifs and functions

            //TODO: add names and stars when edited

            //TODO: over prepared
            //TODO: VB

            #region Setup

            List <string> cSharpWords = new List <string>
            {
                "if", "for", "foreach", "Char", "string", "int", "", "as", "", "", "void", "", "", "}", "=", "=", "if", "while", "class", "else", "true", "false", "do"
            };

            List <string> pseudoCodeWords = new List <string>
            {
                "IF", "FOR", "FOREACH", "CHAR", "STRING", "INT", "DEFINE", "AS", "SUBROUTINE", "SUBROUTINE", "VOID", "DO", "THEN", "END", "TO", "TO", "IF", "WHILE", "CLASS", "ELSE", "TRUE", "FALSE", "DO"
            };                                                                                                                                                                                      // redo

            List <string> cFlatKeywords = new List <string>
            {
                "If", "For", "Foreach", "Char", "String", "Int", "Def", "As", "Function", "Sub", "Void", "", "", "End", "ASG", "VAL", "If", "While", "Class", "Else", "True", "False", "Do"
            };

            arrangement cSharpSetup     = new arrangement("{0} void {1} {2} {", "{0} {3} {1} {2} {", "{0} class {1} {", "{0} {1};", "{0} = {1};", "{0} {1} = {2};", "if ( {0} ) {", "while ( {0} ) {", "{0} {1} {2};", "{0} {1} {2} = {3};", "void {0} {1} {", "{2} {0} {1} {", "class {0}", "}");
            arrangement pseudoCodeSetup = new arrangement("{0} SUBROUTINE {1} {2}", "{0} {3} SUBROUTINE {1} {2}", "{0} CLASS {1}", "DEFINE {1} AS {0}", "SET {0} TO {1}", "DEFINE {1} AS {0} = {2}", "IF {0} THEN", "WHILE {0} DO", "DEFINE {2} AS {0} {1}", "DEFINE {2} AS {0} {1} = {3}", "SUBROUTINE {0} {1}", "{2} SUBROUTINE {0} {1}", "CLASS {0}", "END {0}");
            arrangement cFlatSetup      = new arrangement("{0} Sub {1} {2} NRS", "{0} Function {1} {2} RT {3} FS", "{0} Class {1} CP", "Def {0} {1}", "{0} VAL {1}", "Def {0} {1} ASG {2}", "If {0} AGO", "While {0} BEG", "{0} Def {1} {2}", "{0} Def {1} {2} ASG {3}", "Sub {0} {1} NRS", "Function {0} {1} RT {2} FS", "Class {0} CP", "End {0}");

            #endregion

            Cs         = new Language("C#", ";", cSharpWords, cSharpSetup);
            PseudoCode = new Language("PseudoCode", "", pseudoCodeWords, pseudoCodeSetup);
            Cb         = new Language("C flat", "", cFlatKeywords, cFlatSetup);

            languages.AddRange(new List <Language> {
                PseudoCode, Cs, Cb
            });

            foreach (Language lang in languages)
            {
                fromComboBox.Items.Add(lang.name);
                toComboBox.Items.Add(lang.name);
            }

            // 0 and 1

            fromComboBox.SelectedIndex = 0;
            toComboBox.SelectedIndex   = 1;
        }