Пример #1
0
        /// <summary>
        /// </summary>
        /// <param name="xmlNodeToSaveTo"></param>
        /// <param name="taskNodeToSave"></param>
        /// <exception cref="T:System.ArgumentNullException">
        /// <paramref name="xmlNodeToSaveTo"/> is <see langword="null"/>.
        /// -or-
        /// <paramref name="taskNodeToSave"/> is <see langword="null"/>.
        /// </exception>
        protected void SaveNode(XmlNode xmlNodeToSaveTo, NuGenTaskTreeNodeBase taskNodeToSave)
        {
            if (xmlNodeToSaveTo == null)
            {
                throw new ArgumentNullException("xmlNodeToSaveTo");
            }

            if (taskNodeToSave == null)
            {
                throw new ArgumentNullException("xmlNodeToSave");
            }

            if (taskNodeToSave.IsRemovable)
            {
                string xmlNodeName = (taskNodeToSave is NuGenTaskTreeNode)
                                        ? Resources.XmlTag_Task
                                        : Resources.XmlTag_Folder
                ;

                XmlNode xmlTaskNode = this.XmlService.AppendChild(xmlNodeToSaveTo, xmlNodeName);
                taskNodeToSave.Save(xmlTaskNode);

                foreach (NuGenTaskTreeNodeBase childNode in taskNodeToSave.Nodes)
                {
                    this.SaveNode(xmlTaskNode, childNode);
                }
            }
        }
Пример #2
0
        /// <summary>
        /// </summary>
        /// <exception cref="T:System.ArgumentNullException">
        /// <paramref name="taskNodeToAdd"/> is <see langword="null"/>.
        /// </exception>
        public void AddTask(NuGenTaskTreeNode taskNodeToAdd)
        {
            if (taskNodeToAdd == null)
            {
                throw new ArgumentNullException("taskNodeToAdd");
            }

            NuGenTaskTreeNodeBase selectedNode = (NuGenTaskTreeNodeBase)this.SelectedNode;

            if (
                selectedNode is NuGenFolderTreeNode &&
                selectedNode.IsRemovable
                )
            {
                selectedNode.Nodes.AddNode(taskNodeToAdd);
            }
            else if (
                selectedNode != null &&
                selectedNode.Parent != null
                )
            {
                if (
                    selectedNode.Parent is NuGenTaskTreeNodeBase &&
                    ((NuGenTaskTreeNodeBase)selectedNode.Parent).IsRemovable
                    )
                {
                    selectedNode.Parent.Nodes.AddNode(taskNodeToAdd);
                }
                else
                {
                    this.Nodes.AddNode(taskNodeToAdd);
                }
            }
            else
            {
                this.Nodes.AddNode(taskNodeToAdd);
            }

            this.SelectedNode = taskNodeToAdd;
            this.OnTaskAdded(EventArgs.Empty);
            this.OnEventToBeDelayed(new NuGenTaskAddedEventArgs(taskNodeToAdd.Text));
        }
Пример #3
0
        /// <summary>
        /// </summary>
        /// <param name="xmlNodeToLoadFrom"></param>
        /// <param name="parentNodeCollection"></param>
        /// <exception cref="T:System.ArgumentNullException">
        /// <paramref name="xmlNodeToLoadFrom"/> is <see langword="null"/>.
        /// -or-
        /// <paramref name="parentNodeCollection"/> is <see langword="null"/>.
        /// </exception>
        protected void LoadNode(XmlNode xmlNodeToLoadFrom, NuGenTreeNodeCollection parentNodeCollection)
        {
            if (xmlNodeToLoadFrom == null)
            {
                throw new ArgumentNullException("xmlNodeToLoadFrom");
            }

            if (parentNodeCollection == null)
            {
                throw new ArgumentNullException("parentNodeCollection");
            }

            NuGenTaskTreeNodeBase treeNodeToAdd = null;

            if (xmlNodeToLoadFrom.Name == Resources.XmlTag_Folder)
            {
                treeNodeToAdd = new NuGenFolderTreeNode(this.ServiceProvider);
                this.InitializeFolder((NuGenFolderTreeNode)treeNodeToAdd);
            }
            else if (xmlNodeToLoadFrom.Name == Resources.XmlTag_Task)
            {
                treeNodeToAdd = new NuGenTaskTreeNode(this.ServiceProvider);
                this.InitializeTask((NuGenTaskTreeNode)treeNodeToAdd);
            }
            else
            {
                return;
            }

            parentNodeCollection.AddNode(treeNodeToAdd);
            treeNodeToAdd.Load(xmlNodeToLoadFrom);

            foreach (XmlNode childNode in xmlNodeToLoadFrom.ChildNodes)
            {
                this.LoadNode(childNode, treeNodeToAdd.Nodes);
            }
        }
