private void mnuRenameFile_Click(object sender, EventArgs e)
{
EditPakItem f = new EditPakItem(EditPakItemType.Rename);
PakHeaderItem phi = (PakHeaderItem)lstPakContents.SelectedItems[0].Tag;
f.IncludeFileNameInHeader = ((phi.Flags & PakHeaderFlags.Filename) == PakHeaderFlags.Filename);
if (f.IncludeFileNameInHeader) //we don't know the filename
f.PakItemFilename = phi.Filename;
f.ItemType = phi.FileType;
if (f.ShowDialog(this) == DialogResult.OK)
{
try
{
this.Cursor = Cursors.WaitCursor;
if (f.PakItemFilename.Trim().Length == 0)
{
MessageBox.Show(this, "The pak item filename was not specified", "Rename File Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
return;
}
if (pakItemExists(f.PakItemFilename, phi))
{
MessageBox.Show(this, string.Format("'{0}' already exists", f.PakItemFilename), "Rename File Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
selectPakItem(f.PakItemFilename);
return;
}
//some hard coded values rather than ask the user for them... Always the same update if required
_pakFile.RenameFile(phi.Filename, f.PakItemFilename, f.ItemType);
reloadPak();
selectPakItem(f.PakItemFilename);
}
finally
{
this.Cursor = Cursors.Default;
}
}
}