internal static MenuItem GetLastUsedMenuItem() { uint rlcId, rlcIndex; IntPtr menu = FindRepeatLastCommandMenuItem(out rlcId, out rlcIndex); MenuItem mainMenu = ToolbarSearchForm.ResultsPopup.MainMenu; if (!mainMenu.EnumItems().Any()) { mainMenu = new MenuItem(Win32.SendMessage(PluginBase.nppData._nppHandle, NppMsg.NPPM_INTERNAL_GETMENU, 0, 0)); } return(RecentlyUsedCommands .Where(id => id != rlcId) .Select(id => mainMenu .EnumFinalItems() .Cast <MenuItem>() .Where(item => item.CommandId == id) .FirstOrDefault()) .FirstOrDefault()); }
internal static void ClearRecentlyUsedList() { RecentlyUsedCommands.Clear(); RecalcRepeatLastCommandMenuItem(); }