Ejemplo n.º 1
0
        private void treeViewProject_OnDoubleClick(object sender, System.EventArgs e)
        {
            SortedProjectTreeNode parentnode;
            TreeNode node = this.treeViewProject.SelectedNode;

            if (node is SavedObjectTreeNode)
            {
                SavedTemplateInput input     = node.Tag as SavedTemplateInput;
                ZeusModule         parentMod = node.Parent.Tag as ZeusModule;
                this.formEditSavedObject.Module      = parentMod;
                this.formEditSavedObject.SavedObject = input;
                if (this.formEditSavedObject.ShowDialog() == DialogResult.OK)
                {
                    this._isDirty = true;

                    node.Text  = input.SavedObjectName;
                    parentnode = node.Parent as SortedProjectTreeNode;
                    if (parentnode != null)
                    {
                        node.Remove();
                        parentnode.AddSorted(node);
                        this.treeViewProject.SelectedNode = node;
                    }
                }
            }
        }
Ejemplo n.º 2
0
        public void Execute()
        {
            this.Save();
            ZeusProject proj = this._rootNode.Project;

            Cursor.Current = Cursors.WaitCursor;

            TreeNode        node     = this.treeViewProject.SelectedNode;
            DefaultSettings settings = DefaultSettings.Instance;

            if (node is ProjectTreeNode)
            {
                OnExecutionStarted();
                ZeusProcessManager.ExecuteProject(proj.FilePath, ExecutionCallback);
            }
            else if (node is ModuleTreeNode)
            {
                ZeusModule module = node.Tag as ZeusModule;
                OnExecutionStarted();
                ZeusProcessManager.ExecuteModule(proj.FilePath, module.ProjectPath, ExecutionCallback);
                //module.Execute(settings.ScriptTimeout, log);
            }
            else if (node is SavedObjectTreeNode)
            {
                SavedTemplateInput savedinput = node.Tag as SavedTemplateInput;
                ZeusModule         module     = node.Parent.Tag as ZeusModule;
                OnExecutionStarted();
                ZeusProcessManager.ExecuteProjectItem(proj.FilePath, module.ProjectPath + "/" + savedinput.SavedObjectName, ExecutionCallback);
                //savedinput.Execute(settings.ScriptTimeout, log);
            }
        }
Ejemplo n.º 3
0
        private void contextItemRemove_Click(object sender, System.EventArgs e)
        {
            SortedProjectTreeNode node = this.treeViewProject.SelectedNode as SortedProjectTreeNode;
            SortedProjectTreeNode parentnode;

            if (node is ModuleTreeNode)
            {
                parentnode = node.Parent as SortedProjectTreeNode;

                ZeusModule parentmodule = parentnode.Tag as ZeusModule;
                ZeusModule module       = node.Tag as ZeusModule;

                parentmodule.ChildModules.Remove(module);
                parentnode.Nodes.Remove(node);
                this._isDirty = true;
            }
            else if (node is SavedObjectTreeNode)
            {
                parentnode = node.Parent as SortedProjectTreeNode;

                ZeusModule         parentmodule = parentnode.Tag as ZeusModule;
                SavedTemplateInput savedobj     = node.Tag as SavedTemplateInput;

                parentmodule.SavedObjects.Remove(savedobj);
                parentnode.Nodes.Remove(node);
                this._isDirty = true;
            }
        }
Ejemplo n.º 4
0
        private void LoadModule(SortedProjectTreeNode parentNode, ZeusModule parentModule)
        {
            SortedProjectTreeNode node;

            if ((parentNode == null) && (parentModule is ZeusProject))
            {
                rootNode = new ProjectTreeNode(parentModule as ZeusProject);
                node     = rootNode;
            }
            else
            {
                node = new ModuleTreeNode(parentModule);
                parentNode.AddSorted(node);
            }

            foreach (ZeusModule module in parentModule.ChildModules)
            {
                LoadModule(node, module);
            }

            foreach (SavedTemplateInput input in parentModule.SavedObjects)
            {
                node.AddSorted(new SavedObjectTreeNode(input));
            }
        }
