X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=tools%2Fdunger%2Fsrc%2Fmain.c;h=5a23d71bae879301eec304096250941fd33d329f;hb=fd189b9a43026a0efa22f0f1546e2c2cabb913d4;hp=22932ec9d4f5da448102551c8324ca3b916a346e;hpb=631df34b46cfbe0990d5ab557fbd9deb9bea8da2;p=vrlugburz diff --git a/tools/dunger/src/main.c b/tools/dunger/src/main.c index 22932ec..5a23d71 100644 --- a/tools/dunger/src/main.c +++ b/tools/dunger/src/main.c @@ -343,10 +343,22 @@ static void cb_open(utk_event *ev, void *data) static void cb_open_ok(utk_event *ev, void *data) { + char *errmsg = 0; + const char *path; + utk_widget *dlg = utk_event_widget(ev); - printf("selected: %s\n", utk_file_dialog_file(dlg)); + path = utk_file_dialog_path(dlg); + printf("selected: %s\n", path); + if(load_level(&lvl, path) == -1) { + errmsg = alloca(strlen(path) + 32); + sprintf(errmsg, "Failed to load level: %s", path); + } utk_destroy_window(dlg); if(uigrab == dlg) uigrab = 0; + + if(errmsg) { + uigrab = utk_message_dialog(errmsg, UTK_MSG_TYPE_ERROR, UTK_MSG_BN_OK, cb_cancel, 0); + } } static void cb_save(utk_event *ev, void *data)