コード例 #1
0
        private void ConvertTreeToProject(esProjectNode esParentNode, TreeNode node)
        {
            esProjectNode esNode = new esProjectNode();

            esNode.Name = node.Text;

            if (esParentNode == null)
            {
                project.RootNode = esNode;
            }
            else
            {
                esParentNode.Children.Add(esNode);
            }

            if (node.Tag != null)
            {
                ProjectNodeData tag = node.Tag as ProjectNodeData;

                esNode.Template = tag.Template;
                esNode.Settings = tag.Settings;
                esNode.Input    = tag.Input;

                esNode.IsFolder = false;
            }

            foreach (TreeNode childNode in node.Nodes)
            {
                ConvertTreeToProject(esNode, childNode);
            }
        }
コード例 #2
0
        private void EditTemplatesMenuItem_Click(object sender, EventArgs e)
        {
            Cursor origCursor = this.Cursor;

            try
            {
                this.Cursor = Cursors.WaitCursor;

                this.MainWindow.HideErrorOrStatusMessage();

                TemplateDisplaySurface templateDisplaySurface = new TemplateDisplaySurface();

                TreeNode node = this.projectTree.SelectedNode;

                ProjectNodeData data = node.Tag as ProjectNodeData;

                templateDisplaySurface.DisplayTemplateUI(true, data.Input, data.Settings as esSettings, data.Template, OnExecute, OnCancel);

                splitContainer.Panel1Collapsed = false;
                splitContainer.Panel2Collapsed = true;

                isDirty = true;
            }
            catch (Exception ex)
            {
                this.MainWindow.ShowError(ex);
            }
            finally
            {
                EnableToolbarButtons(true);

                this.Cursor = origCursor;
            }
        }
コード例 #3
0
        private void ConvertProjectToTree(TreeNode parentNode, esProjectNode esNode)
        {
            TreeNode node = null;

            if (parentNode == null)
            {
                node = this.projectTree.Nodes.Add(esNode.Name);
            }
            else
            {
                node = parentNode.Nodes.Add(esNode.Name);
            }

            if (!esNode.IsFolder)
            {
                ProjectNodeData tag = new ProjectNodeData();
                tag.Template = esNode.Template;
                tag.Settings = esNode.Settings;
                tag.Input    = esNode.Input;

                node.Tag                = tag;
                node.ImageIndex         = 2;
                node.SelectedImageIndex = 2;
                node.ContextMenuStrip   = menuTemplate;

                node.ToolTipText = esNode.Template.Header.Description + " (" + node.FullPath + ")";
            }

            foreach (esProjectNode childNode in esNode.Children)
            {
                ConvertProjectToTree(node, childNode);
            }
        }
