2011-05-08 11:29:34 +00:00
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.ComponentModel;
|
|
|
|
|
using System.Data;
|
|
|
|
|
using System.Drawing;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Windows.Forms;
|
|
|
|
|
|
2011-05-22 18:38:44 +00:00
|
|
|
|
namespace BizHawk.MultiClient
|
2011-05-08 11:29:34 +00:00
|
|
|
|
{
|
2011-06-11 22:32:12 +00:00
|
|
|
|
public partial class TAStudio : Form
|
|
|
|
|
{
|
|
|
|
|
int defaultWidth; //For saving the default size of the dialog, so the user can restore if desired
|
|
|
|
|
int defaultHeight;
|
|
|
|
|
|
|
|
|
|
public TAStudio()
|
|
|
|
|
{
|
|
|
|
|
InitializeComponent();
|
|
|
|
|
Closing += (o, e) => SaveConfigSettings();
|
|
|
|
|
TASView.QueryItemText += new QueryItemTextHandler(TASView_QueryItemText);
|
|
|
|
|
TASView.QueryItemBkColor += new QueryItemBkColorHandler(TASView_QueryItemBkColor);
|
|
|
|
|
TASView.VirtualMode = true;
|
|
|
|
|
}
|
|
|
|
|
|
2011-06-11 22:59:21 +00:00
|
|
|
|
public void UpdateValues()
|
2011-06-11 22:32:12 +00:00
|
|
|
|
{
|
2011-06-11 22:59:21 +00:00
|
|
|
|
DisplayList();
|
|
|
|
|
}
|
2011-06-11 22:32:12 +00:00
|
|
|
|
|
2011-06-11 22:59:21 +00:00
|
|
|
|
private void TASView_QueryItemBkColor(int index, int column, ref Color color)
|
|
|
|
|
{
|
|
|
|
|
if (index == Global.Emulator.Frame)
|
|
|
|
|
color = Color.LightGreen;
|
2011-06-11 22:32:12 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void TASView_QueryItemText(int index, int column, out string text)
|
|
|
|
|
{
|
|
|
|
|
text = "";
|
2011-06-11 22:59:21 +00:00
|
|
|
|
if (column == 0)
|
|
|
|
|
text = String.Format("{0:#,##0}", index);
|
|
|
|
|
if (column == 1)
|
|
|
|
|
text = Global.MainForm.UserMovie.GetInputFrame(index);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void DisplayList()
|
|
|
|
|
{
|
|
|
|
|
TASView.ItemCount = Global.MainForm.UserMovie.GetMovieLength();
|
2011-06-11 23:54:35 +00:00
|
|
|
|
TASView.ensureVisible(Global.Emulator.Frame);
|
2011-06-11 22:32:12 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void TAStudio_Load(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
LoadConfigSettings();
|
|
|
|
|
ReadOnlyCheckBox.Checked = Global.MainForm.ReadOnly;
|
2011-06-11 22:59:21 +00:00
|
|
|
|
DisplayList();
|
2011-06-11 22:32:12 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void LoadConfigSettings()
|
|
|
|
|
{
|
|
|
|
|
defaultWidth = Size.Width; //Save these first so that the user can restore to its original size
|
|
|
|
|
defaultHeight = Size.Height;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void SaveConfigSettings()
|
|
|
|
|
{
|
|
|
|
|
Global.Config.TASWndx = this.Location.X;
|
|
|
|
|
Global.Config.TASWndy = this.Location.Y;
|
|
|
|
|
Global.Config.TASWidth = this.Right - this.Left;
|
|
|
|
|
Global.Config.TASHeight = this.Bottom - this.Top;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void Restart()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
this.Close();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void settingsToolStripMenuItem_DropDownOpened(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
saveWindowPositionToolStripMenuItem.Checked = Global.Config.TAStudioSaveWindowPosition;
|
|
|
|
|
autoloadToolStripMenuItem.Checked = Global.Config.AutoloadTAStudio;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void saveWindowPositionToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
Global.Config.TAStudioSaveWindowPosition ^= true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void restoreWindowToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
this.Size = new System.Drawing.Size(defaultWidth, defaultHeight);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void StopButton_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
Global.MainForm.StopUserMovie();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void FrameAdvanceButton_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
2011-06-11 19:39:34 +00:00
|
|
|
|
Global.MainForm.PressFrameAdvance = true;
|
2011-06-11 22:32:12 +00:00
|
|
|
|
}
|
2011-05-22 18:38:44 +00:00
|
|
|
|
|
2011-06-11 22:32:12 +00:00
|
|
|
|
private void RewindButton_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
2011-06-11 19:39:34 +00:00
|
|
|
|
Global.MainForm.PressRewind = true;
|
2011-06-11 22:32:12 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void PauseButton_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
Global.MainForm.TogglePause();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void autoloadToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
Global.Config.AutoloadTAStudio ^= true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void checkBox1_CheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
2011-06-11 23:54:35 +00:00
|
|
|
|
Global.MainForm.SetReadOnly(ReadOnlyCheckBox.Checked);
|
2011-06-11 22:32:12 +00:00
|
|
|
|
if (ReadOnlyCheckBox.Checked)
|
|
|
|
|
{
|
|
|
|
|
ReadOnlyCheckBox.BackColor = System.Drawing.SystemColors.Control;
|
2011-06-12 00:14:19 +00:00
|
|
|
|
toolTip1.SetToolTip(this.ReadOnlyCheckBox, "Currently Read-Only Mode");
|
2011-06-11 22:32:12 +00:00
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
ReadOnlyCheckBox.BackColor = Color.LightCoral;
|
2011-06-12 00:14:19 +00:00
|
|
|
|
toolTip1.SetToolTip(this.ReadOnlyCheckBox, "Currently Read+Write Mode");
|
2011-06-11 22:32:12 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void toolStripButton1_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
Global.MainForm.PlayMovieFromBeginning();
|
|
|
|
|
}
|
2011-06-11 23:54:35 +00:00
|
|
|
|
|
|
|
|
|
private void RewindToBeginning_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
2011-06-12 00:14:19 +00:00
|
|
|
|
Global.MainForm.Rewind(Global.Emulator.Frame);
|
|
|
|
|
DisplayList();
|
2011-06-11 23:54:35 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void FastForwardToEnd_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void editToolStripMenuItem_DropDownOpened(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (Global.MainForm.ReadOnly)
|
|
|
|
|
{
|
|
|
|
|
insertFrameToolStripMenuItem.Enabled = false;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
insertFrameToolStripMenuItem.Enabled = true;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void insertFrameToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (Global.MainForm.ReadOnly)
|
|
|
|
|
return;
|
|
|
|
|
}
|
2011-06-12 01:50:08 +00:00
|
|
|
|
|
|
|
|
|
private void Pad1_Paint(object sender, PaintEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
2011-06-11 22:32:12 +00:00
|
|
|
|
}
|
2011-05-08 11:29:34 +00:00
|
|
|
|
}
|