Exemple #1
0
        private void projectTreeview_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
        {
            using (new Wait())
            {
                if (e.Node is TemplateTreeNode)
                {
                    TemplateTreeNode node = (TemplateTreeNode)e.Node;

                    if (TemplateTabPages.ContainsKey(node.Template))
                    {
                        documentsTabControl.SelectedTab = TemplateTabPages[node.Template];
                    }
                    else
                    {
                        TabPage        tabPage = new TabPage(Path.GetFileName(node.Template.XsltHintPath));
                        TemplateEditor editor  = null;

                        try
                        {
                            editor = new TemplateEditor(node.Template);
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show("An error occurred while loading the template: " + ex.Message, "Template Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            return;
                        }


                        editor.Dock         = DockStyle.Fill;
                        editor.TextChanged += new EventHandler(Editor_TextChanged);

                        tabPage.Controls.Add(editor);
                        documentsTabControl.TabPages.Add(tabPage);
                        documentsTabControl.SelectedTab = tabPage;
                        documentsTabControl.Visible     = true;

                        TemplateTabPages.Add(node.Template, tabPage);
                    }
                }
            }
        }