private bool DeleteEntry(int ind = -1)
{
// Heff: Cancellation check
if (cts.IsCancellationRequested)
return false;
if (LoadedTexes.Count == 1)
{
CloseFilesButton_Click(null, null);
return false;
}
// KFreon: Wipe out nodes to stop preview glitch
//MainTreeView.SuspendLayout();
//MainTreeView.Nodes.Clear();
ClearPreview();
FirstHalfInfoState(false);
TPFTexInfo tex = null;
int index = ind == -1 ? GetSelectedTex(out tex) : ind;
if (index < 0)
return false;
// KFreon: Remove from lists
LoadedTexes.RemoveAt(index);
MainTreeView.Nodes.RemoveAt(index);
if (tex != null)
Previews.Remove(tex.PreviewKey);
if (index == 0)
{
PreviewObject(LoadedTexes[0]);
MainTreeView.SelectedNode = MainTreeView.Nodes[0];
MainTreeView.SelectedNode.Checked = true;
}
else
{
PreviewObject(LoadedTexes[index - 1]);
MainTreeView.SelectedNode = MainTreeView.Nodes[index - 1];
MainTreeView.SelectedNode.Checked = true;
}
//RedrawTreeView();
//MainTreeView.ResumeLayout();
return true;
}