tastudio: a whole bunch of actions shouldn't be possible with no selection

This commit is contained in:
feos 2018-03-12 21:35:54 +03:00
parent c839bffc33
commit 61bf9b67a8
1 changed files with 88 additions and 75 deletions

View File

@ -300,6 +300,8 @@ namespace BizHawk.Client.EmuHawk
DeleteFramesMenuItem.Enabled = DeleteFramesMenuItem.Enabled =
CloneFramesMenuItem.Enabled = CloneFramesMenuItem.Enabled =
TruncateMenuItem.Enabled = TruncateMenuItem.Enabled =
InsertFrameMenuItem.Enabled =
InsertNumFramesMenuItem.Enabled =
TasView.AnyRowsSelected; TasView.AnyRowsSelected;
ReselectClipboardMenuItem.Enabled = ReselectClipboardMenuItem.Enabled =
@ -451,6 +453,8 @@ namespace BizHawk.Client.EmuHawk
} }
private void PasteMenuItem_Click(object sender, EventArgs e) private void PasteMenuItem_Click(object sender, EventArgs e)
{
if (TasView.AnyRowsSelected)
{ {
// TODO: if highlighting 2 rows and pasting 3, only paste 2 of them // TODO: if highlighting 2 rows and pasting 3, only paste 2 of them
// FCEUX Taseditor does't do this, but I think it is the expected behavior in editor programs // FCEUX Taseditor does't do this, but I think it is the expected behavior in editor programs
@ -495,8 +499,11 @@ namespace BizHawk.Client.EmuHawk
} }
} }
} }
}
private void PasteInsertMenuItem_Click(object sender, EventArgs e) private void PasteInsertMenuItem_Click(object sender, EventArgs e)
{
if (TasView.AnyRowsSelected)
{ {
var wasPaused = Mainform.EmulatorPaused; var wasPaused = Mainform.EmulatorPaused;
@ -539,6 +546,7 @@ namespace BizHawk.Client.EmuHawk
} }
} }
} }
}
private void CutMenuItem_Click(object sender, EventArgs e) private void CutMenuItem_Click(object sender, EventArgs e)
{ {
@ -667,6 +675,8 @@ namespace BizHawk.Client.EmuHawk
} }
private void InsertFrameMenuItem_Click(object sender, EventArgs e) private void InsertFrameMenuItem_Click(object sender, EventArgs e)
{
if (TasView.AnyRowsSelected)
{ {
var wasPaused = Mainform.EmulatorPaused; var wasPaused = Mainform.EmulatorPaused;
var insertionFrame = TasView.AnyRowsSelected ? TasView.FirstSelectedIndex.Value : 0; var insertionFrame = TasView.AnyRowsSelected ? TasView.FirstSelectedIndex.Value : 0;
@ -684,11 +694,13 @@ namespace BizHawk.Client.EmuHawk
RefreshDialog(); RefreshDialog();
} }
} }
}
private void InsertNumFramesMenuItem_Click(object sender, EventArgs e) private void InsertNumFramesMenuItem_Click(object sender, EventArgs e)
{ {
int insertionFrame = TasView.AnyRowsSelected ? TasView.FirstSelectedIndex.Value : 0; if (TasView.AnyRowsSelected)
{
int insertionFrame = TasView.FirstSelectedIndex.Value;
var framesPrompt = new FramesPrompt(); var framesPrompt = new FramesPrompt();
DialogResult result = framesPrompt.ShowDialog(); DialogResult result = framesPrompt.ShowDialog();
if (result == DialogResult.OK) if (result == DialogResult.OK)
@ -696,6 +708,7 @@ namespace BizHawk.Client.EmuHawk
InsertNumFrames(insertionFrame, framesPrompt.Frames); InsertNumFrames(insertionFrame, framesPrompt.Frames);
} }
} }
}
private void TruncateMenuItem_Click(object sender, EventArgs e) private void TruncateMenuItem_Click(object sender, EventArgs e)
{ {