Mesen-X/GUI.NET/Debugger/frmDebuggerColors.cs

95 lines
3.9 KiB
C#

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Mesen.GUI.Config;
using Mesen.GUI.Forms;
namespace Mesen.GUI.Debugger
{
public partial class frmDebuggerColors : BaseConfigForm
{
public frmDebuggerColors()
{
InitializeComponent();
picVerifiedData.BackColor = ConfigManager.Config.DebugInfo.CodeVerifiedDataColor;
picUnidentifiedData.BackColor = ConfigManager.Config.DebugInfo.CodeUnidentifiedDataColor;
picUnexecutedCode.BackColor = ConfigManager.Config.DebugInfo.CodeUnexecutedCodeColor;
picExecBreakpoint.BackColor = ConfigManager.Config.DebugInfo.CodeExecBreakpointColor;
picWriteBreakpoint.BackColor = ConfigManager.Config.DebugInfo.CodeWriteBreakpointColor;
picReadBreakpoint.BackColor = ConfigManager.Config.DebugInfo.CodeReadBreakpointColor;
picActiveStatement.BackColor = ConfigManager.Config.DebugInfo.CodeActiveStatementColor;
picEffectiveAddress.BackColor = ConfigManager.Config.DebugInfo.CodeEffectiveAddressColor;
picOpcode.BackColor = ConfigManager.Config.DebugInfo.AssemblerOpcodeColor;
picLabelDefinition.BackColor = ConfigManager.Config.DebugInfo.AssemblerLabelDefinitionColor;
picImmediate.BackColor = ConfigManager.Config.DebugInfo.AssemblerImmediateColor;
picAddress.BackColor = ConfigManager.Config.DebugInfo.AssemblerAddressColor;
picComment.BackColor = ConfigManager.Config.DebugInfo.AssemblerCommentColor;
}
private void picColorPicker_Click(object sender, EventArgs e)
{
using(ColorDialog cd = new ColorDialog()) {
cd.SolidColorOnly = true;
cd.AllowFullOpen = true;
cd.FullOpen = true;
cd.Color = ((PictureBox)sender).BackColor;
if(cd.ShowDialog() == DialogResult.OK) {
((PictureBox)sender).BackColor = cd.Color;
}
}
}
protected override void OnFormClosing(FormClosingEventArgs e)
{
base.OnFormClosing(e);
if(DialogResult == DialogResult.OK) {
ConfigManager.Config.DebugInfo.CodeVerifiedDataColor = picVerifiedData.BackColor;
ConfigManager.Config.DebugInfo.CodeUnidentifiedDataColor = picUnidentifiedData.BackColor;
ConfigManager.Config.DebugInfo.CodeUnexecutedCodeColor = picUnexecutedCode.BackColor;
ConfigManager.Config.DebugInfo.CodeExecBreakpointColor = picExecBreakpoint.BackColor;
ConfigManager.Config.DebugInfo.CodeWriteBreakpointColor = picWriteBreakpoint.BackColor;
ConfigManager.Config.DebugInfo.CodeReadBreakpointColor = picReadBreakpoint.BackColor;
ConfigManager.Config.DebugInfo.CodeActiveStatementColor = picActiveStatement.BackColor;
ConfigManager.Config.DebugInfo.CodeEffectiveAddressColor = picEffectiveAddress.BackColor;
ConfigManager.Config.DebugInfo.AssemblerOpcodeColor = picOpcode.BackColor;
ConfigManager.Config.DebugInfo.AssemblerLabelDefinitionColor = picLabelDefinition.BackColor;
ConfigManager.Config.DebugInfo.AssemblerImmediateColor = picImmediate.BackColor;
ConfigManager.Config.DebugInfo.AssemblerAddressColor = picAddress.BackColor;
ConfigManager.Config.DebugInfo.AssemblerCommentColor = picComment.BackColor;
ConfigManager.ApplyChanges();
}
}
private void btnReset_Click(object sender, EventArgs e)
{
picVerifiedData.BackColor = Color.FromArgb(255, 252, 236);
picUnidentifiedData.BackColor = Color.FromArgb(255, 242, 242);
picUnexecutedCode.BackColor = Color.FromArgb(225, 244, 228);
picExecBreakpoint.BackColor = Color.FromArgb(140, 40, 40);
picWriteBreakpoint.BackColor = Color.FromArgb(40, 120, 80);
picReadBreakpoint.BackColor = Color.FromArgb(40, 40, 200);
picActiveStatement.BackColor = Color.Yellow;
picEffectiveAddress.BackColor = Color.SteelBlue;
picOpcode.BackColor = Color.FromArgb(22, 37, 37);
picLabelDefinition.BackColor = Color.Blue;
picImmediate.BackColor = Color.Chocolate;
picAddress.BackColor = Color.DarkRed;
picComment.BackColor = Color.Green;
}
}
}