Exemple #1
0
        public static node_info show_modal(node_info ni, NodeGenerator.NodeGenerator ng)
        {
            node_def nd = new node_def(ni, ng);

            nd.ShowDialog();
            return(sni);
        }
 public GlobalRenamer(ListBox nds, NodeGenerator.NodeGenerator ngen)
 {
     InitializeComponent();
     nodes    = nds.Items.Cast <node_info>();
     list_box = nds;
     node_gen = ngen;
 }
 public GlobalRenamer(ListBox nds, NodeGenerator.NodeGenerator ngen)
 {
     InitializeComponent();
     nodes = nds.Items.Cast<node_info>();
     list_box = nds;
     node_gen = ngen;
 }
		public simple_node_editor(simple_element se,node_info ninf,NodeGenerator.NodeGenerator _ng)
		{
			InitializeComponent();
			if (se!=null)
			{
				extended_simple_element ese=se as extended_simple_element;
				if (ese!=null)
				{
					this.se=ese;
				}
				else
				{
					this.se=new extended_simple_element();
					this.se.val_field_type_name=se.val_field_type_name;
					this.se.field_name=se.field_name;
					this.se.field_type=se.field_type;
				}
			}
			if (this.se==null)
			{
				this.se=new extended_simple_element();
			}
			this.ninf=ninf;
			this.ng=_ng;

			set_element();
		}
Exemple #5
0
        public simple_node_editor(simple_element se, node_info ninf, NodeGenerator.NodeGenerator _ng)
        {
            InitializeComponent();
            if (se != null)
            {
                extended_simple_element ese = se as extended_simple_element;
                if (ese != null)
                {
                    this.se = ese;
                }
                else
                {
                    this.se = new extended_simple_element();
                    this.se.val_field_type_name = se.val_field_type_name;
                    this.se.field_name          = se.field_name;
                    this.se.field_type          = se.field_type;
                }
            }
            if (this.se == null)
            {
                this.se = new extended_simple_element();
            }
            this.ninf = ninf;
            this.ng   = _ng;

            set_element();
        }
Exemple #6
0
        public static simple_element edit_element(simple_element se, node_info ninf, NodeGenerator.NodeGenerator _ng)
        {
            simple_node_editor sne = new simple_node_editor(se, ninf, _ng);

            sne.ShowDialog();
            sse = sne.se;
            return(sse);
        }
 public static method_info edit_element(method_info nm, node_info ninf, NodeGenerator.NodeGenerator _ng)
 {
     method_editor me = new method_editor(nm, ninf, _ng);
     if (me.ShowDialog() == DialogResult.OK && !string.IsNullOrEmpty(me.nm.method_text))
         snm = me.nm;
     else snm = null;
     return snm;
 }
Exemple #8
0
        public static node_field_info edit_field(node_field_info nfi, NodeGenerator.NodeGenerator ng, node_info this_node)
        {
            subnode_editor se = new subnode_editor(ng, nfi, this_node);

            if (se.ShowDialog() == DialogResult.Cancel)
            {
                snfi.field_name = "";
            }
            return(snfi);
        }
Exemple #9
0
        public static simple_element edit_element(simple_element se, node_info ninf, NodeGenerator.NodeGenerator _ng)
        {
            simple_node_editor sne = new simple_node_editor(se, ninf, _ng);
            var tmp = sne.se.field_name;

            if (sne.ShowDialog() != DialogResult.OK)
            {
                sne.se.field_name = tmp;
            }
            sse = sne.se;
            return(sse);
        }
Exemple #10
0
        public static node_field_info edit_field(node_field_info nfi, NodeGenerator.NodeGenerator ng, node_info this_node)
        {
            subnode_editor se = new subnode_editor(ng, nfi, this_node);

            se.ShowDialog();

            /*if (se.ShowDialog()==DialogResult.OK)
             * {
             *      return snfi;
             * }*/
            return(snfi);
        }
        public method_editor(method_info nm, node_info ninf, NodeGenerator.NodeGenerator ng)
		{
			InitializeComponent();
            if (nm != null)
                this.nm = nm;
            else this.nm = new method_info();

            this.ninf=ninf;
			this.ng=ng;

			set_element();
		}
