int ZLGtkDialogManager::internalBox(const gchar *icon, const std::string &title, const std::string &message, const ZLResourceKey &button0, const ZLResourceKey &button1, const ZLResourceKey &button2) const { GtkDialog *dialog = createGtkDialog(title); if (!button0.Name.empty()) { gtk_dialog_add_button(dialog, gtkString(buttonName(button0)).c_str(), 0); } if (!button1.Name.empty()) { gtk_dialog_add_button(dialog, gtkString(buttonName(button1)).c_str(), 1); } if (!button2.Name.empty()) { gtk_dialog_add_button(dialog, gtkString(buttonName(button2)).c_str(), 2); } GtkWidget *contents = gtk_hbox_new(false, 10); gtk_container_set_border_width(GTK_CONTAINER(contents), 10); GtkWidget *image = gtk_image_new_from_stock(icon, GTK_ICON_SIZE_DIALOG); gtk_misc_set_alignment(GTK_MISC(image), 0.5, 0.0); GtkWidget *label = gtk_label_new(message.c_str()); gtk_label_set_line_wrap(GTK_LABEL(label), true); gtk_box_pack_start(GTK_BOX(contents), image, false, false, 0); gtk_box_pack_start(GTK_BOX(contents), label, true, true, 0); gtk_box_pack_start(GTK_BOX(dialog->vbox), contents, true, true, 0); gtk_widget_show_all(GTK_WIDGET(dialog)); gint response = gtk_dialog_run(dialog); destroyGtkDialog(dialog); return (response < 0) ? -1 : response; }
ZLGtkOpenFileDialog::~ZLGtkOpenFileDialog() { destroyGtkDialog(myDialog); }
ZLGtkDialog::~ZLGtkDialog() { destroyGtkDialog(myDialog); }