PATH:
usr
/
share
/
gtk-2.0
/
demo
/* Links * * GtkLabel can show hyperlinks. The default action is to call * gtk_show_uri() on their URI, but it is possible to override * this with a custom handler. */ #include <gtk/gtk.h> static void response_cb (GtkWidget *dialog, gint response_id, gpointer data) { gtk_widget_destroy (dialog); } static gboolean activate_link (GtkWidget *label, const gchar *uri, gpointer data) { if (g_strcmp0 (uri, "keynav") == 0) { GtkWidget *dialog; GtkWidget *parent; parent = gtk_widget_get_toplevel (label); dialog = gtk_message_dialog_new_with_markup (GTK_WINDOW (parent), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "The term <i>keynav</i> is a shorthand for " "keyboard navigation and refers to the process of using " "a program (exclusively) via keyboard input."); gtk_window_present (GTK_WINDOW (dialog)); g_signal_connect (dialog, "response", G_CALLBACK (response_cb), NULL); return TRUE; } return FALSE; } static GtkWidget *window = NULL; GtkWidget * do_links (GtkWidget *do_widget) { GtkWidget *label; if (!window) { window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_screen (GTK_WINDOW (window), gtk_widget_get_screen (do_widget)); gtk_window_set_title (GTK_WINDOW (window), "Links"); gtk_container_set_border_width (GTK_CONTAINER (window), 12); g_signal_connect (window, "destroy", G_CALLBACK (gtk_widget_destroyed), &window); label = gtk_label_new ("Some <a href=\"http://en.wikipedia.org/wiki/Text\"" "title=\"plain text\">text</a> may be marked up\n" "as hyperlinks, which can be clicked\n" "or activated via <a href=\"keynav\">keynav</a>"); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); g_signal_connect (label, "activate-link", G_CALLBACK (activate_link), NULL); gtk_container_add (GTK_CONTAINER (window), label); gtk_widget_show (label); } if (!gtk_widget_get_visible (window)) { gtk_widget_show (window); } else { gtk_widget_destroy (window); window = NULL; } return window; }
[-] clipboard.c
[edit]
[-] demo.ui
[edit]
[-] assistant.c
[edit]
[-] hypertext.c
[edit]
[-] sizegroup.c
[edit]
[-] infobar.c
[edit]
[-] entry_completion.c
[edit]
[-] expander.c
[edit]
[-] gnome-fs-regular.png
[edit]
[-] apple-red.png
[edit]
[-] gnome-gmush.png
[edit]
[-] alphatest.png
[edit]
[+]
..
[-] iconview_edit.c
[edit]
[-] ui_manager.c
[edit]
[-] combobox.c
[edit]
[-] dialog.c
[edit]
[-] rotated_text.c
[edit]
[-] gnu-keys.png
[edit]
[-] list_store.c
[edit]
[-] entry_buffer.c
[edit]
[-] pickers.c
[edit]
[-] spinner.c
[edit]
[-] appwindow.c
[edit]
[-] gnome-applets.png
[edit]
[-] offscreen_window2.c
[edit]
[-] gnome-gsame.png
[edit]
[-] textview.c
[edit]
[-] drawingarea.c
[edit]
[-] printing.c
[edit]
[-] stock_browser.c
[edit]
[-] floppybuddy.gif
[edit]
[-] gnome-foot.png
[edit]
[-] links.c
[edit]
[-] gtk-logo-rgb.gif
[edit]
[-] menus.c
[edit]
[-] gnome-fs-directory.png
[edit]
[-] toolpalette.c
[edit]
[-] colorsel.c
[edit]
[-] textscroll.c
[edit]
[-] offscreen_window.c
[edit]
[-] button_box.c
[edit]
[-] iconview.c
[edit]
[-] pixbufs.c
[edit]
[-] changedisplay.c
[edit]
[-] images.c
[edit]
[-] gnome-calendar.png
[edit]
[-] gnome-gimp.png
[edit]
[-] builder.c
[edit]
[-] background.jpg
[edit]
[-] search_entry.c
[edit]
[-] panes.c
[edit]
[-] tree_store.c
[edit]
[-] editable_cells.c
[edit]