Skip to content

Commit 08aede3

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 b497b9c commit 08aede3

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
@@ -570,7 +570,7 @@ private void InsertNumFramesMenuItem_Click(object sender, EventArgs e)
570570
using var framesPrompt = new FramesPrompt();
571571
if (framesPrompt.ShowDialogOnScreen().IsOk())
572572
{
573-
InsertNumFrames(insertionFrame, framesPrompt.Frames);
573+
CurrentTasMovie.InsertEmptyFrame(insertionFrame, framesPrompt.Frames);
574574
}
575575
}
576576
}

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)