void handleProgramChange(ProgramChangeRecord rec) {
		// if a source file is removed, remove the associated file transform
		// note: if the removal of the file is undone, the file transform will not be restored
		switch (rec.getEventType()) {
			case ProgramEvent.SOURCE_FILE_REMOVED:
				SourceFile removed = (SourceFile) rec.getOldValue();
				SourcePathTransformer pathTransformer =
					UserDataPathTransformer.getPathTransformer(sourceFilesTableModel.getProgram());
				pathTransformer.removeFileTransform(removed);
				transformsModel.reload();
				// fall through intentional
			case ProgramEvent.SOURCE_FILE_ADDED:
			case ProgramEvent.SOURCE_MAP_CHANGED:
				setIsStale(true);
				break;
			default:
				break;
		}
		return;
	}
Sets isStale to {@code true} when {@code rec} has an event type relevant to the source
file table.  If the event type is {@link ProgramEvent#SOURCE_FILE_REMOVED}, any associated
file transform is also removed.

@param rec program change record
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/sourcefilestable/SourceFilesTableProvider.java