/usr/share/help/cs/gnome-devel-demos/dialog.c.page is in gnome-devel-docs 3.28.0-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 | <?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" xmlns:xi="http://www.w3.org/2001/XInclude" type="guide" style="task" id="dialog.c" xml:lang="cs">
<info>
<title type="text">Dialog (C)</title>
<link type="guide" xref="c#windows"/>
<link type="seealso" xref="label.c"/>
<link type="seealso" xref="button.c"/>
<revision version="0.1" date="2012-06-14" status="draft"/>
<credit type="author copyright">
<name>Monica Kochofar</name>
<email its:translate="no">monicakochofar@gmail.com</email>
<years>2012</years>
</credit>
<desc>Vyskakovací okno</desc>
</info>
<title>Dialog</title>
<media type="image" mime="image/png" src="media/dialog.png"/>
<p>Dialogové okno, které vyskočí, když je zmáčknuto tlačítko.</p>
<code mime="text/x-csrc" style="numbered">
#include <gtk/gtk.h>
/* Funkce zpětného volání, která reaguje na signál "response". Je nutné ji
umístit před funkci, která ji volá */
static void
on_response (GtkDialog *dialog,
gint response_id,
gpointer user_data)
{
/* Pro demonstrační účely. Zobrazí celočíselnou hodnotu typu odpovědi. */
g_print ("response is %d\n", response_id);
/* Způsobí zlikvidování dialogového okna */
gtk_widget_destroy (GTK_WIDGET (dialog));
}
/* Funkce zpětného volání, která reaguje na signál "clicked" */
static void
show_dialog (GtkButton *button,
gpointer user_data)
{
GtkWindow *window = user_data;
GtkWidget *dialog;
GtkWidget *content_area;
GtkWidget *label;
gint response_id;
/* Vytvoří dialogové okno. Modální okno zabraňuje interakci s ostatními
okno ve stejné aplikaci */
dialog = gtk_dialog_new_with_buttons ("A Gtk+ Dialog",
window,
GTK_DIALOG_MODAL,
GTK_STOCK_OK,
GTK_RESPONSE_OK,
NULL);
/* Vytvoří popisek a připojí jej do oblasti obsahu dialogového okna */
content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog));
label = gtk_label_new ("This demonstrates a dialog with a label");
gtk_container_add (GTK_CONTAINER (content_area), label);
/* Hlavním účelem tohoto je zobrazi synovský widget (popisek) dialogového okna */
gtk_widget_show_all (dialog);
/* Napojí signál "response" od uživatele k příslušné funkci zpětného volání */
g_signal_connect (GTK_DIALOG (dialog),
"response",
G_CALLBACK (on_response),
NULL);
}
static void
activate (GtkApplication *app,
gpointer user_data)
{
GtkWidget *window;
GtkWidget *button;
/* Vytvoří okno s názvem, šířkou okraje a výchozí velikostí */
window = gtk_application_window_new (app);
gtk_window_set_title (GTK_WINDOW (window), "GNOME Button");
gtk_window_set_default_size (GTK_WINDOW (window), 250, 50);
/* Vytvoří tlačítko s popiskem a přidá jej do okna */
button = gtk_button_new_with_label ("Click Me");
gtk_container_add (GTK_CONTAINER (window), button);
/* Napojí signál "clicked" na zpětné volání */
g_signal_connect (GTK_BUTTON (button),
"clicked",
G_CALLBACK (show_dialog),
GTK_WINDOW (window));
gtk_widget_show_all (window);
}
int
main (int argc, char **argv)
{
GtkApplication *app;
int status;
app = gtk_application_new ("org.gtk.example", G_APPLICATION_FLAGS_NONE);
g_signal_connect (app, "activate", G_CALLBACK (activate), NULL);
status = g_application_run (G_APPLICATION (app), argc, argv);
g_object_unref (app);
return status;
}
</code>
<p>V této ukázce se používá následující:</p>
<list>
<item><p><link href="http://developer.gnome.org/gtk3/3.4/GtkApplication.html">GtkApplication</link></p></item>
<item><p><link href="http://developer.gnome.org/gtk3/3.4/GtkWindow.html">GtkWindow</link></p></item>
<item><p><link href="http://developer.gnome.org/gtk3/stable/GtkDialog.html">GtkDialog</link></p></item>
<item><p><link href="http://developer.gnome.org/gtk3/stable/GtkLabel.html">GtkLabel</link></p></item>
</list>
</page>
|