Ejemplo n.º 5
0
        public void Execute()
        {
            Cursor.Current = Cursors.WaitCursor;

            TreeNode        node     = this.treeViewProject.SelectedNode;
            DefaultSettings settings = DefaultSettings.Instance;

            ProjectExecuteStatus log = new ProjectExecuteStatus();

            log.Show(this);

            if ((node is ModuleTreeNode) || (node is ProjectTreeNode))
            {
                ZeusModule module = node.Tag as ZeusModule;
                module.Execute(settings.ScriptTimeout, log);
            }
            else if (node is SavedObjectTreeNode)
            {
                SavedTemplateInput savedinput = node.Tag as SavedTemplateInput;
                savedinput.Execute(settings.ScriptTimeout, log);
            }

            log.Finished = true;
            log.BringToFront();
            log.Activate();

            Cursor.Current = Cursors.Default;
        }
Ejemplo n.º 6
0
        private ZeusModule FindModule(ZeusModule parent, string projectPath)
        {
            ZeusModule m = null;

            if (parent.ProjectPath.Equals(projectPath, StringComparison.CurrentCultureIgnoreCase))
            {
                m = parent;
            }
            else
            {
                foreach (ZeusModule module in parent.ChildModules)
                {
                    if (module.ProjectPath.Equals(projectPath, StringComparison.CurrentCultureIgnoreCase))
                    {
                        m = module;
                        break;
                    }
                    else
                    {
                        m = FindModule(module, projectPath);
                        if (m != null)
                        {
                            break;
                        }
                    }
                }
            }

            return(m);
        }
Ejemplo n.º 7
0
        private bool CollectProjectItem(ZeusModule parent, string projectPath, string templatePath)
        {
            bool complete    = false;
            int  moduleIndex = projectPath.LastIndexOf('/');

            if (moduleIndex >= 0)
            {
                string modulePath = projectPath.Substring(0, moduleIndex),
                       objectName = projectPath.Substring(moduleIndex + 1);

                ZeusModule m = FindModule(parent, modulePath);
                if (m != null)
                {
                    ZeusTemplate    template = new ZeusTemplate(templatePath);
                    DefaultSettings settings = DefaultSettings.Instance;

                    SavedTemplateInput savedInput = null;
                    if (m.SavedObjects.Contains(objectName))
                    {
                        savedInput = m.SavedObjects[objectName];
                    }
                    else
                    {
                        savedInput = new SavedTemplateInput();
                        savedInput.SavedObjectName = objectName;
                    }


                    ZeusContext context = new ZeusContext();
                    context.Log = this._log;

                    savedInput.TemplateUniqueID = template.UniqueID;
                    savedInput.TemplatePath     = template.FilePath + template.FileName;

                    settings.PopulateZeusContext(context);
                    if (m != null)
                    {
                        m.PopulateZeusContext(context);
                        m.OverrideSavedData(savedInput.InputItems);
                    }

                    if (template.Collect(context, settings.ScriptTimeout, savedInput.InputItems))
                    {
                        //this._lastRecordedSelectedNode = this.SelectedTemplate;
                    }


                    if (this._argmgr.InternalUseOnly)
                    {
                        this._log.Write("[BEGIN_RECORDING]");

                        this._log.Write(savedInput.XML);

                        this._log.Write("[END_RECORDING]");
                    }
                    complete = true;
                }
            }
            return(complete);
        }
Ejemplo n.º 8
0
        private bool ExecuteProjectItem(ZeusModule parent, string projectPath)
        {
            bool complete    = false;
            int  moduleIndex = projectPath.LastIndexOf('/');

            if (moduleIndex >= 0)
            {
                string modulePath = projectPath.Substring(0, moduleIndex),
                       objectName = projectPath.Substring(moduleIndex + 1);

                ZeusModule m = FindModule(parent, modulePath);
                if (m != null)
                {
                    if (m.SavedObjects.Contains(objectName))
                    {
                        m.SavedObjects[objectName].Execute(this._argmgr.Timeout, this._log);

                        if (this._argmgr.InternalUseOnly)
                        {
                            foreach (string file in m.SavedObjects[objectName].SavedFiles)
                            {
                                this._log.Write("[GENERATED_FILE]" + file);
                            }
                        }
                    }
                    complete = true;
                }
            }
            return(complete);
        }
Ejemplo n.º 9
0
        public ModuleTreeNode(ZeusModule module)
        {
            this.Tag = module;

            this.Text               = module.Name;
            this.ImageIndex         = 0;
            this.SelectedImageIndex = 0;
        }
