Skip to content

Commit 136017e

Browse files
committed
While I'm cleaning up stuff, make TAStudioLuaLibrary own this logic that only it uses instead of TAStudio worrying about how to batch them.
1 parent 505dc35 commit 136017e

File tree

3 files changed

+14
-38
lines changed

3 files changed

+14
-38
lines changed

src/BizHawk.Client.EmuHawk/tools/Lua/Libraries/TAStudioLuaLibrary.cs

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -336,13 +336,23 @@ public void ApplyInputChanges()
336336
}
337337
break;
338338
case LuaChangeTypes.InsertFrames:
339-
Tastudio.InsertNumFrames(_changeList[i].Frame, _changeList[i].Number);
339+
Tastudio.CurrentTasMovie.InsertEmptyFrame(_changeList[i].Frame, _changeList[i].Number);
340340
break;
341341
case LuaChangeTypes.DeleteFrames:
342-
Tastudio.DeleteFrames(_changeList[i].Frame, _changeList[i].Number);
342+
int endExclusive = _changeList[i].Frame + _changeList[i].Number;
343+
endExclusive = Math.Min(Tastudio.CurrentTasMovie.InputLogLength, endExclusive);
344+
if (_changeList[i].Frame < endExclusive)
345+
{
346+
Tastudio.CurrentTasMovie.RemoveFrames(_changeList[i].Frame, endExclusive);
347+
}
343348
break;
344349
case LuaChangeTypes.ClearFrames:
345-
Tastudio.ClearFrames(_changeList[i].Frame, _changeList[i].Number);
350+
endExclusive = _changeList[i].Frame + _changeList[i].Number;
351+
endExclusive = Math.Min(Tastudio.CurrentTasMovie.InputLogLength, endExclusive);
352+
for (int j = _changeList[i].Frame; j < endExclusive; j++)
353+
{
354+
Tastudio.CurrentTasMovie.ClearFrame(j);
355+
}
346356
break;
347357
}
348358
}

src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -571,7 +571,7 @@ private void InsertNumFramesMenuItem_Click(object sender, EventArgs e)
571571
using var framesPrompt = new FramesPrompt();
572572
if (framesPrompt.ShowDialogOnScreen().IsOk())
573573
{
574-
InsertNumFrames(insertionFrame, framesPrompt.Frames);
574+
CurrentTasMovie.InsertEmptyFrame(insertionFrame, framesPrompt.Frames);
575575
}
576576
}
577577
}

src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs

Lines changed: 0 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -900,40 +900,6 @@ private void SetSplicer()
900900
SplicerStatusLabel.Text = temp;
901901
}
902902

903-
public void InsertNumFrames(int insertionFrame, int numberOfFrames)
904-
{
905-
if (insertionFrame <= CurrentTasMovie.InputLogLength)
906-
{
907-
CurrentTasMovie.InsertEmptyFrame(insertionFrame, numberOfFrames);
908-
}
909-
}
910-
911-
public void DeleteFrames(int beginningFrame, int numberOfFrames)
912-
{
913-
if (beginningFrame < CurrentTasMovie.InputLogLength)
914-
{
915-
int[] framesToRemove = Enumerable.Range(beginningFrame, numberOfFrames).ToArray();
916-
CurrentTasMovie.RemoveFrames(framesToRemove);
917-
SetSplicer();
918-
}
919-
}
920-
921-
public void ClearFrames(int beginningFrame, int numberOfFrames)
922-
{
923-
if (beginningFrame < CurrentTasMovie.InputLogLength)
924-
{
925-
BeginBatchEdit();
926-
927-
int last = Math.Min(beginningFrame + numberOfFrames, CurrentTasMovie.InputLogLength);
928-
for (int i = beginningFrame; i < last; i++)
929-
{
930-
CurrentTasMovie.ClearFrame(i);
931-
}
932-
933-
EndBatchEdit();
934-
}
935-
}
936-
937903
private void Tastudio_Closing(object sender, FormClosingEventArgs e)
938904
{
939905
if (!_initialized)

0 commit comments

Comments
 (0)