Files
AssetStudio/AssetStudioGUI/Components/TypeTreeItem.cs
2025-07-13 01:56:09 +03:00

35 lines
1.0 KiB
C#

using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using AssetStudio;
namespace AssetStudioGUI
{
internal class TypeTreeItem : ListViewItem
{
private TypeTree m_Type;
public TypeTreeItem(int typeID, TypeTree m_Type)
{
this.m_Type = m_Type;
Text = m_Type.m_Nodes[0].m_Type + " " + m_Type.m_Nodes[0].m_Name;
SubItems.Add(typeID.ToString());
}
public override string ToString()
{
var sb = new StringBuilder();
for (var i = 0; i < m_Type.m_Nodes.Count; i++)
{
var node = m_Type.m_Nodes[i];
if (node.m_Type == "string" && m_Type.m_Nodes[i + 1].m_Type != "Array")
node.m_Type = "CustomType";
sb.AppendFormat("{0}{1} {2} {3} {4}\r\n",
new string('\t', node.m_Level), node.m_Type, node.m_Name, node.m_ByteSize, (node.m_MetaFlag & 0x4000) != 0);
}
return sb.ToString();
}
}
}