add ui confirm dialog for linux

This commit is contained in:
RSDuck 2019-08-23 22:16:24 +02:00 committed by RSDuck
parent 5ea91b8a03
commit b5dda7d6e2
1 changed files with 12 additions and 2 deletions

View File

@ -93,7 +93,7 @@ char *uiSaveFile(uiWindow *parent, const char* filter, const char* initpath)
return filedialog(windowWindow(parent), GTK_FILE_CHOOSER_ACTION_SAVE, "_Save", filter, initpath);
}
static void msgbox(GtkWindow *parent, const char *title, const char *description, GtkMessageType type, GtkButtonsType buttons)
static int msgbox(GtkWindow *parent, const char *title, const char *description, GtkMessageType type, GtkButtonsType buttons)
{
GtkWidget *md;
@ -101,8 +101,10 @@ static void msgbox(GtkWindow *parent, const char *title, const char *description
type, buttons,
"%s", title);
gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(md), "%s", description);
gtk_dialog_run(GTK_DIALOG(md));
int result = gtk_dialog_run(GTK_DIALOG(md));
gtk_widget_destroy(md);
return result;
}
void uiMsgBox(uiWindow *parent, const char *title, const char *description)
@ -114,3 +116,11 @@ void uiMsgBoxError(uiWindow *parent, const char *title, const char *description)
{
msgbox(windowWindow(parent), title, description, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK);
}
int uiMsgBoxConfirm(uiWindow * parent, const char *title, const char *description)
{
int result =
msgbox(windowWindow(parent), title, description, GTK_MESSAGE_QUESTION, GTK_BUTTONS_OK_CANCEL);
return result == GTK_RESPONSE_OK;
}