You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
84 lines
2.3 KiB
C#
84 lines
2.3 KiB
C#
using System;
|
|
using System.ComponentModel;
|
|
using System.ComponentModel.Design;
|
|
using System.Drawing;
|
|
using System.IO;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
using Be.Windows.Forms;
|
|
using NetMFAPatcher.MMFParser.Data;
|
|
using NetMFAPatcher.Utils;
|
|
|
|
namespace NetMFAPatcher.GUI
|
|
{
|
|
public partial class PackDataForm : Form
|
|
{
|
|
private PackData data;
|
|
public PackDataForm(PackData data,Color color)
|
|
{
|
|
InitializeComponent();
|
|
listBox1.ForeColor = color;
|
|
dumpButton.ForeColor = color;
|
|
dumpAllButton.ForeColor = color;
|
|
infoLabel.ForeColor = color;
|
|
this.data = data;
|
|
|
|
|
|
}
|
|
|
|
private void HexViewForm_Load(object sender, EventArgs e)
|
|
{
|
|
listBox1.Items.Clear();
|
|
foreach (var item in data.Items)
|
|
{
|
|
listBox1.Items.Add(item.PackFilename);
|
|
}
|
|
UpdateInfo(0);
|
|
|
|
}
|
|
|
|
|
|
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
UpdateInfo(listBox1.SelectedIndex);
|
|
}
|
|
|
|
private void UpdateInfo(int index)
|
|
{
|
|
var item = data.Items[index];
|
|
infoLabel.Text = $"Name: {item.PackFilename}\nSize: {item.Data.Length.ToPrettySize()}";
|
|
}
|
|
|
|
private void dumpButton_Click(object sender, EventArgs e)
|
|
{
|
|
var item = data.Items[listBox1.SelectedIndex];
|
|
|
|
saveFileDialog1.FileName = item.PackFilename;
|
|
if (item.PackFilename.EndsWith(".mfx")) saveFileDialog1.Filter = "Clickteam Extension(*.mfx)|.mfx";
|
|
else if (item.PackFilename.EndsWith(".dll")) saveFileDialog1.Filter = "Clickteam Module(*.dll)|.dll";
|
|
|
|
|
|
saveFileDialog1.InitialDirectory = Path.GetFullPath(Settings.ExtensionPath);
|
|
saveFileDialog1.ShowDialog();
|
|
|
|
}
|
|
|
|
private void dumpAllButton_Click(object sender, EventArgs e)
|
|
{
|
|
foreach (var item in data.Items)
|
|
{
|
|
item.Dump();
|
|
}
|
|
}
|
|
|
|
private void saveFileDialog1_FileOk(object sender, CancelEventArgs e)
|
|
{
|
|
var item = data.Items[listBox1.SelectedIndex];
|
|
item.Dump(saveFileDialog1.FileName);
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
} |