private void ObjectTree_AfterSelect(object sender, System.Windows.Forms.TreeViewEventArgs e)
{
var node = ObjectTree.SelectedNode;
if (node == null)
{
ObjNameLabel.Text = "No Object Selected.";
ObjDescLabel.Text = "";
ObjMultitileLabel.Text = "";
SelectedFile = null;
SelectedObj = null;
}
ObjectRegistryEntry entry = null;
SourceNodeToEnt.TryGetValue(node, out entry);
if (entry == null)
{
//chose a filename
ObjNameLabel.Text = node.Text+".iff";
ObjDescLabel.Text = "Object File";
ObjMultitileLabel.Text = "Contains "+ObjectRegistry.MastersByFilename[node.Text].Count+" master objects.";
SelectedFile = node.Text;
SelectedObj = null;
ObjThumbnail.ShowObject(0);
}
else
{
ObjNameLabel.Text = entry.Name;
SelectedFile = entry.Filename;
SelectedObj = entry;
ObjThumbnail.ShowObject(entry.GUID);
ObjDescLabel.Text = "§----";
if (entry.Group == 0) {
ObjMultitileLabel.Text = "Single-tile object.";
}
else if (entry.SubIndex < 0)
{
ObjMultitileLabel.Text = "Multitile master object.";
}
else
{
ObjMultitileLabel.Text = "Multitile part. ("+(entry.SubIndex>>8)+", "+(entry.SubIndex&0xFF)+")";
}
}
if (SelectedChanged != null) SelectedChanged();
}