Exemple #12
0
        private void button1_Click(object sender, System.EventArgs e)
        {
            NodeGenerator.NodeGenerator ng = new NodeGenerator.NodeGenerator();

            ng.factory_name   = "nodes_factory";
            ng.file_name      = "f1.cs";
            ng.namespace_name = "fnm";
            ng.visitor_interface_file_name = "vis.cs";

            node_info nb = new node_info();

            nb.node_name = "base_node";
            node_info n1 = new node_info();

            n1.node_name  = "if_node";
            n1.base_class = nb;
            node_info n2 = new node_info();

            n2.node_name  = "condition";
            n2.base_class = nb;
            node_info n3 = new node_info();

            n3.node_name  = "body";
            n3.base_class = n2;

            node_field_info nf11 = new node_field_info();

            nf11.field_name = "first";
            nf11.field_type = n2;
            n1.add_subnode(nf11);

            node_field_info nf12 = new node_field_info();

            nf12.field_name = "second";
            nf12.field_type = n3;
            n1.add_subnode(nf12);

            node_field_info nf21 = new node_field_info();

            nf21.field_name = "third";
            nf21.field_type = n1;
            n2.add_subnode(nf21);

            ng.add_node(nb);
            ng.add_node(n1);
            ng.add_node(n2);
            ng.add_node(n3);

            ng.generate_code();
            ng.generate_visitor_interface_code();
            ng.generate_visitor_template("vis1", "vis_templ.cs");
        }
        public NodeGeneratorData(NodeGenerator.NodeGenerator nodeGenerator)
        {
            foreach (var node in nodeGenerator.all_nodes.Cast <node_info>())
            {
                SyntaxNodes.Add(new SyntaxNode(node));
            }

            Settings = new Settings(nodeGenerator);

            TagCategories = nodeGenerator.tag_cats.Select(x => new FilterCategory(x)).ToList();

            HelpStorage = new HelpStorage(nodeGenerator.help_storage);
        }
        public static method_info edit_element(method_info nm, node_info ninf, NodeGenerator.NodeGenerator _ng)
        {
            method_editor me = new method_editor(nm, ninf, _ng);

            if (me.ShowDialog() == DialogResult.OK && !string.IsNullOrEmpty(me.nm.method_text))
            {
                snm = me.nm;
            }
            else
            {
                snm = null;
            }
            return(snm);
        }
Exemple #15
0
        private void set_nodes_information()
        {
            if (node_gen == null)
            {
                node_gen = new NodeGenerator.NodeGenerator();
            }

            nodes_list.Items.Clear();
            nodes_list.Items.AddRange(node_gen.all_nodes.ToArray());

            file_name.Text      = node_gen.file_name;
            namespace_name.Text = node_gen.namespace_name;
            factory_name.Text   = node_gen.factory_name;
            visitor_interface_file_name.Text = node_gen.visitor_interface_file_name;
        }
Exemple #16
0
 private void open_Click(object sender, System.EventArgs e)
 {
     if (openFileDialog1.ShowDialog() == DialogResult.OK)
     {
         saveFileDialog1.FileName = openFileDialog1.FileName;
         node_gen = NodeGenerator.NodeGenerator.deserialize(openFileDialog1.FileName);
         if (node_gen == null)
         {
             MessageBox.Show("Can not read nodes information from: " + openFileDialog1.FileName);
         }
         else
         {
             set_nodes_information();
         }
     }
 }
Exemple #17
0
		public node_def(node_info ni,NodeGenerator.NodeGenerator ng)
		{
			InitializeComponent();
			this.ni=ni;
			sni=ni;
			
			base_class.Items.Clear();
			base_class.Items.AddRange((object[])ng.all_nodes.ToArray(typeof(object)));

			if (this.ni==null)
			{
				this.ni=new node_info();
			}
			this.ng=ng;
			set_node_info();
		}
Exemple #18
0
        private void Form1_Load(object sender, System.EventArgs e)
        {
            try
            {
                var s = System.IO.Directory.GetCurrentDirectory() + @"\tree.nin";
                saveFileDialog1.FileName = s;

                node_gen = NodeGenerator.NodeGenerator.deserialize(s);
                set_nodes_information();
                nodes_list.SelectedIndex = 0;
            }
            catch (Exception)
            {
                MessageBox.Show("Не могу прочитать файл tree.nin");
            }
        }
