Пример #1
0
		internal void AddItem(ItemType itemType, int lineNumber, string description, Protean.Hub.Files.File sourceFile)
		{
			ListViewItem item = new ListViewItem();
			item.Tag = sourceFile;
			item.Text = itemType.ToString();

			item.ImageIndex	= this.IconFromType(itemType);


			item.SubItems.Add(new ListViewItem.ListViewSubItem(item, lineNumber.ToString()));
			item.SubItems.Add(new ListViewItem.ListViewSubItem(item, description.Trim()));
			item.SubItems.Add(new ListViewItem.ListViewSubItem(item, sourceFile.FileNameOnly));
			item.SubItems.Add(new ListViewItem.ListViewSubItem(item, sourceFile.FileNameExpanded));

			this.m_ListItems.Add(item);
			this.lsv_Tasks.Items.Add((ListViewItem)item.Clone());

			this.sbp_TotalItems.Text = "Total items: " + this.lsv_Tasks.Items.Count.ToString();
			this.sbp_FilterItems.Text = "Filtered items: " + this.lsv_Tasks.Items.Count.ToString();

		}
Пример #2
0
		/// <summary>
		/// Add an item to the docking page control. Horrible.
		/// </summary>
		/// <param name="itemType"></param>
		/// <param name="lineNumber"></param>
		/// <param name="description"></param>
		/// <param name="sourceFile"></param>
		internal static void AddItem(DockingPages.frm_TodoList.ItemType itemType, int lineNumber, string description, Protean.Hub.Files.File sourceFile)
		{
			TodoListPlugin.dockingPage.AddItem(itemType, lineNumber, description, sourceFile);
		}
Пример #3
0
		/// <summary>Parse a single Protean document.</summary>
		/// <param name="doc"></param>
		private static void ParseDocument(Protean.Hub.Documents.Document doc)
		{
			int lineNumber = 1;
			foreach(string tLine in doc.Document.Lines) 
			{
				string description	= "";
				bool itemFound		= false;
				frm_TodoList.ItemType itemType = frm_TodoList.ItemType.Temp;

				// Refactor this to get the first keyword, then do a "switch" on it

				if (tLine != null && tLine.Length > 0 ) 
				{
					// TODO:					
					if (SourceParser.findKeyword("todo", tLine) != "") 
					{
						description	= SourceParser.findKeyword("todo", tLine);
						itemType	= frm_TodoList.ItemType.Todo;
						itemFound	= true;
					}

						// TEMP:					
					else if (SourceParser.findKeyword("temp", tLine) != "") 
					{
						description	= SourceParser.findKeyword("temp", tLine);
						itemType	= frm_TodoList.ItemType.Temp;
						itemFound	= true;
					}

						// HACK:					
					else if (SourceParser.findKeyword("hack", tLine) != "") 
					{
						description	= SourceParser.findKeyword("hack", tLine);
						itemType	= frm_TodoList.ItemType.Hack;
						itemFound	= true;
					}

						// KLUDGE:					
					else if (SourceParser.findKeyword("kludge", tLine) != "") 
					{
						description	= SourceParser.findKeyword("kludge", tLine);
						itemType	= frm_TodoList.ItemType.Kludge;
						itemFound	= true;
					}

						// NOTE:					
					else if (SourceParser.findKeyword("note", tLine) != "") 
					{
						description	= SourceParser.findKeyword("note", tLine);
						itemType	= frm_TodoList.ItemType.Note;
						itemFound	= true;
					}
					// If we found something, add it
					if(itemFound) 
					{
						TodoListPlugin.AddItem(itemType, lineNumber, description, doc.File); 
					}
					
				}

				lineNumber++;
			}
		}
Пример #4
0
		/// <summary>Initialises all of the plugin's data. Called when the plugin is loaded by Protean.</summary>
		internal void Plugin_Initialize(object sender, Protean.Hub.Plugins.Plugin.InitializeArgs e)
		{
			e.Information.Name		= "TO-DO list";
			e.Information.GUID		= "C6CC0646-BDE5-4058-AEE4-28F2BCE9419E";
			e.Information.Priority	= Protean.Hub.Plugins.PriorityTypes.GeneralTools;
		}