diff --git a/examples/basic/messagebox.c b/examples/basic/messagebox.c index bb1c30d..e95f55a 100644 --- a/examples/basic/messagebox.c +++ b/examples/basic/messagebox.c @@ -13,6 +13,7 @@ void spawn(MwWidget handle, void* user, void* call) { (void)call; MwAddUserHandler(MwMessageBoxGetChild(mb, MwMB_BUTTONOK), MwNactivateHandler, ok, mb); + MwAddUserHandler(mb, MwNcloseHandler, ok, mb); } void spawn2(MwWidget handle, void* user, void* call) { @@ -22,6 +23,7 @@ void spawn2(MwWidget handle, void* user, void* call) { (void)call; MwAddUserHandler(MwMessageBoxGetChild(mb, MwMB_BUTTONOK), MwNactivateHandler, ok, mb); + MwAddUserHandler(mb, MwNcloseHandler, ok, mb); } void spawn3(MwWidget handle, void* user, void* call) { @@ -33,6 +35,7 @@ void spawn3(MwWidget handle, void* user, void* call) { for(i = 0; i <= MwMB_ICONCLOCK; i++) { MwWidget mb = MwMessageBox(user, "messagebox test", "title", i | MwMB_BUTTONOK); MwAddUserHandler(MwMessageBoxGetChild(mb, MwMB_BUTTONOK), MwNactivateHandler, ok, mb); + MwAddUserHandler(mb, MwNcloseHandler, ok, mb); } } diff --git a/milsko.xml b/milsko.xml index d166ff2..5e93f30 100644 --- a/milsko.xml +++ b/milsko.xml @@ -782,6 +782,7 @@ + diff --git a/src/dialog/messagebox.c b/src/dialog/messagebox.c index 1d2b991..43e837a 100644 --- a/src/dialog/messagebox.c +++ b/src/dialog/messagebox.c @@ -18,12 +18,6 @@ static void spawn_button(MwWidget handle, int x, int y, int id, const char* text handle->opaque = mb; } -static void messagebox_close(MwWidget handle, void* user, void* call) { - (void)user; - (void)call; - MwMessageBoxDestroy(handle); -} - MwWidget MwMessageBox(MwWidget handle, const char* text, const char* title, unsigned int flag) { MwWidget window; int w, h; @@ -112,8 +106,6 @@ MwWidget MwMessageBox(MwWidget handle, const char* text, const char* title, unsi MwLLMakePopup(window->lowlevel, handle == NULL ? NULL : handle->lowlevel); MwLLEndStateChange(window->lowlevel); - MwAddUserHandler(window, MwNcloseHandler, messagebox_close, NULL); - return window; }