コード例 #4
0
        private bool OnExecute(TemplateDisplaySurface surface)
        {
            try
            {
                if (surface.GatherUserInput())
                {
                    Hashtable ht = surface.CacheUserInput();

                    if (this.projectTree.SelectedNode != null && this.projectTree.SelectedNode.Tag != null)
                    {
                        ProjectNodeData tag = this.projectTree.SelectedNode.Tag as ProjectNodeData;
                        tag.Input = ht;
                    }
                    else
                    {
                        AddRecordedTemplate(surface, true);
                        isDirty = true;
                    }
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                throw;
                this.MainWindow.ShowError(ex);
                return(false);
            }

            return(true);
        }
コード例 #5
0
        private void EnableToolbarButtons(bool enable)
        {
            this.ButtonProjectOpen.Enabled = enable;

            if (this.projectName != null)
            {
                this.ButtonSave.Enabled = enable;
            }
            this.ButtonSaveAs.Enabled     = enable;
            this.ButtonExecute.Enabled    = enable;
            this.ButtonClear.Enabled      = enable;
            this.ButtonOpenFolder.Enabled = enable;
            this.ButtonMoveDown.Enabled   = enable;
            this.ButtonMoveUp.Enabled     = enable;

            if (enable == true)
            {
                TreeNode node = this.projectTree.SelectedNode;

                if (node != null)
                {
                    ProjectNodeData data = node.Tag as ProjectNodeData;

                    if (data != null)
                    {
                        this.ButtonRecord.Enabled = enable;
                    }
                }
            }
            else
            {
                this.ButtonRecord.Enabled = enable;
            }
        }
コード例 #6
0
        private void ExecuteRecordedTemplate(TreeNode node)
        {
            try
            {
                if (node != null && node.Tag != null)
                {
                    ProjectNodeData tag = node.Tag as ProjectNodeData;

                    Root esMeta = esMetaCreator.Create(tag.Settings as esSettings);
                    esMeta.Input = tag.Input;

                    Template template = new Template();
                    template.Execute(esMeta, tag.Template.Header.FullFileName);
                }
            }
            catch (Exception ex)
            {
                throw;
            }
        }
コード例 #7
0
        public void AddRecordedTemplate(TemplateDisplaySurface surface, bool beginEdit)
        {
            try
            {
                TreeNode node = this.projectTree.SelectedNode;

                if (node == null)
                {
                    node = this.projectTree.Nodes[0];
                }

                if (node != null)
                {
                    TreeNode recordedTemplate = new TreeNode(surface.Template.Header.Title);
                    recordedTemplate.ImageIndex         = 2;
                    recordedTemplate.SelectedImageIndex = 2;
                    recordedTemplate.ContextMenuStrip   = menuTemplate;
                    node.Nodes.Add(recordedTemplate);

                    ProjectNodeData tag = new ProjectNodeData();
                    tag.Template         = surface.Template;
                    tag.Input            = surface.CacheUserInput();
                    tag.Settings         = Settings.Clone();
                    recordedTemplate.Tag = tag;

                    node.Expand();
                    isDirty = true;

                    this.projectTree.SelectedNode = recordedTemplate;

                    if (beginEdit)
                    {
                        recordedTemplate.BeginEdit();
                    }
                }
            }
            catch (Exception ex)
            {
                this.MainWindow.ShowError(ex);
            }
        }
コード例 #8
0
        private void EditSettingsMenuItem_Click(object sender, EventArgs e)
        {
            try
            {
                this.MainWindow.HideErrorOrStatusMessage();

                TreeNode        node = this.projectTree.SelectedNode;
                ProjectNodeData data = node.Tag as ProjectNodeData;

                PopupSettings popup = new PopupSettings();
                popup.Settings = (esSettings)data.Settings;

                if (popup.ShowDialog() == DialogResult.OK)
                {
                    data.Settings = popup.Settings;
                }
            }
            catch (Exception ex)
            {
                this.MainWindow.ShowError(ex);
            }
        }
コード例 #9
0
        private void ConvertProjectToTree(TreeNode parentNode, esProjectNode esNode)
        {
            TreeNode node = null;

            if (parentNode == null)
            {
                node = this.projectTree.Nodes.Add(esNode.Name);
            }
            else
            {
                node = parentNode.Nodes.Add(esNode.Name);
            }

            if(!esNode.IsFolder)
            {
                ProjectNodeData tag = new ProjectNodeData();
                tag.Template = esNode.Template;
                tag.Settings = esNode.Settings;
                tag.Input = esNode.Input;

                node.Tag = tag;
                node.ImageIndex = 2;
                node.SelectedImageIndex = 2;
                node.ContextMenuStrip = menuTemplate;

                node.ToolTipText = esNode.Template.Header.Description + " (" + node.FullPath + ")";
            }

            foreach (esProjectNode childNode in esNode.Children)
            {
                ConvertProjectToTree(node, childNode);
            }
        }
コード例 #10
0
        public void AddRecordedTemplate(TemplateDisplaySurface surface, bool beginEdit)
        {
            try
            {
                TreeNode node = this.projectTree.SelectedNode;

                if (node == null)
                {
                    node = this.projectTree.Nodes[0];
                }

                if (node != null)
                {
                    TreeNode recordedTemplate = new TreeNode(surface.Template.Header.Title);
                    recordedTemplate.ImageIndex = 2;
                    recordedTemplate.SelectedImageIndex = 2;
                    recordedTemplate.ContextMenuStrip = menuTemplate;
                    node.Nodes.Add(recordedTemplate);

                    ProjectNodeData tag = new ProjectNodeData();
                    tag.Template = surface.Template;
                    tag.Input = surface.CacheUserInput();
                    tag.Settings = Settings.Clone();
                    recordedTemplate.Tag = tag;
        
                    node.Expand();
                    isDirty = true;

                    this.projectTree.SelectedNode = recordedTemplate;

                    if (beginEdit)
                    {
                        recordedTemplate.BeginEdit();
                    }
                }
            }
            catch (Exception ex)
            {
                this.MainWindow.ShowError(ex);
            }
        }