Example #1
0
/* RffArchive::renameEntry
 * Override of Archive::renameEntry to update namespaces if needed
 * and rename the entry if necessary to be grp-friendly (twelve
 * characters max)
 *******************************************************************/
bool RffArchive::renameEntry(ArchiveEntry* entry, string name) {
	// Check entry
	if (!checkEntry(entry))
		return false;

	// Process name (must be 12 characters max)
	name.Truncate(12);
	if (wad_force_uppercase) name.MakeUpper();

	// Do default rename
	return Archive::renameEntry(entry, name);
}
Example #2
0
/* Wad2Archive::renameEntry
 * Override of Archive::renameEntry enforce wad2-friendly entry names
 * (16 characters max and uppercase if forced)
 *******************************************************************/
bool Wad2Archive::renameEntry(ArchiveEntry* entry, string name)
{
	// Check entry
	if (!checkEntry(entry))
		return false;

	// Process name (must be 16 characters max, also cut any extension as wad entries don't usually want them)
	wxFileName fn(name);
	name = fn.GetName().Truncate(16);
	if (wad_force_uppercase) name.MakeUpper();

	// Do default rename
	return Archive::renameEntry(entry, name);
}
Example #3
0
/* WadArchive::processEntryName
 * Contains the WadArchive::renameEntry logic
 *******************************************************************/
string WadArchive::processEntryName(string name)
{

	// Perform character substitution if needed
	name = Misc::fileNameToLumpName(name);

	// Check for \ character (e.g., from Arch-Viles graphics). They have to be kept.
	if (name.length() <= 8 && name.find('\\') != wxNOT_FOUND)
	{
	} // Don't process as a file name

	// Process name (must be 8 characters max, also cut any extension as wad entries don't usually want them)
	else
	{
		wxFileName fn(name);
		name = fn.GetName().Truncate(8);
	}
	if (wad_force_uppercase) name.MakeUpper();

	return name;
}