PKHeX/SAV/SAV_BoxLayout.cs

68 lines
2.4 KiB
C#
Raw Normal View History

2014-06-28 21:22:05 +00:00
using System;
using System.Drawing;
using System.Windows.Forms;
namespace PKHeX
{
public partial class SAV_BoxLayout : Form
{
public SAV_BoxLayout(int box)
2014-06-28 21:22:05 +00:00
{
InitializeComponent();
Util.TranslateInterface(this, Main.curlanguage);
editing = true;
2015-12-15 06:14:57 +00:00
2014-08-02 06:03:14 +00:00
// Repopulate Wallpaper names
CB_BG.Items.Clear();
foreach (string wallpaper in Main.wallpapernames)
CB_BG.Items.Add(wallpaper);
2015-12-15 06:14:57 +00:00
2014-08-02 06:03:14 +00:00
// Go
2016-02-02 06:33:10 +00:00
MT_BG1.Text = sav.Data[sav.PCFlags + 0].ToString();
CB_Unlocked.SelectedIndex = sav.Data[sav.PCFlags + 1] - 1;
MT_BG2.Text = sav.Data[sav.PCFlags + 2].ToString();
LB_BoxSelect.SelectedIndex = box;
2014-06-28 21:22:05 +00:00
}
private readonly SAV6 sav = new SAV6((byte[])Main.SAV.Data.Clone());
private bool editing;
2014-06-28 21:22:05 +00:00
private void changeBox(object sender, EventArgs e)
{
editing = true;
2016-02-02 06:33:10 +00:00
int bgoff = sav.PCBackgrounds + LB_BoxSelect.SelectedIndex;
CB_BG.SelectedIndex = sav.Data[bgoff];
TB_BoxName.Text = sav.getBoxName(LB_BoxSelect.SelectedIndex);
2014-06-28 21:22:05 +00:00
editing = false;
}
private void changeBoxDetails(object sender, EventArgs e)
{
2015-12-15 06:14:57 +00:00
if (!editing)
2016-02-02 06:33:10 +00:00
sav.setBoxName(LB_BoxSelect.SelectedIndex, TB_BoxName.Text);
2014-06-28 21:22:05 +00:00
}
private void B_Cancel_Click(object sender, EventArgs e)
{
Close();
}
private void B_Save_Click(object sender, EventArgs e)
{
2016-02-02 06:33:10 +00:00
sav.Data[sav.PCFlags + 0] = (byte)Util.ToUInt32(MT_BG1.Text);
sav.Data[sav.PCFlags + 1] = (byte)Util.ToUInt32(CB_Unlocked.Text);
sav.Data[sav.PCFlags + 2] = (byte)Util.ToUInt32(MT_BG2.Text);
2015-12-15 06:14:57 +00:00
2016-02-02 06:33:10 +00:00
Array.Copy(sav.Data, Main.SAV.Data, sav.Data.Length);
Main.SAV.Edited = true;
2014-06-28 21:22:05 +00:00
Close();
}
2014-08-02 06:03:14 +00:00
private void changeBoxBG(object sender, EventArgs e)
{
2015-12-15 06:14:57 +00:00
if (!editing)
2016-02-02 06:33:10 +00:00
sav.Data[Main.SAV.PCBackgrounds + LB_BoxSelect.SelectedIndex] = (byte)CB_BG.SelectedIndex;
2014-11-22 03:26:16 +00:00
2016-02-02 06:33:10 +00:00
string imagename = "box_wp" + (CB_BG.SelectedIndex + 1).ToString("00"); if (sav.ORAS && CB_BG.SelectedIndex + 1 > 16) imagename += "o";
2014-11-22 03:26:16 +00:00
PAN_BG.BackgroundImage = (Image)Properties.Resources.ResourceManager.GetObject(imagename);
2014-08-02 06:03:14 +00:00
}
2014-06-28 21:22:05 +00:00
}
}