void ssd_confirm_dialog_close (void) { confirm_dialog_context *data; ConfirmDialogCallback callback = NULL; SsdWidget dialog; int exit_code = dec_ok; dialog = ssd_dialog_context(); data = (confirm_dialog_context *) ssd_dialog_context(); if (data){ callback = (ConfirmDialogCallback)data->callback; if (data->default_yes) exit_code = dec_yes; else exit_code = dec_no; } callback = (ConfirmDialogCallback)data->callback; kill_messagebox_timer (); ssd_dialog_hide ("confirm_dialog", dec_ok); if (!roadmap_screen_refresh()) roadmap_screen_redraw(); if (callback) (*callback)(exit_code, data->context); }
void roadmap_messagebox (const char *title, const char *text) { SsdWidget dialog = ssd_dialog_activate ("message_box", NULL); title = roadmap_lang_get (title); text = roadmap_lang_get (text); if (!dialog) { create_messagebox (); dialog = ssd_dialog_activate ("message_box", NULL); } dialog->set_value (dialog, title); ssd_widget_set_value (dialog, "text", text); kill_messagebox_timer (); ssd_dialog_draw (); }
static int yes_button_callback (SsdWidget widget, const char *new_value) { SsdWidget dialog; ConfirmDialogCallback callback; confirm_dialog_context *data; dialog = widget->parent; data = (confirm_dialog_context *)dialog->context; callback = (ConfirmDialogCallback)data->callback; ssd_dialog_hide ("confirm_dialog", dec_yes); (*callback)(dec_yes, data->context); kill_messagebox_timer (); return 0; }
static void close_messagebox (void) { kill_messagebox_timer (); ssd_dialog_hide ("message_box", dec_ok); }