395 lines
10 KiB
C#
395 lines
10 KiB
C#
using System;
|
|
using System.Drawing;
|
|
using System.Windows.Forms;
|
|
|
|
using BizHawk.Emulation.Cores.Calculators;
|
|
using BizHawk.Client.Common;
|
|
|
|
namespace BizHawk.Client.EmuHawk
|
|
{
|
|
public partial class TI83KeyPad : Form, IToolForm
|
|
{
|
|
//TODO: if wndx/wndy are negative, load window on the right edge of emulator window
|
|
|
|
public bool AskSave() { return true; }
|
|
public bool UpdateBefore { get { return false; } }
|
|
|
|
public TI83KeyPad()
|
|
{
|
|
InitializeComponent();
|
|
Closing += (o, e) => SaveConfigSettings();
|
|
}
|
|
|
|
private void TI83KeyPad_Load(object sender, EventArgs e)
|
|
{
|
|
if (Global.Config.TI83KeypadSaveWindowPosition && Global.Config.TI83KeyPadWndx >= 0 && Global.Config.TI83KeyPadWndy >= 0)
|
|
Location = new Point(Global.Config.TI83KeyPadWndx, Global.Config.TI83KeyPadWndy);
|
|
if (Global.Config.TI83ToolTips)
|
|
SetToolTips();
|
|
}
|
|
|
|
private void SetToolTips()
|
|
{
|
|
//Set button hotkey mapping into tooltips
|
|
var mappings = Global.Config.AllTrollers["TI83 Controller"];
|
|
toolTip1.SetToolTip(ZERO, mappings["0"]);
|
|
toolTip1.SetToolTip(ONE, mappings["1"]);
|
|
toolTip1.SetToolTip(TWO, mappings["2"]);
|
|
toolTip1.SetToolTip(THREE, mappings["3"]);
|
|
toolTip1.SetToolTip(FOUR, mappings["4"]);
|
|
toolTip1.SetToolTip(FIVE, mappings["5"]);
|
|
toolTip1.SetToolTip(SIX, mappings["6"]);
|
|
toolTip1.SetToolTip(SEVEN, mappings["7"]);
|
|
toolTip1.SetToolTip(EIGHT, mappings["8"]);
|
|
toolTip1.SetToolTip(NINE, mappings["9"]);
|
|
toolTip1.SetToolTip(PERIOD, mappings["DOT"]);
|
|
toolTip1.SetToolTip(ON, mappings["ON"]);
|
|
toolTip1.SetToolTip(ENTER, mappings["ENTER"]);
|
|
toolTip1.SetToolTip(UP, mappings["UP"]);
|
|
toolTip1.SetToolTip(DOWN, mappings["DOWN"]);
|
|
toolTip1.SetToolTip(LEFT, mappings["LEFT"]);
|
|
toolTip1.SetToolTip(RIGHT, mappings["RIGHT"]);
|
|
toolTip1.SetToolTip(PLUS, mappings["PLUS"]);
|
|
toolTip1.SetToolTip(MINUS, mappings["MINUS"]);
|
|
toolTip1.SetToolTip(MULTIPLY, mappings["MULTIPLY"]);
|
|
toolTip1.SetToolTip(DIVIDE, mappings["DIVIDE"]);
|
|
toolTip1.SetToolTip(CLEAR, mappings["CLEAR"]);
|
|
toolTip1.SetToolTip(EXP, mappings["EXP"]);
|
|
toolTip1.SetToolTip(DASH, mappings["DASH"]);
|
|
toolTip1.SetToolTip(PARACLOSE, mappings["PARACLOSE"]);
|
|
toolTip1.SetToolTip(PARAOPEN, mappings["PARAOPEN"]);
|
|
toolTip1.SetToolTip(TAN, mappings["TAN"]);
|
|
toolTip1.SetToolTip(VARS, mappings["VARS"]);
|
|
toolTip1.SetToolTip(COS, mappings["COS"]);
|
|
toolTip1.SetToolTip(PRGM, mappings["PRGM"]);
|
|
toolTip1.SetToolTip(STAT, mappings["STAT"]);
|
|
toolTip1.SetToolTip(MATRIX, mappings["MATRIX"]);
|
|
toolTip1.SetToolTip(XT, mappings["X"]);
|
|
toolTip1.SetToolTip(STO, mappings["STO"]);
|
|
toolTip1.SetToolTip(LN, mappings["LN"]);
|
|
toolTip1.SetToolTip(LOG, mappings["LOG"]);
|
|
toolTip1.SetToolTip(SQUARED, mappings["SQUARED"]);
|
|
toolTip1.SetToolTip(NEG1, mappings["NEG1"]);
|
|
toolTip1.SetToolTip(MATH, mappings["MATH"]);
|
|
toolTip1.SetToolTip(ALPHA, mappings["ALPHA"]);
|
|
toolTip1.SetToolTip(GRAPH, mappings["GRAPH"]);
|
|
toolTip1.SetToolTip(TRACE, mappings["TRACE"]);
|
|
toolTip1.SetToolTip(ZOOM, mappings["ZOOM"]);
|
|
toolTip1.SetToolTip(WINDOW, mappings["WINDOW"]);
|
|
toolTip1.SetToolTip(YEQUAL, mappings["Y"]);
|
|
toolTip1.SetToolTip(SECOND, mappings["SECOND"]);
|
|
toolTip1.SetToolTip(MODE, mappings["MODE"]);
|
|
toolTip1.SetToolTip(DEL, mappings["DEL"]);
|
|
toolTip1.SetToolTip(COMMA, mappings["COMMA"]);
|
|
toolTip1.SetToolTip(SIN, mappings["SIN"]);
|
|
}
|
|
|
|
public void StopToolTips()
|
|
{
|
|
toolTip1.RemoveAll();
|
|
}
|
|
|
|
public void UpdateValues()
|
|
{
|
|
if (!(Global.Emulator is TI83))
|
|
{
|
|
Close();
|
|
}
|
|
}
|
|
|
|
public void Restart()
|
|
{
|
|
if (!(Global.Emulator is TI83))
|
|
{
|
|
Close();
|
|
}
|
|
}
|
|
|
|
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
Close();
|
|
}
|
|
|
|
private void SaveConfigSettings()
|
|
{
|
|
Global.Config.TI83KeyPadWndx = Location.X;
|
|
Global.Config.TI83KeyPadWndy = Location.Y;
|
|
}
|
|
|
|
private void saveWindowPositionToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
Global.Config.TI83KeypadSaveWindowPosition ^= true;
|
|
}
|
|
|
|
private void optionsToolStripMenuItem_DropDownOpened(object sender, EventArgs e)
|
|
{
|
|
saveWindowPositionToolStripMenuItem.Checked = Global.Config.TI83KeypadSaveWindowPosition;
|
|
showHotkToolStripMenuItem.Checked = Global.Config.TI83ToolTips;
|
|
}
|
|
|
|
private void button42_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("ENTER");
|
|
}
|
|
|
|
private void button43_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("DASH");
|
|
}
|
|
|
|
private void button39_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("2");
|
|
}
|
|
|
|
private void ONE_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("1");
|
|
}
|
|
|
|
private void THREE_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("3");
|
|
}
|
|
|
|
private void FOUR_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("4");
|
|
}
|
|
|
|
private void FIVE_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("5");
|
|
}
|
|
|
|
private void SIX_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("6");
|
|
}
|
|
|
|
private void SEVEN_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("7");
|
|
}
|
|
|
|
private void EIGHT_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("8");
|
|
}
|
|
|
|
private void NINE_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("9");
|
|
}
|
|
|
|
private void ON_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("ON");
|
|
}
|
|
|
|
private void STO_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("STO");
|
|
}
|
|
|
|
private void PLUS_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("PLUS");
|
|
}
|
|
|
|
private void LN_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("LN");
|
|
}
|
|
|
|
private void MINUS_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("MINUS");
|
|
}
|
|
|
|
private void LOG_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("LOG");
|
|
}
|
|
|
|
private void MULTIPLY_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("MULTIPLY");
|
|
}
|
|
|
|
private void button26_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("SQUARED");
|
|
}
|
|
|
|
private void button25_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("COMMA");
|
|
}
|
|
|
|
private void button24_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("PARAOPEN");
|
|
}
|
|
|
|
private void button23_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("PARACLOSE");
|
|
}
|
|
|
|
private void button22_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("DIVIDE");
|
|
}
|
|
|
|
private void button17_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("NEG1");
|
|
}
|
|
|
|
private void button18_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("SIN");
|
|
}
|
|
|
|
private void button19_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("COS");
|
|
}
|
|
|
|
private void button20_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("TAN");
|
|
}
|
|
|
|
private void button21_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("EXP");
|
|
}
|
|
|
|
private void button12_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("MATH");
|
|
}
|
|
|
|
private void button13_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("MATRIX");
|
|
}
|
|
|
|
private void button14_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("PRGM");
|
|
}
|
|
|
|
private void button15_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("VARS");
|
|
}
|
|
|
|
private void button16_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("CLEAR");
|
|
}
|
|
|
|
private void button11_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("ALPHA");
|
|
}
|
|
|
|
private void button4_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("X");
|
|
}
|
|
|
|
private void button10_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("STAT");
|
|
}
|
|
|
|
private void button5_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("2ND");
|
|
}
|
|
|
|
private void button2_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("MODE");
|
|
}
|
|
|
|
private void button3_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("DEL");
|
|
}
|
|
|
|
private void button47_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("LEFT");
|
|
}
|
|
|
|
private void button49_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("DOWN");
|
|
}
|
|
|
|
private void button48_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("RIGHT");
|
|
}
|
|
|
|
private void button50_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("UP");
|
|
}
|
|
|
|
private void button1_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("Y");
|
|
}
|
|
|
|
private void button6_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("WINDOW");
|
|
}
|
|
|
|
private void button7_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("ZOOM");
|
|
}
|
|
|
|
private void button8_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("TRACE");
|
|
}
|
|
|
|
private void button9_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("GRAPH");
|
|
}
|
|
|
|
private void PERIOD_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("DOT");
|
|
}
|
|
|
|
private void showHotkToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
Global.Config.TI83ToolTips ^= true;
|
|
|
|
if (Global.Config.TI83ToolTips)
|
|
{
|
|
SetToolTips();
|
|
}
|
|
else
|
|
{
|
|
StopToolTips();
|
|
}
|
|
}
|
|
|
|
private void ZERO_Click(object sender, EventArgs e)
|
|
{
|
|
Global.ClickyVirtualPadController.Click("0");
|
|
}
|
|
}
|
|
}
|