Exemple #19
0
        public node_def(node_info ni, NodeGenerator.NodeGenerator ng)
        {
            InitializeComponent();
            this.ni = ni;
            sni     = ni;

            base_class.Items.Clear();
            base_class.Items.AddRange((object[])ng.all_nodes.ToArray(typeof(object)));

            if (this.ni == null)
            {
                this.ni = new node_info();
            }
            this.ng = ng;
            set_node_info();
        }
        public method_editor(method_info nm, node_info ninf, NodeGenerator.NodeGenerator ng)
        {
            InitializeComponent();
            if (nm != null)
            {
                this.nm = nm;
            }
            else
            {
                this.nm = new method_info();
            }

            this.ninf = ninf;
            this.ng   = ng;

            set_element();
        }
 public void set_contents(NodeGenerator.NodeGenerator node_gen, int init_cat)
 {
     source = node_gen.tag_cats;
     nodes = new List<node_info>();
     for (int i = 0; i < node_gen.all_nodes.Count; i++)
         nodes.Add(node_gen.all_nodes[i] as node_info);            
     categories.Items.Clear();            
     for (int i = 0; i < source.Count; i++)
     {
         categories.Items.Add(source[i].name);                
     }
     if (init_cat >= 0)
         categories.SelectedIndices.Add(init_cat);
     else if (categories.Items.Count > 0)
         categories.SelectedIndices.Add(0);
     select_category();
 }
Exemple #22
0
        private void get_nodes_information()
        {
            if (node_gen == null)
            {
                node_gen = new NodeGenerator.NodeGenerator();
            }

            node_gen.set_nodes(nodes_list.Items);

            node_gen.file_name      = file_name.Text;
            node_gen.namespace_name = namespace_name.Text;
            node_gen.factory_name   = factory_name.Text;
            node_gen.visitor_interface_file_name = visitor_interface_file_name.Text;
            node_gen.pcu_writer_file_name        = tb_pcu_writer.Text + ".cs";
            node_gen.pcu_writer_name             = tb_pcu_writer.Text;
            node_gen.pcu_reader_file_name        = tb_pcu_reader.Text + ".cs";
            node_gen.pcu_reader_file_name_h      = tb_pcu_reader.Text + ".h";
            node_gen.pcu_reader_file_name_cpp    = tb_pcu_reader.Text + ".cpp";
            node_gen.pcu_reader_name             = tb_pcu_reader.Text;
        }
Exemple #23
0
        private void get_nodes_information() // get - получить информацию из полей интерфейса и записать ее в node_gen
        {
            if (node_gen == null)
            {
                node_gen = new NodeGenerator.NodeGenerator();
            }

            node_gen.set_nodes(nodes_list.Items);

            node_gen.file_name      = file_name.Text;
            node_gen.namespace_name = namespace_name.Text;
            node_gen.factory_name   = factory_name.Text;
            node_gen.visitor_interface_file_name = visitor_interface_file_name.Text;
            node_gen.pcu_writer_file_name        = tb_pcu_writer.Text + ".cs";
            node_gen.pcu_writer_name             = tb_pcu_writer.Text;
            node_gen.pcu_reader_file_name        = tb_pcu_reader.Text + ".cs";
            node_gen.pcu_reader_file_name_h      = tb_pcu_reader.Text + ".h";
            node_gen.pcu_reader_file_name_cpp    = tb_pcu_reader.Text + ".cpp";
            node_gen.pcu_reader_name             = tb_pcu_reader.Text;
        }
