UI: Added option to display full path for recent file list

This commit is contained in:
Sour 2018-02-24 11:33:36 -05:00
parent f8ed813d14
commit e0611e7a9d
15 changed files with 97 additions and 51 deletions

View file

@ -159,7 +159,13 @@ namespace Mesen.GUI.Config
public override string ToString()
{
string text = Path.GetFileName(RomFile.FileName).Replace("&", "&&");
string text;
if(ConfigManager.Config.PreferenceInfo.ShowFullPathInRecents) {
text = RomFile.ReadablePath.Replace("&", "&&");
} else {
text = Path.GetFileName(RomFile.FileName).Replace("&", "&&");
}
if(PatchFile.HasValue) {
text += " [" + Path.GetFileName(PatchFile.Value) + "]";
}

View file

@ -58,6 +58,8 @@ namespace Mesen.GUI.Config
public bool DisableGameDatabase = false;
public bool DisableOsd = false;
public bool ShowFullPathInRecents = false;
public bool ShowFrameCounter = false;
public bool ShowGameTimer = false;
public bool ShowVsConfigOnLoad = false;

View file

@ -379,6 +379,7 @@
<Control ID="chkAutoSaveNotify">Mostrar una notificación en pantalla al hacer la copia de seguridad automática</Control>
<Control ID="grpCloudSaves">Còpies de seguretat al núvol</Control>
<Control ID="chkShowFullPathInRecents">Show full file path in recent file list</Control>
<Control ID="chkShowFrameCounter">Mostra el comptador de fotogrames</Control>
<Control ID="chkShowGameTimer">Mostra el comptador de temps de joc</Control>
<Control ID="chkShowVsConfigOnLoad">Mostra la configuració del joc quan es carreguin jocs de VS System</Control>

View file

@ -378,6 +378,7 @@
<Control ID="chkAutoSaveNotify">Mostrar una notificación en pantalla al hacer la copia de seguridad automática</Control>
<Control ID="grpCloudSaves">Copia de seguridad online</Control>
<Control ID="chkShowFullPathInRecents">Show full file path in recent file list</Control>
<Control ID="chkShowFrameCounter">Mostrar contador de fotogramas</Control>
<Control ID="chkShowGameTimer">Mostrar tiempo de juego</Control>
<Control ID="chkShowVsConfigOnLoad">Mostrar configuración del juego cuando se carguen juegos de VS System</Control>

View file

@ -367,6 +367,7 @@
<Control ID="chkFdsFastForwardOnLoad">Augmenter la vitesse d'émulation pendant le chargement des jeux FDS</Control>
<Control ID="chkFdsAutoInsertDisk">Insérer le disque demandé automatiquement pour les jeux de FDS</Control>
<Control ID="chkShowFullPathInRecents">Afficher le chemin complet pour les fichiers récents</Control>
<Control ID="chkShowFrameCounter">Afficher le compteur d'images</Control>
<Control ID="chkShowGameTimer">Afficher le compteur de temps</Control>
<Control ID="chkShowVsConfigOnLoad">Afficher le dialogue de configuration du jeu lors du chargement de jeux VS System</Control>

View file

@ -329,7 +329,7 @@
<Control ID="lblPauseBackgroundSettings">ポーズ・バックグラウンド設定</Control>
<Control ID="lblMiscSettings">その他</Control>
<Control ID="chkAutoHideMenu">自動的にメニューバーを隠す</Control>
<Control ID="chkDisplayTitleBarInfo">タイトルバーに追加情報を表す</Control>
<Control ID="chkDisplayTitleBarInfo">タイトルバーに追加情報を表す</Control>
<Control ID="chkConfirmExitResetPower">リセットと再起度とMesenを終了する前に確認する</Control>
<Control ID="chkPauseOnMovieEnd">動画が終わると自動的にポーズする</Control>
@ -367,6 +367,7 @@
<Control ID="chkFdsFastForwardOnLoad">ファミコンディスクシステムのゲームをディスクからロードする時に自動的に最高速度にする</Control>
<Control ID="chkFdsAutoInsertDisk">ファミコンディスクシステムのゲーム中に自動的に該当するディスクを入れる</Control>
<Control ID="chkShowFullPathInRecents">最近開いたファイルのフルパスを表示する</Control>
<Control ID="chkShowFrameCounter">フレームカウンタを表示する</Control>
<Control ID="chkShowGameTimer">ゲームタイマーを表示する</Control>
<Control ID="chkShowVsConfigOnLoad">VSゲームを起動する時に設定ウィンドウを表示する</Control>

View file

@ -376,6 +376,7 @@
<Control ID="chkAutoSaveNotify">Mostrar uma notificação na tela ao fazer a cópia de segurança automática</Control>
<Control ID="grpCloudSaves">Cópia de segurança online</Control>
<Control ID="chkShowFullPathInRecents">Show full file path in recent file list</Control>
<Control ID="chkShowFrameCounter">Mostrar contador de quadros</Control>
<Control ID="chkShowGameTimer">Mostrar tempo de jogo</Control>
<Control ID="chkShowVsConfigOnLoad">Mostrar caixa de diálogo de configuração do jogo ao carregar jogos do sistema VS</Control>

View file

@ -365,6 +365,7 @@
<Control ID="chkFdsFastForwardOnLoad">Использовать быструю загрузку FDS</Control>
<Control ID="chkFdsAutoInsertDisk">Automatically switch disks for FDS games</Control>
<Control ID="chkShowFullPathInRecents">Show full file path in recent file list</Control>
<Control ID="chkShowFrameCounter">Show frame counter</Control>
<Control ID="chkShowGameTimer">Show game timer</Control>
<Control ID="chkShowVsConfigOnLoad">Show game configuration dialog when loading VS System games</Control>

View file

@ -365,6 +365,7 @@
<Control ID="chkFdsFastForwardOnLoad">Використовувати швидке завантаження FDS</Control>
<Control ID="chkFdsAutoInsertDisk">Автоматичне перемикання дисків для FDS ігор</Control>
<Control ID="chkShowFullPathInRecents">Show full file path in recent file list</Control>
<Control ID="chkShowFrameCounter">Показувати Лічильник Кадрів</Control>
<Control ID="chkShowGameTimer">Показати таймер гри</Control>
<Control ID="chkShowVsConfigOnLoad">Показати діалогове вікно налаштування гри під час завантаження системних ігор VS</Control>

View file

@ -125,6 +125,7 @@ namespace Mesen.GUI.Forms.Config
this.lblDataLocation = new System.Windows.Forms.Label();
this.tpgAdvanced = new System.Windows.Forms.TabPage();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.chkAlwaysOnTop = new System.Windows.Forms.CheckBox();
this.chkDisableGameSelectionScreen = new System.Windows.Forms.CheckBox();
this.chkGameSelectionScreenResetGame = new System.Windows.Forms.CheckBox();
this.chkDisableGameDatabase = new Mesen.GUI.Controls.ctrlRiskyOption();
@ -144,7 +145,7 @@ namespace Mesen.GUI.Forms.Config
this.lblUiDisplaySettings = new System.Windows.Forms.Label();
this.lblGameSelectionScreenSettings = new System.Windows.Forms.Label();
this.tmrSyncDateTime = new System.Windows.Forms.Timer(this.components);
this.chkAlwaysOnTop = new System.Windows.Forms.CheckBox();
this.chkShowFullPathInRecents = new System.Windows.Forms.CheckBox();
this.tlpMain.SuspendLayout();
this.flowLayoutPanel2.SuspendLayout();
this.tableLayoutPanel5.SuspendLayout();
@ -453,7 +454,7 @@ namespace Mesen.GUI.Forms.Config
this.tabMain.Location = new System.Drawing.Point(0, 0);
this.tabMain.Name = "tabMain";
this.tabMain.SelectedIndex = 0;
this.tabMain.Size = new System.Drawing.Size(497, 419);
this.tabMain.Size = new System.Drawing.Size(497, 448);
this.tabMain.TabIndex = 2;
//
// tpgGeneral
@ -1419,7 +1420,7 @@ namespace Mesen.GUI.Forms.Config
this.tpgAdvanced.Location = new System.Drawing.Point(4, 22);
this.tpgAdvanced.Name = "tpgAdvanced";
this.tpgAdvanced.Padding = new System.Windows.Forms.Padding(3);
this.tpgAdvanced.Size = new System.Drawing.Size(489, 393);
this.tpgAdvanced.Size = new System.Drawing.Size(489, 422);
this.tpgAdvanced.TabIndex = 1;
this.tpgAdvanced.Text = "Advanced";
this.tpgAdvanced.UseVisualStyleBackColor = true;
@ -1428,26 +1429,27 @@ namespace Mesen.GUI.Forms.Config
//
this.tableLayoutPanel1.ColumnCount = 1;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel1.Controls.Add(this.chkShowFullPathInRecents, 0, 9);
this.tableLayoutPanel1.Controls.Add(this.chkAlwaysOnTop, 0, 6);
this.tableLayoutPanel1.Controls.Add(this.chkDisableGameSelectionScreen, 0, 14);
this.tableLayoutPanel1.Controls.Add(this.chkGameSelectionScreenResetGame, 0, 13);
this.tableLayoutPanel1.Controls.Add(this.chkDisableGameSelectionScreen, 0, 15);
this.tableLayoutPanel1.Controls.Add(this.chkGameSelectionScreenResetGame, 0, 14);
this.tableLayoutPanel1.Controls.Add(this.chkDisableGameDatabase, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.chkFdsAutoLoadDisk, 0, 2);
this.tableLayoutPanel1.Controls.Add(this.chkFdsFastForwardOnLoad, 0, 3);
this.tableLayoutPanel1.Controls.Add(this.chkDisplayTitleBarInfo, 0, 8);
this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel6, 0, 15);
this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel6, 0, 16);
this.tableLayoutPanel1.Controls.Add(this.chkFdsAutoInsertDisk, 0, 4);
this.tableLayoutPanel1.Controls.Add(this.chkShowGameTimer, 0, 10);
this.tableLayoutPanel1.Controls.Add(this.chkShowFrameCounter, 0, 9);
this.tableLayoutPanel1.Controls.Add(this.chkShowVsConfigOnLoad, 0, 11);
this.tableLayoutPanel1.Controls.Add(this.chkShowGameTimer, 0, 11);
this.tableLayoutPanel1.Controls.Add(this.chkShowFrameCounter, 0, 10);
this.tableLayoutPanel1.Controls.Add(this.chkShowVsConfigOnLoad, 0, 12);
this.tableLayoutPanel1.Controls.Add(this.chkDisableOsd, 0, 7);
this.tableLayoutPanel1.Controls.Add(this.lblFdsSettings, 0, 1);
this.tableLayoutPanel1.Controls.Add(this.lblUiDisplaySettings, 0, 5);
this.tableLayoutPanel1.Controls.Add(this.lblGameSelectionScreenSettings, 0, 12);
this.tableLayoutPanel1.Controls.Add(this.lblGameSelectionScreenSettings, 0, 13);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel1.Location = new System.Drawing.Point(3, 3);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 17;
this.tableLayoutPanel1.RowCount = 18;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
@ -1460,18 +1462,30 @@ namespace Mesen.GUI.Forms.Config
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(483, 387);
this.tableLayoutPanel1.Size = new System.Drawing.Size(483, 416);
this.tableLayoutPanel1.TabIndex = 0;
//
// chkAlwaysOnTop
//
this.chkAlwaysOnTop.AutoSize = true;
this.chkAlwaysOnTop.Location = new System.Drawing.Point(13, 135);
this.chkAlwaysOnTop.Margin = new System.Windows.Forms.Padding(13, 3, 3, 3);
this.chkAlwaysOnTop.Name = "chkAlwaysOnTop";
this.chkAlwaysOnTop.Size = new System.Drawing.Size(210, 17);
this.chkAlwaysOnTop.TabIndex = 29;
this.chkAlwaysOnTop.Text = "Always display on top of other windows";
this.chkAlwaysOnTop.UseVisualStyleBackColor = true;
//
// chkDisableGameSelectionScreen
//
this.chkDisableGameSelectionScreen.AutoSize = true;
this.chkDisableGameSelectionScreen.Location = new System.Drawing.Point(13, 316);
this.chkDisableGameSelectionScreen.Location = new System.Drawing.Point(13, 339);
this.chkDisableGameSelectionScreen.Margin = new System.Windows.Forms.Padding(13, 3, 3, 3);
this.chkDisableGameSelectionScreen.Name = "chkDisableGameSelectionScreen";
this.chkDisableGameSelectionScreen.Size = new System.Drawing.Size(170, 17);
@ -1482,7 +1496,7 @@ namespace Mesen.GUI.Forms.Config
// chkGameSelectionScreenResetGame
//
this.chkGameSelectionScreenResetGame.AutoSize = true;
this.chkGameSelectionScreenResetGame.Location = new System.Drawing.Point(13, 293);
this.chkGameSelectionScreenResetGame.Location = new System.Drawing.Point(13, 316);
this.chkGameSelectionScreenResetGame.Margin = new System.Windows.Forms.Padding(13, 3, 3, 3);
this.chkGameSelectionScreenResetGame.Name = "chkGameSelectionScreenResetGame";
this.chkGameSelectionScreenResetGame.Size = new System.Drawing.Size(388, 17);
@ -1540,7 +1554,7 @@ namespace Mesen.GUI.Forms.Config
this.flowLayoutPanel6.Controls.Add(this.nudRewindBufferSize);
this.flowLayoutPanel6.Controls.Add(this.lblRewindMinutes);
this.flowLayoutPanel6.Dock = System.Windows.Forms.DockStyle.Fill;
this.flowLayoutPanel6.Location = new System.Drawing.Point(0, 339);
this.flowLayoutPanel6.Location = new System.Drawing.Point(0, 362);
this.flowLayoutPanel6.Margin = new System.Windows.Forms.Padding(0, 3, 0, 0);
this.flowLayoutPanel6.Name = "flowLayoutPanel6";
this.flowLayoutPanel6.Size = new System.Drawing.Size(483, 23);
@ -1611,7 +1625,7 @@ namespace Mesen.GUI.Forms.Config
// chkShowGameTimer
//
this.chkShowGameTimer.AutoSize = true;
this.chkShowGameTimer.Location = new System.Drawing.Point(13, 227);
this.chkShowGameTimer.Location = new System.Drawing.Point(13, 250);
this.chkShowGameTimer.Margin = new System.Windows.Forms.Padding(13, 3, 3, 3);
this.chkShowGameTimer.Name = "chkShowGameTimer";
this.chkShowGameTimer.Size = new System.Drawing.Size(107, 17);
@ -1622,7 +1636,7 @@ namespace Mesen.GUI.Forms.Config
// chkShowFrameCounter
//
this.chkShowFrameCounter.AutoSize = true;
this.chkShowFrameCounter.Location = new System.Drawing.Point(13, 204);
this.chkShowFrameCounter.Location = new System.Drawing.Point(13, 227);
this.chkShowFrameCounter.Margin = new System.Windows.Forms.Padding(13, 3, 3, 3);
this.chkShowFrameCounter.Name = "chkShowFrameCounter";
this.chkShowFrameCounter.Size = new System.Drawing.Size(121, 17);
@ -1633,7 +1647,7 @@ namespace Mesen.GUI.Forms.Config
// chkShowVsConfigOnLoad
//
this.chkShowVsConfigOnLoad.AutoSize = true;
this.chkShowVsConfigOnLoad.Location = new System.Drawing.Point(13, 250);
this.chkShowVsConfigOnLoad.Location = new System.Drawing.Point(13, 273);
this.chkShowVsConfigOnLoad.Margin = new System.Windows.Forms.Padding(13, 3, 3, 3);
this.chkShowVsConfigOnLoad.Name = "chkShowVsConfigOnLoad";
this.chkShowVsConfigOnLoad.Size = new System.Drawing.Size(331, 17);
@ -1681,7 +1695,7 @@ namespace Mesen.GUI.Forms.Config
this.lblGameSelectionScreenSettings.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.lblGameSelectionScreenSettings.AutoSize = true;
this.lblGameSelectionScreenSettings.ForeColor = System.Drawing.SystemColors.GrayText;
this.lblGameSelectionScreenSettings.Location = new System.Drawing.Point(0, 277);
this.lblGameSelectionScreenSettings.Location = new System.Drawing.Point(0, 300);
this.lblGameSelectionScreenSettings.Margin = new System.Windows.Forms.Padding(0, 0, 3, 0);
this.lblGameSelectionScreenSettings.Name = "lblGameSelectionScreenSettings";
this.lblGameSelectionScreenSettings.Size = new System.Drawing.Size(160, 13);
@ -1693,16 +1707,16 @@ namespace Mesen.GUI.Forms.Config
this.tmrSyncDateTime.Enabled = true;
this.tmrSyncDateTime.Tick += new System.EventHandler(this.tmrSyncDateTime_Tick);
//
// chkAlwaysOnTop
// chkShowFullPathInRecents
//
this.chkAlwaysOnTop.AutoSize = true;
this.chkAlwaysOnTop.Location = new System.Drawing.Point(13, 135);
this.chkAlwaysOnTop.Margin = new System.Windows.Forms.Padding(13, 3, 3, 3);
this.chkAlwaysOnTop.Name = "chkAlwaysOnTop";
this.chkAlwaysOnTop.Size = new System.Drawing.Size(210, 17);
this.chkAlwaysOnTop.TabIndex = 29;
this.chkAlwaysOnTop.Text = "Always display on top of other windows";
this.chkAlwaysOnTop.UseVisualStyleBackColor = true;
this.chkShowFullPathInRecents.AutoSize = true;
this.chkShowFullPathInRecents.Location = new System.Drawing.Point(13, 204);
this.chkShowFullPathInRecents.Margin = new System.Windows.Forms.Padding(13, 3, 3, 3);
this.chkShowFullPathInRecents.Name = "chkShowFullPathInRecents";
this.chkShowFullPathInRecents.Size = new System.Drawing.Size(184, 17);
this.chkShowFullPathInRecents.TabIndex = 30;
this.chkShowFullPathInRecents.Text = "Show full file path in recent file list";
this.chkShowFullPathInRecents.UseVisualStyleBackColor = true;
//
// frmPreferences
//
@ -1717,8 +1731,8 @@ namespace Mesen.GUI.Forms.Config
this.Name = "frmPreferences";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Preferences";
this.Controls.SetChildIndex(this.baseConfigPanel, 0);
this.Controls.SetChildIndex(this.tabMain, 0);
this.Controls.SetChildIndex(this.baseConfigPanel, 0);
this.tlpMain.ResumeLayout(false);
this.tlpMain.PerformLayout();
this.flowLayoutPanel2.ResumeLayout(false);
@ -1892,5 +1906,6 @@ namespace Mesen.GUI.Forms.Config
private ctrlPathSelection psGame;
private System.Windows.Forms.CheckBox chkGameOverride;
private System.Windows.Forms.CheckBox chkAlwaysOnTop;
private System.Windows.Forms.CheckBox chkShowFullPathInRecents;
}
}