Ejemplo n.º 10
0
        public void Edit(bool allowEditFolders)
        {
            SortedProjectTreeNode node = this.treeViewProject.SelectedNode as SortedProjectTreeNode;
            SortedProjectTreeNode parentnode;

            if (allowEditFolders && ((node is ModuleTreeNode) || (node is ProjectTreeNode)))
            {
                ZeusModule module = node.Tag as ZeusModule;
                this._formEditModule.Module = module;
                if (this._formEditModule.ShowDialog() == DialogResult.OK)
                {
                    this._isDirty = true;
                    node.Text     = module.Name;
                    parentnode    = node.Parent as SortedProjectTreeNode;
                    if (parentnode != null)
                    {
                        node.Remove();
                        parentnode.AddSorted(node);
                        this.treeViewProject.SelectedNode = node;
                    }

                    if (node is ProjectTreeNode)
                    {
                        OnTextChanged("Project: " + module.Name, module.Name, _rootNode.Project.FilePath);
                    }
                }
            }
            else if (node is SavedObjectTreeNode)
            {
                if (_collectInChildProcess)
                {
                    Save();
                }

                SavedTemplateInput input     = node.Tag as SavedTemplateInput;
                ZeusModule         parentMod = node.Parent.Tag as ZeusModule;
                this._formEditSavedObject.Module      = parentMod;
                this._formEditSavedObject.SavedObject = input;
                if (this._formEditSavedObject.ShowDialog() == DialogResult.OK)
                {
                    this._isDirty = true;
                    node.Text     = input.SavedObjectName;
                    parentnode    = node.Parent as SortedProjectTreeNode;
                    if (parentnode != null)
                    {
                        node.Remove();
                        parentnode.AddSorted(node);
                        this.treeViewProject.SelectedNode = node;
                    }
                }
            }
        }
Ejemplo n.º 11
0
        private void contextItemCacheSettings_Click(object sender, System.EventArgs e)
        {
            SortedProjectTreeNode node = this.treeViewProject.SelectedNode as SortedProjectTreeNode;

            if ((node is ModuleTreeNode) || (node is ProjectTreeNode))
            {
                ZeusModule      module   = node.Tag as ZeusModule;
                ZeusContext     context  = new ZeusContext();
                DefaultSettings settings = DefaultSettings.Instance;
                settings.PopulateZeusContext(context);
                module.SavedItems.Add(context.Input);
            }
        }
Ejemplo n.º 12
0
 private void ExecuteModules(IZeusContext context, ZeusModule parent, List <string> names, int timeout)
 {
     foreach (ZeusModule module in parent.ChildModules)
     {
         if (names.Contains(module.Name))
         {
             module.Execute(timeout, context.Log);
         }
         else
         {
             ExecuteModules(context, module, names, timeout);
         }
     }
 }
Ejemplo n.º 13
0
        private void contextItemEdit_Click(object sender, System.EventArgs e)
        {
            SortedProjectTreeNode node = this.treeViewProject.SelectedNode as SortedProjectTreeNode;
            SortedProjectTreeNode parentnode;

            if ((node is ModuleTreeNode) || (node is ProjectTreeNode))
            {
                ZeusModule module = node.Tag as ZeusModule;
                this.formEditModule.Module = module;
                if (this.formEditModule.ShowDialog() == DialogResult.OK)
                {
                    this._isDirty = true;
                    node.Text     = module.Name;
                    parentnode    = node.Parent as SortedProjectTreeNode;
                    if (parentnode != null)
                    {
                        node.Remove();
                        parentnode.AddSorted(node);
                        this.treeViewProject.SelectedNode = node;
                    }

                    if (node is ProjectTreeNode)
                    {
                        this.Text    = "Project: " + module.Name;
                        this.TabText = module.Name;
                    }
                }
            }
            else if (node is SavedObjectTreeNode)
            {
                SavedTemplateInput input     = node.Tag as SavedTemplateInput;
                ZeusModule         parentMod = node.Parent.Tag as ZeusModule;
                this.formEditSavedObject.Module      = parentMod;
                this.formEditSavedObject.SavedObject = input;
                if (this.formEditSavedObject.ShowDialog() == DialogResult.OK)
                {
                    this._isDirty = true;
                    node.Text     = input.SavedObjectName;
                    parentnode    = node.Parent as SortedProjectTreeNode;
                    if (parentnode != null)
                    {
                        node.Remove();
                        parentnode.AddSorted(node);
                        this.treeViewProject.SelectedNode = node;
                    }
                }
            }
        }
