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();
        }
        private void lsv_Tasks_DoubleClick(object sender, System.EventArgs e)
        {
            ListViewItem selectedItem = this.lsv_Tasks.SelectedItems[0];

            if (selectedItem != null)
            {
                Protean.Hub.Files.File sourceFile = (Protean.Hub.Files.File)selectedItem.Tag;
                Protean.Hub.Files.File.Load(sourceFile.FileNameExpanded);
                Protean.Hub.EditingPage.EditingPageControl editingPage = sourceFile.EditingPageControl;
                if (editingPage != null)
                {
                    try
                    {
                        Protean.Hub.EditingPage.ISyntaxBoxEditor editor = (Protean.Hub.EditingPage.ISyntaxBoxEditor)editingPage;
                        editor.EditorControl.GotoLine(Int32.Parse(selectedItem.SubItems[1].Text) - 1);
                    }
                    catch (Exception exception1)
                    {
                    }
                }
            }
        }
 /// <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);
 }