View file

@ -66,6 +66,8 @@ namespace Mesen.GUI.Forms.Config
AddBinding("AutoHideMenu", chkAutoHideMenu);
AddBinding("DisplayTitleBarInfo", chkDisplayTitleBarInfo);
AddBinding("ShowFullPathInRecents", chkShowFullPathInRecents);
AddBinding("ShowFrameCounter", chkShowFrameCounter);
AddBinding("ShowGameTimer", chkShowGameTimer);

View file

@ -18,6 +18,18 @@ namespace Mesen.GUI.Forms
public string FileName { get { return Compressed ? InnerFile : System.IO.Path.GetFileName(Path); } }
public string Folder { get { return System.IO.Path.GetDirectoryName(Path); } }
public string ReadablePath
{
get
{
if(Compressed) {
return $"{Path} ({InnerFile})";
} else {
return Path;
}
}
}
public override string ToString()
{

View file

@ -189,6 +189,7 @@ namespace Mesen.GUI.Forms
this.mnuAssembler = new System.Windows.Forms.ToolStripMenuItem();
this.mnuDebugDebugger = new System.Windows.Forms.ToolStripMenuItem();
this.mnuMemoryViewer = new System.Windows.Forms.ToolStripMenuItem();
this.mnuEventViewer = new System.Windows.Forms.ToolStripMenuItem();
this.mnuPpuViewer = new System.Windows.Forms.ToolStripMenuItem();
this.mnuScriptWindow = new System.Windows.Forms.ToolStripMenuItem();
this.mnuTraceLogger = new System.Windows.Forms.ToolStripMenuItem();
@ -203,7 +204,6 @@ namespace Mesen.GUI.Forms
this.mnuReportBug = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem5 = new System.Windows.Forms.ToolStripSeparator();
this.mnuAbout = new System.Windows.Forms.ToolStripMenuItem();
this.mnuEventViewer = new System.Windows.Forms.ToolStripMenuItem();
this.panelRenderer.SuspendLayout();
this.panelInfo.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.picIcon)).BeginInit();
@ -346,49 +346,50 @@ namespace Mesen.GUI.Forms
//
this.mnuOpen.Image = global::Mesen.GUI.Properties.Resources.FolderOpen;
this.mnuOpen.Name = "mnuOpen";
this.mnuOpen.Size = new System.Drawing.Size(136, 22);
this.mnuOpen.Size = new System.Drawing.Size(152, 22);
this.mnuOpen.Text = "Open";
//
// toolStripMenuItem4
//
this.toolStripMenuItem4.Name = "toolStripMenuItem4";
this.toolStripMenuItem4.Size = new System.Drawing.Size(133, 6);
this.toolStripMenuItem4.Size = new System.Drawing.Size(149, 6);
//
// mnuSaveState
//
this.mnuSaveState.Name = "mnuSaveState";
this.mnuSaveState.Size = new System.Drawing.Size(136, 22);
this.mnuSaveState.Size = new System.Drawing.Size(152, 22);
this.mnuSaveState.Text = "Save State";
this.mnuSaveState.DropDownOpening += new System.EventHandler(this.mnuSaveState_DropDownOpening);
//
// mnuLoadState
//
this.mnuLoadState.Name = "mnuLoadState";
this.mnuLoadState.Size = new System.Drawing.Size(136, 22);
this.mnuLoadState.Size = new System.Drawing.Size(152, 22);
this.mnuLoadState.Text = "Load State";
this.mnuLoadState.DropDownOpening += new System.EventHandler(this.mnuLoadState_DropDownOpening);
//
// toolStripMenuItem7
//
this.toolStripMenuItem7.Name = "toolStripMenuItem7";
this.toolStripMenuItem7.Size = new System.Drawing.Size(133, 6);
this.toolStripMenuItem7.Size = new System.Drawing.Size(149, 6);
//
// mnuRecentFiles
//
this.mnuRecentFiles.Name = "mnuRecentFiles";
this.mnuRecentFiles.Size = new System.Drawing.Size(136, 22);
this.mnuRecentFiles.Size = new System.Drawing.Size(152, 22);
this.mnuRecentFiles.Text = "Recent Files";
this.mnuRecentFiles.DropDownOpening += new System.EventHandler(this.mnuRecentFiles_DropDownOpening);
//
// toolStripMenuItem6
//
this.toolStripMenuItem6.Name = "toolStripMenuItem6";
this.toolStripMenuItem6.Size = new System.Drawing.Size(133, 6);
this.toolStripMenuItem6.Size = new System.Drawing.Size(149, 6);
//
// mnuExit
//
this.mnuExit.Image = global::Mesen.GUI.Properties.Resources.Exit;
this.mnuExit.Name = "mnuExit";
this.mnuExit.Size = new System.Drawing.Size(136, 22);
this.mnuExit.Size = new System.Drawing.Size(152, 22);
this.mnuExit.Text = "Exit";
//
// mnuGame
@ -1493,6 +1494,13 @@ namespace Mesen.GUI.Forms
this.mnuMemoryViewer.Size = new System.Drawing.Size(165, 22);
this.mnuMemoryViewer.Text = "Memory Tools";
//
// mnuEventViewer
//
this.mnuEventViewer.Image = global::Mesen.GUI.Properties.Resources.NesEventViewer;
this.mnuEventViewer.Name = "mnuEventViewer";
this.mnuEventViewer.Size = new System.Drawing.Size(165, 22);
this.mnuEventViewer.Text = "NES Event Viewer";
//
// mnuPpuViewer
//
this.mnuPpuViewer.Image = global::Mesen.GUI.Properties.Resources.Video;
@ -1597,13 +1605,6 @@ namespace Mesen.GUI.Forms
this.mnuAbout.Text = "About";
this.mnuAbout.Click += new System.EventHandler(this.mnuAbout_Click);
//
// mnuEventViewer
//
this.mnuEventViewer.Image = global::Mesen.GUI.Properties.Resources.NesEventViewer;
this.mnuEventViewer.Name = "mnuEventViewer";
this.mnuEventViewer.Size = new System.Drawing.Size(165, 22);
this.mnuEventViewer.Text = "NES Event Viewer";
//
// frmMain
//
this.AllowDrop = true;