Exemple #24
0
        private void set_nodes_information() // set - установить поля интерфейса по node_gen
        {
            if (node_gen == null)
            {
                node_gen = new NodeGenerator.NodeGenerator();
            }

            /*foreach (var x in node_gen.all_nodes)
             *  if ((x as node_info)._methods == null)
             *      (x as node_info)._methods = new ArrayList();
             */

            nodes_list.Items.Clear();
            nodes_list.Items.AddRange(node_gen.all_nodes.ToArray());

            file_name.Text      = node_gen.file_name;
            namespace_name.Text = node_gen.namespace_name;
            factory_name.Text   = node_gen.factory_name;
            visitor_interface_file_name.Text = node_gen.visitor_interface_file_name;
        }
 public void set_contents(NodeGenerator.NodeGenerator node_gen, int init_cat)
 {
     source = node_gen.tag_cats;
     nodes  = new List <node_info>();
     for (int i = 0; i < node_gen.all_nodes.Count; i++)
     {
         nodes.Add(node_gen.all_nodes[i] as node_info);
     }
     categories.Items.Clear();
     for (int i = 0; i < source.Count; i++)
     {
         categories.Items.Add(source[i].name);
     }
     if (init_cat >= 0)
     {
         categories.SelectedIndices.Add(init_cat);
     }
     else if (categories.Items.Count > 0)
     {
         categories.SelectedIndices.Add(0);
     }
     select_category();
 }
        public NodeGenerator.NodeGenerator ToNodeGenerator()
        {
            NodeGenerator.NodeGenerator generator = new NodeGenerator.NodeGenerator();

            var nodeNames = new Dictionary <string, node_info>();

            foreach (var node in SyntaxNodes)
            {
                nodeNames.Add(node.Name, new node_info());
            }

            foreach (var node in SyntaxNodes)
            {
                node.InitNodeInfo(nodeNames, nodeInfo: nodeNames[node.Name]);
            }

            var oldNodes = SyntaxNodes.Select(x => nodeNames[x.Name]).ToArray();

            generator.set_nodes(oldNodes);
            Settings.InitNodeGenerator(generator);
            generator.tag_cats     = TagCategories.Select(x => x.ToFilterCategory()).ToList();
            generator.help_storage = HelpStorage.ToHelpStorage();
            return(generator);
        }
		public subnode_editor(NodeGenerator.NodeGenerator ng,node_field_info nfi,node_info this_node)
		{
			InitializeComponent();
			ngen=ng;
			this.nfi=nfi;

			subnodes_types.Items.Clear();
			subnodes_types.Items.AddRange((object[])ngen.all_nodes.ToArray(typeof(object)));

			if (ngen.all_nodes.IndexOf(this_node)<0)
			{
				subnodes_types.Items.Insert(0,this_node);
			}

			if (this.nfi==null)
			{
				this.nfi=new node_field_info();
				this.nfi.field_type=(node_info)ng.all_nodes[0];
			}

			ninf=this_node;
			snfi=this.nfi;
			set_node_info();
		}
Exemple #28
0
        public subnode_editor(NodeGenerator.NodeGenerator ng, node_field_info nfi, node_info this_node)
        {
            InitializeComponent();
            ngen     = ng;
            this.nfi = nfi;

            subnodes_types.Items.Clear();
            subnodes_types.Items.AddRange((object[])ngen.all_nodes.ToArray(typeof(object)));

            if (ngen.all_nodes.IndexOf(this_node) < 0)
            {
                subnodes_types.Items.Insert(0, this_node);
            }

            if (this.nfi == null)
            {
                this.nfi            = new node_field_info();
                this.nfi.field_type = (node_info)ng.all_nodes[0];
            }

            ninf = this_node;
            snfi = this.nfi;
            set_node_info();
        }
		public static node_field_info edit_field(node_field_info nfi,NodeGenerator.NodeGenerator ng,node_info this_node)
		{
			subnode_editor se=new subnode_editor(ng,nfi,this_node);
			se.ShowDialog();
			/*if (se.ShowDialog()==DialogResult.OK)
			{
				return snfi;
			}*/
			return snfi;
		}
Exemple #30
0
		private void get_nodes_information()
		{
			if (node_gen==null)
			{
				node_gen=new NodeGenerator.NodeGenerator();
			}

			node_gen.set_nodes(nodes_list.Items);

			node_gen.file_name=file_name.Text;
			node_gen.namespace_name=namespace_name.Text;
			node_gen.factory_name=factory_name.Text;
			node_gen.visitor_interface_file_name=visitor_interface_file_name.Text;
            node_gen.pcu_writer_file_name = tb_pcu_writer.Text + ".cs";
            node_gen.pcu_writer_name = tb_pcu_writer.Text;
            node_gen.pcu_reader_file_name = tb_pcu_reader.Text + ".cs";
            node_gen.pcu_reader_file_name_h = tb_pcu_reader.Text + ".h";
            node_gen.pcu_reader_file_name_cpp = tb_pcu_reader.Text + ".cpp";
            node_gen.pcu_reader_name = tb_pcu_reader.Text;
		}
