mirror of
https://github.com/KillzXGaming/Switch-Toolbox
synced 2024-12-18 17:03:42 +00:00
96 lines
2.8 KiB
C#
96 lines
2.8 KiB
C#
|
using System;
|
|||
|
using Switch_Toolbox.Library;
|
|||
|
using System.Windows.Forms;
|
|||
|
using FirstPlugin;
|
|||
|
|
|||
|
namespace Bfres.Structs
|
|||
|
{
|
|||
|
public class EmbeddedFilesFolder : TreeNodeCustom
|
|||
|
{
|
|||
|
public EmbeddedFilesFolder()
|
|||
|
{
|
|||
|
Text = "Embedded Files";
|
|||
|
Name = "EXT";
|
|||
|
|
|||
|
ContextMenu = new ContextMenu();
|
|||
|
MenuItem import = new MenuItem("Import");
|
|||
|
ContextMenu.MenuItems.Add(import);
|
|||
|
import.Click += Import;
|
|||
|
MenuItem exportAll = new MenuItem("Export All");
|
|||
|
ContextMenu.MenuItems.Add(exportAll);
|
|||
|
exportAll.Click += ExportAll;
|
|||
|
MenuItem clear = new MenuItem("Clear");
|
|||
|
ContextMenu.MenuItems.Add(clear);
|
|||
|
clear.Click += Clear;
|
|||
|
}
|
|||
|
public void Import(object sender, EventArgs args)
|
|||
|
{
|
|||
|
|
|||
|
}
|
|||
|
public void ExportAll(object sender, EventArgs args)
|
|||
|
{
|
|||
|
|
|||
|
}
|
|||
|
private void Clear(object sender, EventArgs args)
|
|||
|
{
|
|||
|
DialogResult dialogResult = MessageBox.Show("Are you sure you want to remove all objects? This cannot be undone!", "", MessageBoxButtons.YesNo);
|
|||
|
|
|||
|
if (dialogResult == DialogResult.Yes)
|
|||
|
{
|
|||
|
Nodes.Clear();
|
|||
|
((ResourceFile)Parent).BFRESRender.models.Clear();
|
|||
|
((ResourceFile)Parent).BFRESRender.UpdateVertexData();
|
|||
|
}
|
|||
|
}
|
|||
|
public override void OnClick(TreeView treeView)
|
|||
|
{
|
|||
|
FormLoader.LoadEditor(this, Text);
|
|||
|
}
|
|||
|
}
|
|||
|
public class ExternalFileData : TreeNode
|
|||
|
{
|
|||
|
public byte[] Data;
|
|||
|
public ExternalFileData(byte[] data, string Name)
|
|||
|
{
|
|||
|
Text = Name;
|
|||
|
ImageKey = "folder";
|
|||
|
Data = data;
|
|||
|
|
|||
|
ContextMenu = new ContextMenu();
|
|||
|
MenuItem export = new MenuItem("Export");
|
|||
|
ContextMenu.MenuItems.Add(export);
|
|||
|
export.Click += Export;
|
|||
|
MenuItem replace = new MenuItem("Replace");
|
|||
|
ContextMenu.MenuItems.Add(replace);
|
|||
|
replace.Click += Import;
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
private void Import(object sender, EventArgs args)
|
|||
|
{
|
|||
|
OpenFileDialog ofd = new OpenFileDialog();
|
|||
|
ofd.Filter = "All files(*.*)|*.*";
|
|||
|
|
|||
|
if (ofd.ShowDialog() == DialogResult.OK)
|
|||
|
{
|
|||
|
Data = System.IO.File.ReadAllBytes(ofd.FileName);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private void Export(object sender, EventArgs args)
|
|||
|
{
|
|||
|
SaveFileDialog sfd = new SaveFileDialog();
|
|||
|
sfd.Filter = "All files(*.*)|*.*";
|
|||
|
|
|||
|
sfd.DefaultExt = System.IO.Path.GetExtension(Text);
|
|||
|
sfd.FileName = Text;
|
|||
|
|
|||
|
if (sfd.ShowDialog() == DialogResult.OK)
|
|||
|
{
|
|||
|
System.IO.File.WriteAllBytes(sfd.FileName, Data);
|
|||
|
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|