View file

@ -245,7 +245,6 @@ namespace Mesen.GUI.Forms
}
ConfigManager.Config.AddRecentFile(romFile, patchFileToApply);
UpdateRecentFiles();
}));
});
@ -255,6 +254,11 @@ namespace Mesen.GUI.Forms
MesenMsgBox.Show("FileNotFound", MessageBoxButtons.OK, MessageBoxIcon.Error, romFile.Path);
}
}
private void mnuRecentFiles_DropDownOpening(object sender, EventArgs e)
{
UpdateRecentFiles();
}
private void UpdateRecentFiles()
{
@ -276,7 +280,6 @@ namespace Mesen.GUI.Forms
clearHistory.Image = Resources.Close;
clearHistory.Click += (object sender, EventArgs args) => {
ConfigManager.Config.RecentFiles = new List<RecentItem>();
UpdateRecentFiles();
};
mnuRecentFiles.DropDownItems.Add(clearHistory);
}

View file

@ -127,14 +127,12 @@ namespace Mesen.GUI.Forms
ResourceHelper.UpdateEmuLanguage();
ResourceHelper.ApplyResources(this);
UpdateMenus();
UpdateRecentFiles();
InitializeNsfMode(true);
ctrlRecentGames.UpdateGameInfo();
TopMost = ConfigManager.Config.PreferenceInfo.AlwaysOnTop;
} else {
UpdateVideoSettings();
UpdateMenus();
UpdateRecentFiles();
UpdateViewerSize();
}
}