private void Open(string FileName) { Prot = LProt.FromFile(FileName); TreeNode[] ProtNodes = new TreeNode[Prot.Files.Length]; for (int i = 0; i < Prot.Files.Length; i++) { LPack Pack = LPack.FromData(Prot.Files[i]); ProtNodes[i] = MakeNode( "File", i, Pack != null ? 1 : 0, Prot.Files[i].Length); //Add Pack nodes if file is Pack if (Pack != null) { TreeNode[] PackNodes = new TreeNode[Pack.Files.Length]; for (int j = 0; j < Pack.Files.Length; j++) { LScript Script = LScript.FromData(Pack.Files[j].Data); PackNodes[j] = MakeNode( "Data", j, Script != null ? 1 : 0, Pack.Files[j].Data.Length); //Add Script nodes if file is Script if (Script != null) { for (int k = 0; k < Script.Scripts.Length; k++) { PackNodes[j].Nodes.Add(MakeNode("Script", k, 2, Script.Scripts[k].Length)); } } } ProtNodes[i].Nodes.AddRange(PackNodes); } } TreeFiles.Nodes.Clear(); TreeFiles.Nodes.AddRange(ProtNodes); CurrNode = null; HasNewText = false; TextEdit.Text = string.Empty; }
private void UserSave() { if (CurrFile != null) { if (CurrNode != null && HasNewText) { SetData(CurrNode, Utils.Text2Data(TextEdit.Text)); HasNewText = false; } LProt.ToFile(Prot, CurrFile); ShowStatus("Saved at " + DateTime.Now.ToShortTimeString()); } }