Пример #4
0
		/// <summary>
		/// </summary>
		/// <param name="xmlNodeToSaveTo"></param>
		/// <param name="taskNodeToSave"></param>
		/// <exception cref="T:System.ArgumentNullException">
		/// <paramref name="xmlNodeToSaveTo"/> is <see langword="null"/>.
		/// -or-
		/// <paramref name="taskNodeToSave"/> is <see langword="null"/>.
		/// </exception>
		protected void SaveNode(XmlNode xmlNodeToSaveTo, NuGenTaskTreeNodeBase taskNodeToSave)
		{
			if (xmlNodeToSaveTo == null)
			{
				throw new ArgumentNullException("xmlNodeToSaveTo");
			}

			if (taskNodeToSave == null)
			{
				throw new ArgumentNullException("xmlNodeToSave");
			}

			if (taskNodeToSave.IsRemovable)
			{
				string xmlNodeName = (taskNodeToSave is NuGenTaskTreeNode)
					? Resources.XmlTag_Task
					: Resources.XmlTag_Folder
					;

				XmlNode xmlTaskNode = this.XmlService.AppendChild(xmlNodeToSaveTo, xmlNodeName);
				taskNodeToSave.Save(xmlTaskNode);

				foreach (NuGenTaskTreeNodeBase childNode in taskNodeToSave.Nodes)
				{
					this.SaveNode(xmlTaskNode, childNode);
				}
			}
		}
Пример #5
0
        /**
         * InitializeContextMenu
         */

        private void InitializeContextMenu(ref ContextMenuStrip contextMenuToInitialize, ref IContainer componentsToAddContextMenuTo)
        {
            if (componentsToAddContextMenuTo == null)
            {
                componentsToAddContextMenuTo = new Container();
            }

            contextMenuToInitialize            = new ContextMenuStrip(componentsToAddContextMenuTo);
            contextMenuToInitialize.RenderMode = ToolStripRenderMode.System;

            List <ToolStripMenuItem> priorityItems = new List <ToolStripMenuItem>();

            priorityItems.Add(
                new ToolStripMenuItem(
                    Resources.CriticalMenuItem_Text,
                    Resources.Priority_Critical,
                    this.criticalMenuItem_Click
                    )
                );

            priorityItems.Add(
                new ToolStripMenuItem(
                    Resources.RequiredMenuItem_Text,
                    Resources.Priority_Required,
                    this.requiredMenuItem_Click
                    )
                );

            priorityItems.Add(
                new ToolStripMenuItem(
                    Resources.WantedMenuItem_Text,
                    Resources.Priority_Wanted,
                    this.wantedMenuItem_Click
                    )
                );

            priorityItems.Add(
                new ToolStripMenuItem(
                    Resources.WouldBeNiceMenuItem_Text,
                    Resources.Priority_WouldBeNice,
                    this.wouldBeNiceMenuItem_Click
                    )
                );

            priorityItems.Add(
                new ToolStripMenuItem(
                    Resources.MaybeMenuItem_Text,
                    Resources.Priority_Maybe,
                    this.maybeMenuItem_Click
                    )
                );

            ToolStripMenuItem deleteMenuItem = new ToolStripMenuItem(
                Resources.DeleteMenuItem_Text,
                Resources.Delete,
                this.deleteMenuItem_Click,
                Keys.Delete
                );

            ToolStripMenuItem selectAllMenuItem = new ToolStripMenuItem(
                Resources.SelectAllMenuItem_Text,
                null,
                this.selectAllMenuItem_Click,
                Keys.Control | Keys.A
                );


            foreach (ToolStripMenuItem priorityItem in priorityItems)
            {
                contextMenuToInitialize.Items.Add(priorityItem);
            }

            contextMenuToInitialize.Items.Add("-");
            contextMenuToInitialize.Items.Add(deleteMenuItem);

            /* TURNED OFF: contextMenuToInitialize.Items.Add("-");
             * contextMenuToInitialize.Items.Add(selectAllMenuItem); */

            contextMenuToInitialize.Opening += delegate
            {
                if (this.SelectedNode is NuGenTaskTreeNodeBase)
                {
                    NuGenTaskTreeNodeBase selectedNode = (NuGenTaskTreeNodeBase)this.SelectedNode;

                    bool hasPriority = selectedNode.HasPriority;
                    bool isRemovable = selectedNode.IsRemovable;

                    deleteMenuItem.Enabled = isRemovable;

                    foreach (ToolStripMenuItem priorityItem in priorityItems)
                    {
                        priorityItem.Enabled = hasPriority;
                    }
                }
                else
                {
                    deleteMenuItem.Enabled = true;

                    foreach (ToolStripMenuItem priorityItem in priorityItems)
                    {
                        priorityItem.Enabled = true;
                    }
                }
            };
        }