static gint luaH_label_newindex(lua_State *L, widget_t *w, luakit_token_t token) { size_t len; const gchar *tmp; GdkColor c; PangoFontDescription *font; switch(token) { LUAKIT_WIDGET_NEWINDEX_COMMON(w) case L_TK_PADDING: return luaH_label_set_padding(L, w); case L_TK_ALIGN: return luaH_label_set_align(L, w); case L_TK_TEXT: gtk_label_set_markup(GTK_LABEL(w->widget), luaL_checklstring(L, 3, &len)); break; case L_TK_FG: tmp = luaL_checklstring(L, 3, &len); if (!gdk_color_parse(tmp, &c)) { warn("invalid color: %s", tmp); return 0; } gtk_widget_modify_fg(GTK_WIDGET(w->widget), GTK_STATE_NORMAL, &c); g_object_set_data_full(G_OBJECT(w->widget), "fg", g_strdup(tmp), g_free); break; case L_TK_FONT: tmp = luaL_checklstring(L, 3, &len); font = pango_font_description_from_string(tmp); gtk_widget_modify_font(GTK_WIDGET(w->widget), font); pango_font_description_free(font); g_object_set_data_full(G_OBJECT(w->widget), "font", g_strdup(tmp), g_free); break; case L_TK_SELECTABLE: gtk_label_set_selectable(GTK_LABEL(w->widget), luaH_checkboolean(L, 3)); break; case L_TK_WIDTH: gtk_label_set_width_chars(GTK_LABEL(w->widget), (gint)luaL_checknumber(L, 3)); return 0; default: warn("unknown property: %s", luaL_checkstring(L, 2)); return 0; } return luaH_object_property_signal(L, 1, token); }
static GtkWidget* dialog_contents (void) { GtkWidget *vbox; GtkWidget *hbox; GtkWidget *action_area; GtkWidget *label; GtkWidget *image; GtkWidget *button; vbox = gtk_vbox_new (FALSE, 0); action_area = gtk_hbutton_box_new (); gtk_button_box_set_layout (GTK_BUTTON_BOX (action_area), GTK_BUTTONBOX_END); button = gtk_button_new_from_stock (GTK_STOCK_OK); gtk_box_pack_end (GTK_BOX (action_area), button, FALSE, TRUE, 0); gtk_box_pack_end (GTK_BOX (vbox), action_area, FALSE, TRUE, 0); update_spacings (vbox, action_area); label = gtk_label_new (_("This is a sample message in a sample dialog")); image = gtk_image_new_from_icon_name ("dialog-information", GTK_ICON_SIZE_DIALOG); #if GTK_CHECK_VERSION (3, 0, 0) gtk_widget_set_halign (image, GTK_ALIGN_CENTER); gtk_widget_set_valign (image, GTK_ALIGN_START); #else gtk_misc_set_alignment (GTK_MISC (image), 0.5, 0.0); #endif gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); gtk_label_set_selectable (GTK_LABEL (label), TRUE); hbox = gtk_hbox_new (FALSE, 6); gtk_box_pack_start (GTK_BOX (hbox), image, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0); gtk_widget_show_all (vbox); return vbox; }
static GtkWidget * create_info_label (const char *text, gboolean selectable) { GtkWidget *label; label = gtk_label_new (text ? text : ""); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.0); gtk_label_set_selectable (GTK_LABEL (label), selectable); return label; }
GtkWidget * balsa_mime_widget_signature_widget(LibBalsaMessageBody * mime_body, const gchar * content_type) { gchar *infostr; GtkWidget *vbox, *label; if (!mime_body->sig_info || mime_body->sig_info->status == GPG_ERR_NOT_SIGNED) return NULL; infostr = libbalsa_signature_info_to_gchar(mime_body->sig_info, balsa_app.date_string); if (g_ascii_strcasecmp(content_type, "application/pgp-signature") && g_ascii_strcasecmp(content_type, "application/pkcs7-signature") && g_ascii_strcasecmp(content_type, "application/x-pkcs7-signature")) { gchar * labelstr = g_strdup_printf(_("This is an inline %s signed %s message part:\n%s"), mime_body->sig_info->protocol == GPGME_PROTOCOL_OpenPGP ? _("OpenPGP") : _("S/MIME"), content_type, infostr); g_free(infostr); infostr = labelstr; } vbox = gtk_vbox_new(FALSE, BMW_VBOX_SPACE); gtk_container_set_border_width(GTK_CONTAINER(vbox), BMW_CONTAINER_BORDER); label = gtk_label_new(infostr); gtk_label_set_selectable(GTK_LABEL(label), TRUE); gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5); gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); g_free(infostr); #ifdef HAVE_GPG if (mime_body->sig_info->protocol == GPGME_PROTOCOL_OpenPGP) { GtkWidget *button; if (mime_body->sig_info->status == GPG_ERR_NO_PUBKEY) { button = gtk_button_new_with_mnemonic(_("_Run GnuPG to import this key")); g_object_set_data(G_OBJECT(button), "gpg-keyserver-op", GINT_TO_POINTER(GPG_KEYSERVER_IMPORT)); } else { button = gtk_button_new_with_mnemonic(_("_Run GnuPG to check for an update of this key")); g_object_set_data(G_OBJECT(button), "gpg-keyserver-op", GINT_TO_POINTER(GPG_KEYSERVER_UPDATE)); } g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(on_gpg_key_button), (gpointer)mime_body->sig_info->fingerprint); gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0); } #endif /* HAVE_GPG */ return vbox; }
static int selectable_member(lua_State *L) { lua_label label; luaA_to(L,lua_label,&label,1); if(lua_gettop(L) > 2) { gboolean selectable = lua_toboolean(L,3); gtk_label_set_selectable(GTK_LABEL(label->widget),selectable); return 0; } lua_pushboolean(L,gtk_label_get_selectable(GTK_LABEL(label->widget))); return 1; }
static GtkWidget* dialog_contents (void) { GtkWidget *vbox; GtkWidget *hbox; GtkWidget *action_area; GtkWidget *label; GtkWidget *image; GtkWidget *button; vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); action_area = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); gtk_button_box_set_layout (GTK_BUTTON_BOX (action_area), GTK_BUTTONBOX_END); button = gtk_button_new_from_stock (GTK_STOCK_OK); gtk_box_pack_end (GTK_BOX (action_area), button, FALSE, TRUE, 0); gtk_box_pack_end (GTK_BOX (vbox), action_area, FALSE, TRUE, 0); update_spacings (vbox, action_area); label = gtk_label_new (_("This is a sample message in a sample dialog")); image = gtk_image_new_from_stock (GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG); gtk_misc_set_alignment (GTK_MISC (image), 0.5, 0.0); gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); gtk_label_set_selectable (GTK_LABEL (label), TRUE); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6); gtk_box_pack_start (GTK_BOX (hbox), image, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0); gtk_widget_show_all (vbox); return vbox; }
void uzbl_status_bar_init (UzblStatusBar *status_bar) { static const gint LABEL_MARGIN = 2; gtk_box_set_homogeneous (GTK_BOX (status_bar), FALSE); gtk_box_set_spacing (GTK_BOX (status_bar), 0); /* Create left panel. */ status_bar->left_label = gtk_label_new (""); gtk_label_set_selectable (GTK_LABEL (status_bar->left_label), TRUE); #if GTK_CHECK_VERSION (3, 10, 0) gtk_widget_set_halign (status_bar->left_label, GTK_ALIGN_START); #else gtk_misc_set_alignment (GTK_MISC (status_bar->left_label), 0, 0); #endif g_object_set (G_OBJECT (status_bar->left_label), "margin", LABEL_MARGIN, NULL); gtk_label_set_ellipsize (GTK_LABEL (status_bar->left_label), PANGO_ELLIPSIZE_END); /* Create right panel. */ status_bar->right_label = gtk_label_new (""); gtk_label_set_selectable (GTK_LABEL (status_bar->right_label), TRUE); #if GTK_CHECK_VERSION (3, 10, 0) gtk_widget_set_halign (status_bar->right_label, GTK_ALIGN_END); #else gtk_misc_set_alignment (GTK_MISC (status_bar->right_label), 1, 0); #endif g_object_set (G_OBJECT (status_bar->right_label), "margin", LABEL_MARGIN, NULL); gtk_label_set_ellipsize (GTK_LABEL (status_bar->right_label), PANGO_ELLIPSIZE_START); /* Add the labels to the status bar. */ gtk_box_pack_start (GTK_BOX (status_bar), status_bar->left_label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (status_bar), status_bar->right_label, TRUE, TRUE, 0); }
GtkWidget *plugin_configure(GtkDialog *dialog) { GtkWidget *label1, *label2, *vbox; vbox = gtk_vbox_new(FALSE, 6); /* add a label and a text entry to the dialog */ label1 = gtk_label_new(_("Path and options for the mail client:")); gtk_widget_show(label1); gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5); pref_widgets.entry = gtk_entry_new(); gtk_widget_show(pref_widgets.entry); if (mailer != NULL) gtk_entry_set_text(GTK_ENTRY(pref_widgets.entry), mailer); label2 = gtk_label_new(_("Note: \n\t%f will be replaced by your file."\ "\n\t%r will be replaced by recipient's email address."\ "\n\t%b will be replaced by basename of a file"\ "\n\tExamples:"\ "\n\tsylpheed --attach \"%f\" --compose \"%r\""\ "\n\tmutt -s \"Sending \'%b\'\" -a \"%f\" \"%r\"")); gtk_label_set_selectable(GTK_LABEL(label2), TRUE); gtk_widget_show(label2); gtk_misc_set_alignment(GTK_MISC(label2), 0, 0.5); pref_widgets.checkbox_icon_to_toolbar = gtk_check_button_new_with_label(_("Show toolbar icon")); gtk_widget_set_tooltip_text(pref_widgets.checkbox_icon_to_toolbar, _("Shows a icon in the toolbar to send file more easy.")); gtk_button_set_focus_on_click(GTK_BUTTON(pref_widgets.checkbox_icon_to_toolbar), FALSE); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(pref_widgets.checkbox_icon_to_toolbar), icon_in_toolbar); gtk_widget_show(pref_widgets.checkbox_icon_to_toolbar); pref_widgets.checkbox_use_addressdialog = gtk_check_button_new_with_label(_ ("Use dialog for entering email address of recipients")); gtk_button_set_focus_on_click(GTK_BUTTON(pref_widgets.checkbox_use_addressdialog), FALSE); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(pref_widgets.checkbox_use_addressdialog), use_address_dialog); gtk_widget_show(pref_widgets.checkbox_use_addressdialog); gtk_box_pack_start(GTK_BOX(vbox), label1, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), pref_widgets.entry, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), label2, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), pref_widgets.checkbox_icon_to_toolbar, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), pref_widgets.checkbox_use_addressdialog, FALSE, FALSE, 0); gtk_widget_show(vbox); g_signal_connect(dialog, "response", G_CALLBACK(on_configure_response), NULL); return vbox; }
static void create_entry(PROC_T *p){ p->hbox=gtk_hbox_new(FALSE,0); char lb[12]; snprintf(lb,12," %5d",p->pid); struct tm *tim=localtime(&(p->status.timstart)); char stime[80]; strftime(stime,80,"[%a %k:%M:%S]",tim); p->entry_start=new_label(stime,WIDTH_START,0.5); p->entry_pid=new_label(lb,WIDTH_PID,1); p->entry_path=new_label(p->path,WIDTH_PATH,1); gtk_label_set_selectable(GTK_LABEL(p->entry_path), TRUE); gtk_label_set_ellipsize(GTK_LABEL(p->entry_path),PANGO_ELLIPSIZE_START); #if GTK_MAJOR_VERSION>=3 || GTK_MINOR_VERSION >= 12 gtk_widget_set_tooltip_text(p->entry_path, p->path); #endif p->entry_errlo=new_label("Lo (nm)",WIDTH_ERRLO,1); p->entry_errhi=new_label("Hi (nm)",WIDTH_ERRHI,1); gtk_label_set_max_width_chars(GTK_LABEL(p->entry_errlo),WIDTH_ERRLO); gtk_label_set_max_width_chars(GTK_LABEL(p->entry_errhi),WIDTH_ERRHI); p->entry_iseed=new_entry("seed",WIDTH_ISEED,0.5); p->entry_timing=new_entry("Timing",WIDTH_TIMING,1); gtk_box_pack_start(GTK_BOX(p->hbox),gtk_vseparator_new(),FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),p->entry_start,FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),gtk_vseparator_new(),FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),p->entry_pid,FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),gtk_vseparator_new(),FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),p->entry_path,TRUE,TRUE,0); gtk_box_pack_start(GTK_BOX(p->hbox),gtk_vseparator_new(),FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),p->entry_errlo,FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),gtk_vseparator_new(),FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),p->entry_errhi,FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),gtk_vseparator_new(),FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),p->entry_iseed,FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),gtk_vseparator_new(),FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),p->entry_timing,FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->hbox),gtk_vseparator_new(),FALSE,FALSE,0); change_button(p, GTK_STOCK_PREFERENCES, (void*)kill_job_event); gtk_box_pack_start(GTK_BOX(p->hbox),p->btn,FALSE,FALSE,0); p->vbox=gtk_vbox_new(FALSE,0); if(nproc[p->hid]==1){ gtk_box_pack_start(GTK_BOX(p->vbox),gtk_hseparator_new(),FALSE,FALSE,0); } gtk_box_pack_start(GTK_BOX(p->vbox),p->hbox,FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(p->vbox),gtk_hseparator_new(),FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(pages[p->hid]),p->vbox,FALSE,FALSE,0); /*gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook),p->hid); */ gtk_widget_show_all(p->vbox); }
/* Create the privkeys UI, and pack it into the vbox */ static void make_privkeys_ui(GtkWidget *vbox) { GtkWidget *fbox; GtkWidget *hbox; GtkWidget *label; GtkWidget *frame; frame = gtk_frame_new(_("My private keys")); gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, FALSE, 0); fbox = gtk_vbox_new(FALSE, 5); gtk_container_set_border_width(GTK_CONTAINER(fbox), 10); gtk_container_add(GTK_CONTAINER(frame), fbox); hbox = gtk_hbox_new(FALSE, 5); gtk_box_pack_start(GTK_BOX(fbox), hbox, FALSE, FALSE, 0); label = gtk_label_new(_("Key for account:")); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); ui_layout.accountmenu = pidgin_account_option_menu_new(NULL, 1, G_CALLBACK(account_menu_changed_cb), NULL, NULL); gtk_box_pack_start(GTK_BOX(hbox), ui_layout.accountmenu, TRUE, TRUE, 0); /* Make sure we notice if the menu changes because an account has * been added or removed */ purple_signal_connect(purple_accounts_get_handle(), "account-added", ui_layout.accountmenu, PURPLE_CALLBACK(account_menu_added_removed_cb), NULL); purple_signal_connect(purple_accounts_get_handle(), "account-removed", ui_layout.accountmenu, PURPLE_CALLBACK(account_menu_added_removed_cb), NULL); ui_layout.fprint_label = gtk_label_new(""); gtk_label_set_selectable(GTK_LABEL(ui_layout.fprint_label), 1); gtk_box_pack_start(GTK_BOX(fbox), ui_layout.fprint_label, FALSE, FALSE, 0); ui_layout.generate_button = gtk_button_new(); gtk_signal_connect(GTK_OBJECT(ui_layout.generate_button), "clicked", GTK_SIGNAL_FUNC(generate), NULL); label = gtk_label_new(_("Generate")); gtk_container_add(GTK_CONTAINER(ui_layout.generate_button), label); otrg_gtk_ui_update_fingerprint(); gtk_box_pack_start(GTK_BOX(fbox), ui_layout.generate_button, FALSE, FALSE, 0); }
static gboolean sslcertwindow_ask_expired_cert(SSLCertificate *cert) { gchar *buf, *sig_status; AlertValue val; GtkWidget *vbox; GtkWidget *label; GtkWidget *button; GtkWidget *cert_widget; gchar *invalid_str = sslcertwindow_get_invalid_str(cert); const gchar *title; vbox = gtk_vbox_new(FALSE, 5); buf = g_strdup_printf(_("Certificate for %s is expired.\n%sDo you want to continue?"), cert->host, invalid_str); g_free(invalid_str); label = gtk_label_new(buf); gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); gtk_box_pack_start(GTK_BOX(vbox), label, TRUE, TRUE, 0); g_free(buf); sig_status = ssl_certificate_check_signer(cert->x509_cert, cert->status); if (sig_status==NULL) sig_status = g_strdup(_("Correct")); buf = g_strdup_printf(_("Signature status: %s"), sig_status); label = gtk_label_new(buf); gtk_label_set_selectable(GTK_LABEL(label), TRUE); gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); gtk_box_pack_start(GTK_BOX(vbox), label, TRUE, TRUE, 0); g_free(buf); g_free(sig_status); button = gtk_expander_new_with_mnemonic(_("_View certificate")); gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0); cert_widget = cert_presenter(cert); gtk_container_add(GTK_CONTAINER(button), cert_widget); if (!ssl_certificate_check_subject_cn(cert)) title = _("SSL certificate is invalid and expired"); else title = _("SSL certificate is expired"); val = alertpanel_full(title, NULL, _("_Cancel connection"), _("_Accept"), NULL, FALSE, vbox, ALERT_QUESTION, G_ALERTDEFAULT); return (val == G_ALERTALTERNATE); }
static void menu_about(GtkWidget *wid, gpointer sess) { GtkWidget *vbox, *label, *hbox; static GtkWidget *about = NULL; char buf[512]; if (about) { gtk_window_present(GTK_WINDOW(about)); return; } about = gtk_dialog_new(); gtk_window_set_position(GTK_WINDOW (about), GTK_WIN_POS_CENTER); gtk_window_set_resizable(GTK_WINDOW (about), FALSE); gtk_window_set_title(GTK_WINDOW(about), _("About ekg2")); vbox = GTK_DIALOG(about)->vbox; wid = gtk_image_new_from_pixbuf(pix_ekg2); gtk_container_add(GTK_CONTAINER(vbox), wid); label = gtk_label_new(NULL); gtk_label_set_selectable(GTK_LABEL (label), TRUE); gtk_container_add(GTK_CONTAINER(vbox), label); snprintf(buf, sizeof(buf), "<span size=\"x-large\"><b>ekg2-%s</b></span>\n\n" "<b>Compiled on</b>: %s\n\n" "<small>gtk frontend based on xchat: \302\251 1998-2010 Peter \305\275elezn\303\275 <[email protected]></small>\n" "<small>iconsets in userlist copied from psi (crystal-gadu.jisp and crystal-roster.jisp and crystal-icq.jisp) (c) Remko Tronçon</small>", VERSION, compile_time()); gtk_label_set_markup(GTK_LABEL(label), buf); gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_CENTER); hbox = gtk_hbox_new(0, 2); gtk_container_add(GTK_CONTAINER(vbox), hbox); wid = gtk_button_new_from_stock(GTK_STOCK_CLOSE); GTK_WIDGET_SET_FLAGS(GTK_WIDGET(wid), GTK_CAN_DEFAULT); gtk_dialog_add_action_widget(GTK_DIALOG(about), wid, GTK_RESPONSE_OK); gtk_widget_grab_default(wid); gtk_widget_show_all(about); gtk_dialog_run(GTK_DIALOG(about)); gtk_widget_destroy(about); about = NULL; }
bool PluginManageDlg::ShowModal(GtkWindow *parent_win, bool &dict_changed, bool &order_changed) { window = gtk_dialog_new(); oStarDictPluginSystemInfo.pluginwin = window; gtk_window_set_transient_for(GTK_WINDOW(window), parent_win); gtk_dialog_set_has_separator(GTK_DIALOG(window), false); gtk_dialog_add_button(GTK_DIALOG(window), GTK_STOCK_HELP, GTK_RESPONSE_HELP); pref_button = gtk_dialog_add_button(GTK_DIALOG(window), _("Configure Pl_ug-in"), STARDICT_RESPONSE_CONFIGURE); gtk_widget_set_sensitive(pref_button, FALSE); gtk_dialog_add_button(GTK_DIALOG(window), GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE); gtk_dialog_set_default_response(GTK_DIALOG(window), GTK_RESPONSE_CLOSE); g_signal_connect(G_OBJECT(window), "response", G_CALLBACK(response_handler), this); GtkWidget *vbox; vbox = gtk_vbox_new (FALSE, 5); gtk_container_set_border_width (GTK_CONTAINER (vbox), 2); GtkWidget *pluginlist = create_plugin_list(); gtk_box_pack_start (GTK_BOX (vbox), pluginlist, true, true, 0); GtkWidget *expander = gtk_expander_new (_("<b>Plug-in Details</b>")); gtk_expander_set_use_markup(GTK_EXPANDER(expander), TRUE); gtk_box_pack_start (GTK_BOX (vbox), expander, false, false, 0); detail_label = gtk_label_new (NULL); gtk_label_set_line_wrap(GTK_LABEL(detail_label), TRUE); gtk_label_set_selectable(GTK_LABEL (detail_label), TRUE); gtk_container_add (GTK_CONTAINER (expander), detail_label); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, true, true, 0); gtk_widget_show_all (GTK_DIALOG (window)->vbox); gtk_window_set_title (GTK_WINDOW (window), _("Manage Plugins")); gtk_window_set_default_size(GTK_WINDOW(window), 250, 350); dict_changed_ = false; order_changed_ = false; gint result; while (true) { result = gtk_dialog_run(GTK_DIALOG(window)); if (result ==GTK_RESPONSE_HELP || result == STARDICT_RESPONSE_CONFIGURE) { } else { break; } } if (result != GTK_RESPONSE_NONE) { dict_changed = dict_changed_; order_changed = order_changed_; gtk_widget_destroy(GTK_WIDGET(window)); return false; } else { return true; } }
/* * get an input from the user */ void gtkui_input(const char *title, char *input, size_t n, void (*callback)(void)) { GtkWidget *dialog, *entry, *label, *hbox, *image; dialog = gtk_dialog_new_with_buttons(EC_PROGRAM" Input", GTK_WINDOW (window), GTK_DIALOG_MODAL, GTK_STOCK_OK, GTK_RESPONSE_OK, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, NULL); gtk_dialog_set_has_separator(GTK_DIALOG (dialog), FALSE); gtk_container_set_border_width(GTK_CONTAINER (dialog), 5); hbox = gtk_hbox_new (FALSE, 6); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), hbox, FALSE, FALSE, 0); image = gtk_image_new_from_stock (GTK_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG); gtk_misc_set_alignment (GTK_MISC (image), 0.5, 0.0); gtk_box_pack_start (GTK_BOX (hbox), image, FALSE, FALSE, 0); label = gtk_label_new (title); gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); gtk_label_set_selectable (GTK_LABEL (label), TRUE); gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, TRUE, 0); entry = gtk_entry_new_with_max_length(n); g_object_set_data(G_OBJECT (entry), "dialog", dialog); g_signal_connect(G_OBJECT (entry), "activate", G_CALLBACK (gtkui_dialog_enter), NULL); if (input) gtk_entry_set_text(GTK_ENTRY (entry), input); gtk_box_pack_start(GTK_BOX (hbox), entry, FALSE, FALSE, 5); gtk_widget_show_all (hbox); if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_OK) { strncpy(input, gtk_entry_get_text(GTK_ENTRY (entry)), n); if (callback != NULL) { gtk_widget_destroy(dialog); callback(); return; } } gtk_widget_destroy(dialog); }
static void sync_show_warnings_gtk(SyncStatus *status, GSList *warnings) { GtkWidget *dlg, *hbox, *image, *label, *scroll; GSList *l; GString *warnstr; /* we create our own version of GtkMessageDialog * so we can add the scroll bar. */ dlg = gtk_dialog_new_with_buttons(_("Warnings"), GTK_WINDOW(status->progresswin), GTK_DIALOG_MODAL, GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL); image = gtk_image_new_from_stock(GTK_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_DIALOG); gtk_misc_set_alignment(GTK_MISC(image), 0.5, 0.0); warnstr = g_string_new(warnings->data); for (l = warnings->next; l; l = l->next) { g_string_append_c(warnstr, '\n'); g_string_append(warnstr, l->data); } label = gtk_label_new(warnstr->str); g_string_free(warnstr, TRUE); gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); gtk_label_set_selectable(GTK_LABEL(label), TRUE); scroll = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroll), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scroll), GTK_SHADOW_NONE); gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scroll), label); hbox = gtk_hbox_new(FALSE, 6); gtk_box_pack_start(GTK_BOX(hbox), image, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), scroll, TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dlg)->vbox), hbox, TRUE, TRUE, 0); gtk_widget_show_all(hbox); gtk_dialog_run(GTK_DIALOG(dlg)); gtk_widget_destroy(dlg); }
void gui_init(dt_lib_module_t *self) { /* initialize ui widgets */ dt_lib_metadata_view_t *d = (dt_lib_metadata_view_t *)g_malloc0(sizeof(dt_lib_metadata_view_t)); self->data = (void *)d; _lib_metatdata_view_init_labels(); self->widget = gtk_grid_new(); gtk_grid_set_column_spacing(GTK_GRID(self->widget), DT_PIXEL_APPLY_DPI(5)); // GtkWidget *last = NULL; /* initialize the metadata name/value labels */ for(int k = 0; k < md_size; k++) { GtkWidget *evb = gtk_event_box_new(); gtk_widget_set_name(evb, "brightbg"); GtkLabel *name = GTK_LABEL(gtk_label_new(_md_labels[k])); d->metadata[k] = GTK_LABEL(gtk_label_new("-")); gtk_label_set_selectable(d->metadata[k], TRUE); gtk_container_add(GTK_CONTAINER(evb), GTK_WIDGET(d->metadata[k])); if(k == md_internal_filmroll) { // film roll jump to: g_signal_connect(G_OBJECT(evb), "button-press-event", G_CALLBACK(_filmroll_clicked), NULL); } gtk_widget_set_halign(GTK_WIDGET(name), GTK_ALIGN_START); gtk_widget_set_halign(GTK_WIDGET(d->metadata[k]), GTK_ALIGN_START); gtk_grid_attach(GTK_GRID(self->widget), GTK_WIDGET(name), 0, k, 1, 1); gtk_grid_attach_next_to(GTK_GRID(self->widget), GTK_WIDGET(evb), GTK_WIDGET(name), GTK_POS_RIGHT, 1, 1); } /* lets signup for mouse over image change signals */ dt_control_signal_connect(darktable.signals, DT_SIGNAL_MOUSE_OVER_IMAGE_CHANGE, G_CALLBACK(_mouse_over_image_callback), self); /* lets signup for develop image changed signals */ dt_control_signal_connect(darktable.signals, DT_SIGNAL_DEVELOP_IMAGE_CHANGED, G_CALLBACK(_mouse_over_image_callback), self); /* signup for develop initialize to update info of current image in darkroom when enter */ dt_control_signal_connect(darktable.signals, DT_SIGNAL_DEVELOP_INITIALIZE, G_CALLBACK(_mouse_over_image_callback), self); }
static int lua_register_info(lua_State *L) { dt_lib_module_t *self = lua_touserdata(L, lua_upvalueindex(1)); dt_lua_module_entry_push(L,"lib",self->plugin_name); lua_getuservalue(L,-1); const char* key = luaL_checkstring(L,1); luaL_checktype(L,2,LUA_TFUNCTION); { lua_getfield(L,-1,"callbacks"); lua_pushstring(L,key); lua_pushvalue(L,2); lua_settable(L,5); lua_pop(L,1); } { lua_getfield(L,-1,"values"); lua_pushstring(L,key); lua_pushstring(L,"-"); lua_settable(L,5); lua_pop(L,1); } { GtkWidget *evb = gtk_event_box_new(); gtk_widget_set_name(evb, "brightbg"); GtkLabel *name = GTK_LABEL(gtk_label_new(key)); GtkLabel *value = GTK_LABEL(gtk_label_new("-")); gtk_label_set_selectable(value, TRUE); gtk_container_add(GTK_CONTAINER(evb), GTK_WIDGET(value)); gtk_widget_set_halign(GTK_WIDGET(name), GTK_ALIGN_START); gtk_widget_set_halign(GTK_WIDGET(value), GTK_ALIGN_START); gtk_grid_attach_next_to(GTK_GRID(self->widget), GTK_WIDGET(name), NULL, GTK_POS_BOTTOM, 1, 1); gtk_grid_attach_next_to(GTK_GRID(self->widget), GTK_WIDGET(evb), GTK_WIDGET(name), GTK_POS_RIGHT, 1, 1); gtk_widget_show_all(self->widget); { lua_getfield(L,-1,"widgets"); lua_pushstring(L,key); lua_pushlightuserdata(L,value); lua_settable(L,5); lua_pop(L,1); } } return 0; }
static GtkWidget * dcc_detail_label (char *text, GtkWidget *box, int num) { GtkWidget *label; char buf[64]; label = gtk_label_new (NULL); snprintf (buf, sizeof (buf), "<b>%s</b>", text); gtk_label_set_markup (GTK_LABEL (label), buf); gtk_misc_set_alignment (GTK_MISC (label), 0, 0); gtk_table_attach (GTK_TABLE (box), label, 0, 1, 0 + num, 1 + num, GTK_FILL, GTK_FILL, 0, 0); label = gtk_label_new (NULL); gtk_label_set_selectable (GTK_LABEL (label), TRUE); gtk_misc_set_alignment (GTK_MISC (label), 0, 0); gtk_table_attach (GTK_TABLE (box), label, 1, 2, 0 + num, 1 + num, GTK_FILL, GTK_FILL, 0, 0); return label; }
static GtkWidget* get_label (const gchar *txt, gboolean istitle) { GtkWidget *label; label = gtk_label_new (NULL); if (istitle) { char* markup; markup = g_strdup_printf ("<b>%s</b>: ", txt); gtk_label_set_markup (GTK_LABEL(label), markup); gtk_label_set_justify (GTK_LABEL (label), GTK_JUSTIFY_RIGHT); g_free (markup); } else { gtk_label_set_selectable (GTK_LABEL (label), TRUE); gtk_label_set_text (GTK_LABEL(label), txt ? txt : ""); gtk_label_set_justify (GTK_LABEL (label), GTK_JUSTIFY_LEFT); } return label; }
static GtkWidget * mk_tab_plugins() { GtkWidget *hbox, *label; gchar *msg; hbox = gtk_vbox_new(FALSE, 0); msg = g_strdup_printf("Graphical plugin configuration is not implemented yet.\n" "Please edit manually\n\t~/.fbpanel/%s\n\n" "You can use as example files in \n\t%s/share/fbpanel/\n" "or visit\n" "\thttp://fbpanel.sourceforge.net/docs.html", cprofile, PREFIX); label = gtk_label_new(msg); gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); gtk_label_set_selectable(GTK_LABEL(label), TRUE); gtk_box_pack_end(GTK_BOX(hbox), label, TRUE, TRUE, 5); g_free(msg); RET(hbox); }
// ---- popup warning int gx_message_popup(const char* msg) { // check msg validity if (!msg) { gx_print_warning("Message Popup", string(_("warning message does not exist"))); return -1; } // build popup window GtkWidget *about; GtkWidget *label; GtkWidget *ok_button; about = gtk_dialog_new(); ok_button = gtk_button_new_from_stock(GTK_STOCK_OK); label = gtk_label_new(msg); GtkStyle *style = gtk_widget_get_style(label); pango_font_description_set_size(style->font_desc, 10*PANGO_SCALE); pango_font_description_set_weight(style->font_desc, PANGO_WEIGHT_BOLD); gtk_widget_modify_font(label, style->font_desc); gtk_label_set_selectable(GTK_LABEL(label), TRUE); gtk_container_add(GTK_CONTAINER(GTK_DIALOG(about)->vbox), label); GTK_BOX(GTK_DIALOG(about)->action_area)->spacing = 3; gtk_container_add(GTK_CONTAINER(GTK_DIALOG(about)->action_area), ok_button); g_signal_connect_swapped(ok_button, "clicked", G_CALLBACK(gtk_widget_destroy), about); g_signal_connect(GTK_DIALOG(about)->vbox, "expose-event", G_CALLBACK(gx_cairo::start_box_expose), NULL); gtk_widget_set_redraw_on_allocate(GTK_WIDGET(GTK_DIALOG(about)->vbox),true); gtk_widget_show(ok_button); gtk_widget_show(label); return gtk_dialog_run (GTK_DIALOG(about)); }
static GtkWidget * append_label (GtkWidget *vbox, const char *str) { GtkWidget *label; label = gtk_label_new (NULL); gtk_label_set_markup (GTK_LABEL (label), str); gtk_misc_set_alignment (GTK_MISC (label), 0, 0); gtk_label_set_selectable (GTK_LABEL (label), TRUE); /* setting can_focus to FALSE will allow to make the label * selectable but without the cursor showing. */ gtk_widget_set_can_focus (label, FALSE); gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0); gtk_widget_show (label); return label; }
void eel_gtk_message_dialog_set_details_label (GtkMessageDialog *dialog, const gchar *details_text) { GtkWidget *content_area, *expander, *label; content_area = gtk_message_dialog_get_message_area (dialog); expander = gtk_expander_new_with_mnemonic (_("Show more _details")); gtk_expander_set_spacing (GTK_EXPANDER (expander), 6); label = gtk_label_new (details_text); gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); gtk_label_set_selectable (GTK_LABEL (label), TRUE); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_container_add (GTK_CONTAINER (expander), label); gtk_box_pack_start (GTK_BOX (content_area), expander, FALSE, FALSE, 0); gtk_widget_show (label); gtk_widget_show (expander); }
/* Helper for construct_data_widget. Returns the label widget. */ static GtkLabel * add_table_row (GtkWidget *table, int *rowidx, const char *labelstr, GtkWidget *widget, GtkWidget *widget2, int readonly) { GtkWidget *label; int is_label = GTK_IS_LABEL (widget); label = gtk_label_new (labelstr); gtk_label_set_width_chars (GTK_LABEL (label), 22); gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); gtk_table_attach (GTK_TABLE (table), label, 0, 1, *rowidx, *rowidx + 1, GTK_FILL, GTK_SHRINK, 0, 0); if (is_label) gtk_misc_set_alignment (GTK_MISC (widget), 0, 0.5); if (readonly) { if (!is_label && GTK_IS_ENTRY (widget)) { gtk_entry_set_has_frame (GTK_ENTRY (widget), FALSE); gtk_entry_set_editable (GTK_ENTRY (widget), FALSE); } } else { if (is_label) gtk_label_set_selectable (GTK_LABEL (widget), TRUE); } gtk_table_attach (GTK_TABLE (table), widget, 1, 2, *rowidx, *rowidx + 1, GTK_FILL, GTK_SHRINK, 0, 0); if (widget2) gtk_table_attach (GTK_TABLE (table), widget2, 2, 3, *rowidx, *rowidx + 1, GTK_FILL, GTK_SHRINK, 5, 0); ++*rowidx; return GTK_LABEL (label); }
static GtkWidget * about_wireshark_page_new(void) { GtkWidget *main_vb, *msg_label /*, *icon*/; gchar *message; main_vb = gtk_vbox_new(FALSE, 6); gtk_container_set_border_width(GTK_CONTAINER(main_vb), 12); #if GTK_CHECK_VERSION(2,9,0) g_object_set(gtk_widget_get_settings(main_vb), "gtk-label-select-on-focus", FALSE, NULL); #endif about_wireshark(top_level, main_vb); /* Construct the message string */ message = g_strdup_printf( "Version " VERSION "%s\n" "\n" "%s" "\n" "%s" "\n" "%s" "\n" "Wireshark is Open Source Software released under the GNU General Public License.\n" "\n" "Check the man page and http://www.wireshark.org for more information.", wireshark_svnversion, get_copyright_info(), comp_info_str->str, runtime_info_str->str); msg_label = gtk_label_new(message); g_free(message); gtk_label_set_justify(GTK_LABEL(msg_label), GTK_JUSTIFY_FILL); gtk_label_set_selectable(GTK_LABEL(msg_label), TRUE); gtk_container_add(GTK_CONTAINER(main_vb), msg_label); return main_vb; }
int main( int argc, char **argv ) { gtk_init( &argc, &argv ); GtkWidget *window = gtk_window_new( GTK_WINDOW_TOPLEVEL ); gtk_window_set_title( GTK_WINDOW( window ), "More complex Hello" ); gtk_container_set_border_width( GTK_CONTAINER( window ), 10 ); gtk_widget_set_size_request( window, 320, 240 ); GtkWidget *label = gtk_label_new( "Hello, world of Gtk+" ); //gtk_label_set_selectable( GTK_LABEL( label ), TRUE ); gtk_label_set_selectable( GTK_LABEL( label ), FALSE ); gtk_container_add( GTK_CONTAINER( window ), label ); /* connect signals and callback function */ g_signal_connect( G_OBJECT( window ), "destroy", G_CALLBACK( destroy ), NULL ); g_signal_connect( G_OBJECT( window ), "delete_event", G_CALLBACK( delete_event ), NULL ); gtk_widget_show_all( window ); gtk_main(); return 0; }
static void configure() { GtkWidget *window = gtk_dialog_new_with_buttons(_("QQWry configuration"), GTK_WINDOW(plugin_info->pluginwin), GTK_DIALOG_MODAL, GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL); GtkWidget *vbox = gtk_vbox_new(false, 5); std::string msg; std::string datafilename = plugin_info->datadir; datafilename += G_DIR_SEPARATOR_S "data" G_DIR_SEPARATOR_S "QQWry.Dat"; if (g_file_test(datafilename.c_str(), G_FILE_TEST_EXISTS)) { msg = _("You can update the QQWry.Dat file from this website:\nhttp://www.cz88.net"); } else { gchar *str = g_strdup_printf(_("Error: File %s not found!\nYou can download it from this website:\nhttp://www.cz88.net"), datafilename.c_str()); msg = str; g_free(str); } GtkWidget *label = gtk_label_new(msg.c_str()); gtk_label_set_selectable(GTK_LABEL(label), TRUE); gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); gtk_box_pack_start(GTK_BOX(vbox), label, true, true, 0); gtk_widget_show_all(vbox); gtk_container_add (GTK_CONTAINER (GTK_DIALOG(window)->vbox), vbox); gtk_dialog_run(GTK_DIALOG(window)); gtk_widget_destroy (window); }
static void vnr_message_area_initialize(VnrMessageArea * msg_area) { msg_area->with_button = FALSE; msg_area->hbox = gtk_hbox_new(FALSE, 7); gtk_container_add(GTK_CONTAINER (msg_area), msg_area->hbox); gtk_container_set_border_width(GTK_CONTAINER (msg_area->hbox), 7); msg_area->image = gtk_image_new(); gtk_box_pack_start (GTK_BOX (msg_area->hbox), msg_area->image, FALSE, FALSE, 0); msg_area->message = gtk_label_new (NULL); gtk_label_set_line_wrap(GTK_LABEL (msg_area->message), TRUE); gtk_label_set_selectable(GTK_LABEL(msg_area->message), TRUE); gtk_box_pack_start (GTK_BOX (msg_area->hbox), msg_area->message, FALSE, FALSE, 0); msg_area->button_box = gtk_vbutton_box_new(); gtk_box_pack_end(GTK_BOX (msg_area->hbox), msg_area->button_box, FALSE, FALSE, 0); msg_area->user_button = gtk_button_new(); gtk_container_add(GTK_CONTAINER(msg_area->button_box), msg_area->user_button); msg_area->cancel_button = gtk_button_new_from_stock(GTK_STOCK_CANCEL); g_signal_connect(msg_area->cancel_button, "clicked", G_CALLBACK(cancel_button_cb), msg_area); gtk_container_add(GTK_CONTAINER(msg_area->button_box), msg_area->cancel_button); gtk_widget_hide_all(msg_area->hbox); gtk_widget_set_state(GTK_WIDGET(msg_area), GTK_STATE_SELECTED); gtk_widget_set_state(msg_area->button_box, GTK_STATE_NORMAL); msg_area->initialized = TRUE; }
int main(int argc, char *argv[]) { GtkWidget *window, *label; gtk_init(&argc, &argv); window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(window), "Hello world"); gtk_container_set_border_width(GTK_CONTAINER(window), 10); gtk_widget_set_size_request(window, 200, 100); g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(destroy), NULL); g_signal_connect(G_OBJECT(window), "delete_event", G_CALLBACK(delete_event), NULL); label = gtk_label_new("Hello World"); gtk_label_set_selectable(GTK_LABEL(label), TRUE); gtk_container_add(GTK_CONTAINER(window), label); gtk_widget_show_all(window); gtk_main(); return (0); }
widget_t * widget_label(widget_t *w, luakit_token_t UNUSED(token)) { w->index = luaH_label_index; w->newindex = luaH_label_newindex; w->destructor = widget_destructor; /* create gtk label widget as main widget */ w->widget = gtk_label_new(NULL); /* setup default settings */ gtk_label_set_selectable(GTK_LABEL(w->widget), FALSE); gtk_label_set_use_markup(GTK_LABEL(w->widget), TRUE); gtk_misc_set_alignment(GTK_MISC(w->widget), 0, 0); gtk_misc_set_padding(GTK_MISC(w->widget), 2, 2); g_object_connect(G_OBJECT(w->widget), LUAKIT_WIDGET_SIGNAL_COMMON(w) "signal::key-press-event", G_CALLBACK(key_press_cb), w, NULL); gtk_widget_show(w->widget); return w; }