Exemple #31
0
        private void newToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (CloseCurrentFile() == CloseResult.NotClosed)
                return;

            node_gen = null;
            set_nodes_information();
        }
Exemple #32
0
		private void Form1_Load(object sender, System.EventArgs e)
		{
            try
            {
                var s = System.IO.Directory.GetCurrentDirectory()+@"\tree.nin";
                saveFileDialog1.FileName = s;

                node_gen = NodeGenerator.NodeGenerator.deserialize(s);
                set_nodes_information();
                nodes_list.SelectedIndex = 0;
            }
            catch(Exception)
            {
                MessageBox.Show("Не могу прочитать файл tree.nin");
            }
        }
Exemple #33
0
		private void button1_Click(object sender, System.EventArgs e)
		{
			NodeGenerator.NodeGenerator ng=new NodeGenerator.NodeGenerator();

			ng.factory_name="nodes_factory";
			ng.file_name="f1.cs";
			ng.namespace_name="fnm";
			ng.visitor_interface_file_name="vis.cs";

			node_info nb=new node_info();
			nb.node_name="base_node";
			node_info n1=new node_info();
			n1.node_name="if_node";
			n1.base_class=nb;
			node_info n2=new node_info();
			n2.node_name="condition";
			n2.base_class=nb;
			node_info n3=new node_info();
			n3.node_name="body";
			n3.base_class=n2;
			
			node_field_info nf11=new node_field_info();
			nf11.field_name="first";
			nf11.field_type=n2;
			n1.add_subnode(nf11);

			node_field_info nf12=new node_field_info();
			nf12.field_name="second";
			nf12.field_type=n3;
			n1.add_subnode(nf12);

			node_field_info nf21=new node_field_info();
			nf21.field_name="third";
			nf21.field_type=n1;
			n2.add_subnode(nf21);

			ng.add_node(nb);
			ng.add_node(n1);
			ng.add_node(n2);
			ng.add_node(n3);

			ng.generate_code();
			ng.generate_visitor_interface_code();
			ng.generate_visitor_template("vis1","vis_templ.cs");

		}
Exemple #34
0
        private void set_nodes_information() // set - установить поля интерфейса по node_gen
		{
			if (node_gen==null)
			{
				node_gen=new NodeGenerator.NodeGenerator();
			}

            /*foreach (var x in node_gen.all_nodes)
                if ((x as node_info)._methods == null)
                    (x as node_info)._methods = new ArrayList();
             */

			nodes_list.Items.Clear();
			nodes_list.Items.AddRange(node_gen.all_nodes.ToArray());

			file_name.Text=node_gen.file_name;
			namespace_name.Text=node_gen.namespace_name;
			factory_name.Text=node_gen.factory_name;
			visitor_interface_file_name.Text=node_gen.visitor_interface_file_name;

		}
Exemple #35
0
        private void get_nodes_information() // get - получить информацию из полей интерфейса и записать ее в node_gen
		{
			if (node_gen==null)
			{
				node_gen=new NodeGenerator.NodeGenerator();
			}

			node_gen.set_nodes(nodes_list.Items);

			node_gen.file_name=file_name.Text;
			node_gen.namespace_name=namespace_name.Text;
			node_gen.factory_name=factory_name.Text;
			node_gen.visitor_interface_file_name=visitor_interface_file_name.Text;
            node_gen.pcu_writer_file_name = tb_pcu_writer.Text + ".cs";
            node_gen.pcu_writer_name = tb_pcu_writer.Text;
            node_gen.pcu_reader_file_name = tb_pcu_reader.Text + ".cs";
            node_gen.pcu_reader_file_name_h = tb_pcu_reader.Text + ".h";
            node_gen.pcu_reader_file_name_cpp = tb_pcu_reader.Text + ".cpp";
            node_gen.pcu_reader_name = tb_pcu_reader.Text;
		}
