Worms4Editor/W4Gui/Tabs/VariablesTab/UIntVariablesTab.cs

70 lines
2.5 KiB
C#

using LibW4M.Data.Highscores;
using LibW4M.Data.Teams;
using LibW4M.Data.X;
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;
namespace W4Gui.Tabs.VariablesTab
{
public partial class UIntVariablesTab : TabEntry
{
public UIntVariablesTab()
{
InitializeComponent();
this.variablesList.List.Selected += variablesList_Selected;
this.variablesList.List.Unselected += variablesList_Unselected;
}
public override void SaveFromControl()
{
if (this.variablesList.List.IsItemSelected)
variablesList_Unselected(null, null);
}
public override void LoadIntoControl()
{
this.variablesList.List.LoadArray(DataManager.SaveFile.XDataBank.UIntResourceDetails);
variablePanel.Enabled = false;
}
private void variablesList_Unselected(object? sender, EventArgs? e)
{
UIntResourceDetail variableData = DataManager.SaveFile.XDataBank.UIntResourceDetails[variablesList.List.LastSelected] as UIntResourceDetail;
variablePanel.SaveResourceData(ref variableData);
variablesList.List.UpdateName(variablesList.List.LastSelected, variableData.FriendlyName);
}
private void variablesList_Selected(object? sender, EventArgs? e)
{
UIntResourceDetail variableData = DataManager.SaveFile.XDataBank.UIntResourceDetails[variablesList.List.CurrentlySelected] as UIntResourceDetail;
variablePanel.LoadResourceData(variableData);
variablePanel.Enabled = true;
}
private void variablesList_NewButton(object sender, EventArgs e)
{
DataManager.SaveFile.XDataBank.CreateUInt();
variablesList.List.Add(DataManager.SaveFile.XDataBank.UIntResourceDetails.Last().FriendlyName);
variablesList.List.SelectedIndex = (variablesList.List.Items.Count - 1);
}
private void variablesList_DelButton(object sender, EventArgs e)
{
int sel = variablesList.List.CurrentlySelected;
UIntResourceDetail variableData = DataManager.SaveFile.XDataBank.UIntResourceDetails[sel] as UIntResourceDetail;
DataManager.SaveFile.XDataBank.Delete(variableData);
variablesList.List.Delete(sel);
}
}
}