private void AddTrackToHistory(SpotifyTrack track) { if (track == null || track.id == lastHistoryTrackAdded?.id) { return; } // Track history menu ToolStripMenuItemSpotifyTrack toolStripMenuItem = new ToolStripMenuItemSpotifyTrack { Size = new System.Drawing.Size(180, 22), Tag = track, Text = track.fullTitle, TextAlign = System.Drawing.ContentAlignment.MiddleLeft }; // Copy track link menu ToolStripMenuItemSpotifyTrack toolStripMenuItem_CopyLink = new ToolStripMenuItemSpotifyTrack { Enabled = true, Name = "toolStripMenuItem_CopyLink", Size = new System.Drawing.Size(208, 22), Tag = track, Text = "Copy link", ToolTipText = "Copies Spotify link to your clipboard.", TextAlign = System.Drawing.ContentAlignment.MiddleLeft }; toolStripMenuItem_CopyLink.MouseClick += new MouseEventHandler(TrackHistoryClick_CopyLink); // Copy track full title menu ToolStripMenuItemSpotifyTrack toolStripMenuItem_CopyFullTitle = new ToolStripMenuItemSpotifyTrack { Enabled = true, Name = "toolStripMenuItem_CopyFullTitle", Size = new System.Drawing.Size(208, 22), Tag = track, Text = "Copy full title", ToolTipText = "Copies song name and artists to your clipboard.", TextAlign = System.Drawing.ContentAlignment.MiddleLeft }; toolStripMenuItem_CopyFullTitle.MouseClick += new MouseEventHandler(TrackHistoryClick_CopyFullTitle); // Add the "Copy track" menus to our Track History menu toolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { toolStripMenuItem_CopyLink, toolStripMenuItem_CopyFullTitle }); // Add new Track History item to the list. Global.debugConsole?.WriteLine("Adding track to history: " + track.fullTitle); lastHistoryTrackAdded = track; AddDropDownItemsToMenu(toolStripMenuItem); }
private void AddDropDownItemsToMenu(ToolStripMenuItemSpotifyTrack item) { if (contextMenuStrip.InvokeRequired) { var del = new SafeCallToolStripMenuDelegate(AddDropDownItemsToMenu); contextMenuStrip.Invoke(del, item); } else { this.toolStripMenuItem_TrackHistory.DropDownItems.Add(item); } }