/// <summary>Read the bookmarks and report them.</summary> /// <param name="arg">The bookmarks to add.</param> private void AddBookmarks(BookmarkLoaderArgument arg) { if (BookmarkManager.Bookmarks == null) { // This is what takes time. BookmarkManager.GetBookmarks(); } var done = 0; foreach (var bookmark in BookmarkManager.Bookmarks) { var item = new ToolStripMenuItem(bookmark.ToShortString()); item.Tag = bookmark; item.Click += arg.ItemClickMethod; item.Image = IconHandler.Instance[IconList.File]; arg.BookmarkItems.Add(item); //arg.MenuItem.DropDownItems.Add(item); // This is just for show ;-) done++; ReportProgress(done/BookmarkManager.Bookmarks.Count, item); } }
/// <summary>Read the bookmarks and report them.</summary> /// <param name="arg">The bookmarks to add.</param> private void AddBookmarks(BookmarkLoaderArgument arg) { if (BookmarkManager.Bookmarks == null) { // This is what takes time. BookmarkManager.GetBookmarks(); } var done = 0; foreach (var bookmark in BookmarkManager.Bookmarks) { var item = new ToolStripMenuItem(bookmark.ToShortString()); item.Tag = bookmark; item.Click += arg.ItemClickMethod; item.Image = IconHandler.Instance[IconList.File]; arg.BookmarkItems.Add(item); //arg.MenuItem.DropDownItems.Add(item); // This is just for show ;-) done++; ReportProgress(done / BookmarkManager.Bookmarks.Count, item); } }
/// <summary>This runs the loader for you!</summary> /// <param name="pBookmarkItems">The list of items that represents bookmarks.</param> /// <param name="pMenuItem">The menu item for bookmarks.</param> /// <param name="pItemClickMethod">The method to invoke upon item.Click.</param> internal void LoadBookmarks(List<ToolStripMenuItem> pBookmarkItems, ToolStripMenuItem pMenuItem, EventHandler pItemClickMethod) { var arg = new BookmarkLoaderArgument(pBookmarkItems, pMenuItem, pItemClickMethod); RunWorkerAsync(arg); }
/// <summary>This runs the loader for you!</summary> /// <param name="pBookmarkItems">The list of items that represents bookmarks.</param> /// <param name="pMenuItem">The menu item for bookmarks.</param> /// <param name="pItemClickMethod">The method to invoke upon item.Click.</param> internal void LoadBookmarks(List <ToolStripMenuItem> pBookmarkItems, ToolStripMenuItem pMenuItem, EventHandler pItemClickMethod) { var arg = new BookmarkLoaderArgument(pBookmarkItems, pMenuItem, pItemClickMethod); RunWorkerAsync(arg); }