Ejemplo n.º 14
0
        private void LoadModule(SortedProjectTreeNode parentNode, ZeusModule childModule)
        {
            ModuleTreeNode childNode = new ModuleTreeNode(childModule);

            parentNode.AddSorted(childNode);

            foreach (ZeusModule grandchildModule in childModule.ChildModules)
            {
                LoadModule(childNode, grandchildModule);
            }

            foreach (SavedTemplateInput input in childModule.SavedObjects)
            {
                childNode.AddSorted(new SavedObjectTreeNode(input));
            }
        }
Ejemplo n.º 15
0
        private bool ExecuteModule(ZeusModule parent, string projectPath)
        {
            bool       complete = false;
            ZeusModule m        = FindModule(parent, projectPath);

            if (m != null)
            {
                complete = true;
                m.Execute(this._argmgr.Timeout, this._log);

                if (this._argmgr.InternalUseOnly)
                {
                    foreach (string file in m.SavedFiles)
                    {
                        this._log.Write("[GENERATED_FILE]" + file);
                    }
                }
            }
            return(complete);
        }
Ejemplo n.º 16
0
        private void contextItemCopy_Click(object sender, System.EventArgs e)
        {
            SortedProjectTreeNode node = this.treeViewProject.SelectedNode as SortedProjectTreeNode;

            if (node is SavedObjectTreeNode)
            {
                SavedTemplateInput input = node.Tag as SavedTemplateInput;
                SavedTemplateInput copy  = input.Copy();

                SortedProjectTreeNode moduleNode = node.Parent as SortedProjectTreeNode;

                ZeusModule module = moduleNode.Tag as ZeusModule;

                string copyName = copy.SavedObjectName;
                string newName  = copyName;
                int    count    = 1;
                bool   found;
                do
                {
                    found = false;
                    foreach (SavedTemplateInput tmp in module.SavedObjects)
                    {
                        if (tmp.SavedObjectName == newName)
                        {
                            found   = true;
                            newName = copyName + " " + count++;
                            break;
                        }
                    }
                } while (found);

                copy.SavedObjectName = newName;

                module.SavedObjects.Add(copy);

                SavedObjectTreeNode copiedNode = new SavedObjectTreeNode(copy);
                moduleNode.AddSorted(copiedNode);

                this._isDirty = true;
            }
        }
Ejemplo n.º 17
0
        private void contextItemAddModule_Click(object sender, System.EventArgs e)
        {
            SortedProjectTreeNode node = this.treeViewProject.SelectedNode as SortedProjectTreeNode;

            if ((node is ModuleTreeNode) || (node is ProjectTreeNode))
            {
                ZeusModule module = node.Tag as ZeusModule;

                ZeusModule newmodule = new ZeusModule();

                this.formEditModule.Module = newmodule;
                if (this.formEditModule.ShowDialog() == DialogResult.OK)
                {
                    this._isDirty = true;
                    module.ChildModules.Add(newmodule);

                    ModuleTreeNode newNode = new ModuleTreeNode(newmodule);
                    node.AddSorted(newNode);
                    node.Expand();
                }
            }
        }
Ejemplo n.º 18
0
        private void contextItemAddSavedObject_Click(object sender, System.EventArgs e)
        {
            SortedProjectTreeNode node = this.treeViewProject.SelectedNode as SortedProjectTreeNode;

            if ((node is ModuleTreeNode) || (node is ProjectTreeNode))
            {
                ZeusModule module = node.Tag as ZeusModule;

                SavedTemplateInput savedInput = new SavedTemplateInput();
                this.formEditSavedObject.Module      = module;
                this.formEditSavedObject.SavedObject = savedInput;
                if (this.formEditSavedObject.ShowDialog() == DialogResult.OK)
                {
                    this._isDirty = true;
                    module.SavedObjects.Add(savedInput);

                    SavedObjectTreeNode newNode = new SavedObjectTreeNode(savedInput);
                    node.AddSorted(newNode);
                    node.Expand();
                    this.treeViewProject.SelectedNode = newNode;
                }
            }
        }