/usr/share/help/el/gnome-devel-demos/statusbar.c.page is in gnome-devel-docs 3.14.1-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 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 | <?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="statusbar.c" xml:lang="el">
<info>
<title type="text">Γραμμή κατάστασης (C)</title>
<link type="guide" xref="beginner.c#buttons"/>
<link type="seealso" xref="grid.c"/>
<link type="seealso" xref="button.c"/>
<revision version="0.1" date="2012-06-22" status="draft"/>
<credit type="author copyright">
<name>Monica Kochofar</name>
<email its:translate="no">monicakochofar@gmail.com</email>
<years>2012</years>
</credit>
<desc>Μηνύματα αναφοράς μικρότερης σημασίας για τον χρήστη</desc>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Ελληνική μεταφραστική ομάδα GNOME</mal:name>
<mal:email>team@gnome.gr</mal:email>
<mal:years>2012-2014</mal:years>
</mal:credit>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Δημήτρης Σπίγγος</mal:name>
<mal:email>dmtrs32@gmail.com</mal:email>
<mal:years>2012, 2013</mal:years>
</mal:credit>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Μαρία Θουκιδίδου</mal:name>
<mal:email>marablack3@gmail.com</mal:email>
<mal:years>2014</mal:years>
</mal:credit>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Θάνος Τρυφωνίδης</mal:name>
<mal:email>tomtryf@gmail.com</mal:email>
<mal:years>2014</mal:years>
</mal:credit>
</info>
<title>Γραμμή κατάστασης</title>
<media type="image" mime="image/png" src="media/statusbar3.png"/>
<p>Αυτή η γραμμή κατάστασης χρησιμοποιείται για να εμφανίσει πόσα μηνύματα στοιβάζονται σε μια σειρά τελευταίο προς πρώτο. Το μήνυμα στην κορυφή της στοίβας είναι πάντα αυτό που εμφανίζεται.</p>
<code mime="text/x-csrc" style="numbered">
#περιλαμβάνει <gtk/gtk.h>
/*Η συνάρτηση επανάκλησης στην οποία προωθεί ένα στοιχείο στη γραμμή κατάστασης*/
static void
push_item (GtkWidget *widget,
gpointer data)
{
GtkWidget *status_bar = data;
/*Δημιουργία ενός αναγνωριστικού περιεχομένου, που χρησιμοποιείται για μοναδική αναγνώριση
*the source of a message*/
guint context_id = gtk_statusbar_get_context_id (GTK_STATUSBAR (status_bar),
"Statusbar example");
/*Η μέτρηση χρησιμοποιείται για παρακολούθηση του αριθμού των στοιχείων
the user is pushing/popping*/
static int count = 1;
char hold_output[20];
/*Αυτή είναι μια ασφαλέστερη μορφή της τυπικής συνάρτησης sprintf (). Η έξοδος
εγγυάται στην περίπτωση που δεν ξεπερνά τους 20 χαρακτήρες και το αποτέλεσμα αποθηκεύεται
into the 'hold_output' variable*/
g_snprintf (hold_output, 20, "Item %d", count++);
gtk_statusbar_push (GTK_STATUSBAR (status_bar),
context_id,
hold_output);
}
/*Η συνάρτηση επανάκλησης που χρησιμοποιείται για ανάδυση ενός στοιχείου από τη γραμμή κατάστασης*/
static void
pop_item (GtkWidget *widget,
gpointer data )
{
GtkWidget *status_bar = data;
guint context_id = gtk_statusbar_get_context_id (GTK_STATUSBAR (status_bar),
"Statusbar example");
gtk_statusbar_pop (GTK_STATUSBAR (status_bar), context_id);
}
static void
activate (GtkApplication *app,
gpointer user_data)
{
GtkWidget *grid;
GtkWidget *window;
GtkWidget *status_bar;
GtkWidget *pop_button;
GtkWidget *push_button;
/*Δημιουργία παραθύρου με τίτλο, πλάτος περιγράμματος και προεπιλεγμένο μέγεθος**/
window = gtk_application_window_new (app);
gtk_window_set_default_size (GTK_WINDOW (window), 220, 100);
gtk_window_set_title (GTK_WINDOW (window), "Statusbar Example");
gtk_container_set_border_width (GTK_CONTAINER(window), 10);
/*Δημιουργία της γραμμής κατάστασης, που κρατιέται στην καθολική μεταβλητή*/
status_bar = gtk_statusbar_new ();
/*Δημιουργίαν των πλήκτρων με ετικέτες*/
push_button = gtk_button_new_with_label ("push item");
pop_button = gtk_button_new_with_label ("pop last item");
/*Δημιουργία του πλέγματος και κατάλληλη προσάρτηση των πλήκτρων/γραμμής κατάστασης */
grid = gtk_grid_new ();
gtk_grid_attach (GTK_GRID (grid), push_button, 0,1,1,1);
gtk_grid_attach (GTK_GRID (grid), pop_button, 0,2,1,1);
gtk_grid_attach (GTK_GRID (grid), status_bar, 0,3,1,1);
/*Σύνδεση των πατημένων σημάτων με τις αντίστοιχες συναρτήσεις επανάκλησης*/
g_signal_connect (GTK_BUTTON (push_button), "clicked",
G_CALLBACK (push_item), status_bar);
g_signal_connect (GTK_BUTTON (pop_button), "clicked",
G_CALLBACK (pop_item), status_bar);
/*Προσάρτηση του πλέγματος που κρατά τα θυγατρικά γραφικά στοιχεία στο παράθυρο και εμφάνιση όλων*/
gtk_container_add (GTK_CONTAINER (window), grid);
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>Σε αυτό το παράδειγμα χρησιμοποιήσαμε τα παρακάτω:</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/GtkStatusbar.html">Γραμμή κατάστασης Gtk (GtkStatusBar)</link></p></item>
<item><p><link href="http://developer.gnome.org/glib/stable/glib-String-Utility-Functions.html#g-snprintf">String Utility Functions</link></p></item>
<item><p><link href="http://developer.gnome.org/gtk3/stable/GtkGrid.html">GtkGrid</link></p></item>
</list>
</page>
|