+ case SDL_DROPFILE:
+ {
+ boolean success = HandleDropFileEvent(event->drop.file);
+
+ if (success)
+ files_succeeded++;
+ else
+ files_failed++;
+
+ break;
+ }
+
+ case SDL_DROPTEXT:
+ {
+ HandleDropTextEvent(event->drop.file);
+
+ break;
+ }
+
+ case SDL_DROPCOMPLETE:
+ {
+ // only show request dialog if no other request dialog already active
+ if (!game.request_active)
+ {
+ if (files_succeeded > 0 && files_failed > 0)
+ Request("New level or artwork set(s) added, "
+ "but some dropped file(s) failed!", REQ_CONFIRM);
+ else if (files_succeeded > 0)
+ Request("New level or artwork set(s) added!", REQ_CONFIRM);
+ else if (files_failed > 0)
+ Request("Failed to process dropped file(s)!", REQ_CONFIRM);
+ }
+
+ break;
+ }
+ }
+
+ if (event->drop.file != NULL)
+ SDL_free(event->drop.file);