Exemple #36
0
		private void open_Click(object sender, System.EventArgs e)
		{
			if (openFileDialog1.ShowDialog()==DialogResult.OK)
			{
				saveFileDialog1.FileName=openFileDialog1.FileName;
				node_gen=NodeGenerator.NodeGenerator.deserialize(openFileDialog1.FileName);
				if (node_gen==null)
				{
					MessageBox.Show("Can not read nodes information from: "+openFileDialog1.FileName);
				}
				else
				{
					set_nodes_information();
				}
			}
		}
Exemple #37
0
		private void set_nodes_information()
		{
			if (node_gen==null)
			{
				node_gen=new NodeGenerator.NodeGenerator();
			}

			nodes_list.Items.Clear();
			nodes_list.Items.AddRange(node_gen.all_nodes.ToArray());

			file_name.Text=node_gen.file_name;
			namespace_name.Text=node_gen.namespace_name;
			factory_name.Text=node_gen.factory_name;
			visitor_interface_file_name.Text=node_gen.visitor_interface_file_name;

		}
Exemple #38
0
        private void set_nodes_information() // set - установить поля интерфейса по node_gen
        {
            if (node_gen == null)
            {
                node_gen = new NodeGenerator.NodeGenerator();
            }

            reload_nodes();

            fillInTagCategories();

            creation_mode = false;
            selected_tag_cat = -1;
            selected_node = null;
            selected_node_index = -1;
            selected_filter_cat = -1;
            is_filter_enabled = false;

            if (nodes_list.Items.Count > 0) { new_selected_node = (nodes_list.Items[0] as node_info); nodes_list.SelectedIndex = 0; }
            else
            {
                node_name.Text = "";
                base_class.Items.Clear();
                base_class.Text = "";
                scintilla1.Text = "";
                help_context.Text = "";
            }
        }
Exemple #39
0
        private void get_nodes_information() // get - получить информацию из полей интерфейса и записать ее в node_gen
        {
            if (node_gen == null)
            {
                node_gen = new NodeGenerator.NodeGenerator();
            }


            node_gen.set_nodes(nodes_list.Items);
        }
Exemple #40
0
 private void loadFile(string fname)
 {
     if (!File.Exists(fname))
     {
         MessageBox.Show("The file '" + fname + "' does NOT exist");
         return;
     }
     node_gen = NodeGenerator.NodeGenerator.deserialize(fname);
     if (node_gen == null)
     {
         MessageBox.Show("Can not read nodes information from: " + fname);
     }
     else
     {
         set_nodes_information();
         this.Text = Path.GetFileNameWithoutExtension(fname) + " - " + default_caption;
     }
 }
 public FilterTagsCollection(NodeGenerator.NodeGenerator node_gen, int init_cat)
 {
     InitializeComponent();
     set_contents(node_gen, init_cat);
 }
		public static node_field_info edit_field(node_field_info nfi,NodeGenerator.NodeGenerator ng,node_info this_node)
		{
			subnode_editor se = new subnode_editor(ng,nfi,this_node);
			if (se.ShowDialog() == DialogResult.Cancel)
			{
                snfi.field_name = "";
			}
			return snfi;
		}
Exemple #43
0
		public static node_info show_modal(node_info ni,NodeGenerator.NodeGenerator ng)
		{
			node_def nd=new node_def(ni,ng);
			nd.ShowDialog();
			return sni;
		}
		public static simple_element edit_element(simple_element se,node_info ninf,NodeGenerator.NodeGenerator _ng)
		{
			simple_node_editor sne=new simple_node_editor(se,ninf,_ng);
            var tmp = sne.se.field_name;
            if (sne.ShowDialog() != DialogResult.OK)
                sne.se.field_name = tmp;
			sse=sne.se;
			return sse;
		}
		public static simple_element edit_element(simple_element se,node_info ninf,NodeGenerator.NodeGenerator _ng)
		{
			simple_node_editor sne=new simple_node_editor(se,ninf,_ng);
			sne.ShowDialog();
			sse=sne.se;
			return sse;
		}
 public FilterTagsCollection(NodeGenerator.NodeGenerator node_gen, int init_cat)
 {
     InitializeComponent();
     set_contents(node_gen, init_cat);
 }