1 /*
2 * DO NOT EDIT THIS FILE - it is generated by Glade.
3 */
4
5 #ifdef HAVE_CONFIG_H
6 # include <config.h>
7 #endif
8
9 #include <sys/types.h>
10 #include <sys/stat.h>
11 #include <unistd.h>
12 #include <string.h>
13 #include <stdio.h>
14
15 #include <gdk/gdkkeysyms.h>
16 #include <gtk/gtk.h>
17
18 #ifdef HILDONIZED
19 #include <libosso.h>
20 #include <hildon-widgets/hildon-app.h>
21 #include <hildon-widgets/hildon-appview.h>
22 #endif
23
24 #include "callbacks.h"
25 #include "interface.h"
26 #include "support.h"
27 #include "appdata.h"
28
29 #define GLADE_HOOKUP_OBJECT(component,widget,name) \
30 g_object_set_data_full (G_OBJECT (component), name, \
31 gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref)
32
33 #define GLADE_HOOKUP_OBJECT_NO_REF(component,widget,name) \
34 g_object_set_data (G_OBJECT (component), name, widget)
35
36 AppData *
create_window_main(AppData * appdata_in)37 create_window_main (AppData * appdata_in)
38 {
39
40 AppData *appdata = NULL;
41 appdata = (AppData *) appdata_in;
42
43 /* Widgets which are not needed to be accessed outside */
44 GtkWidget *vbox_main;
45 GtkWidget *vbox_info;
46 GtkWidget *hbox1;
47 GtkWidget *button_clear;
48 GtkWidget *label8;
49 GtkObject *spinbutton_count_adj;
50 GtkWidget *button_start;
51 GtkWidget *alignment1;
52 GtkWidget *hbox2;
53 GtkWidget *image1;
54 GtkWidget *label6;
55 GtkWidget *scrolledwindow1;
56 GtkWidget *image2;
57 GtkWidget *frame1;
58 GtkWidget *alignment2;
59 GtkWidget *vbox_entrys;
60 GtkObject *spinbutton_entrys_adj;
61 GtkWidget *label3;
62 GtkWidget *frame2;
63 GtkWidget *alignment3;
64 GtkWidget *vbox_buttons;
65 GSList *radiobutton_buttons_1_group;
66 GtkWidget *label4;
67 GtkWidget *frame3;
68 GtkWidget *alignment4;
69 GtkWidget *vbox_text;
70 GtkWidget *label9;
71 GtkWidget *frame4;
72 GtkWidget *alignment5;
73 GtkWidget *vbox_drawing;
74 GtkWidget *label10;
75 GtkWidget *scrolledwindow2;
76 GtkWidget *image3;
77
78 #ifdef HILDONIZED
79 /* maemo version */
80 /* Create the hildon application and setup the title */
81 appdata->app = HILDON_APP (hildon_app_new ());
82 hildon_app_set_title (appdata->app, "GtkPerf");
83
84 /* Create HildonAppView and set it to HildonApp */
85 appdata->window_main = HILDON_APPVIEW (hildon_appview_new (NULL));
86 hildon_app_set_appview (appdata->app, appdata->window_main);
87 gtk_widget_show (GTK_WIDGET (appdata->app));
88
89 #else
90 /* normal GTK+ version */
91 appdata->window_main = gtk_window_new (GTK_WINDOW_TOPLEVEL);
92 gtk_window_set_title (GTK_WINDOW (appdata->window_main),
93 _("GtkPerf"));
94 gtk_window_set_default_size (GTK_WINDOW (appdata->window_main), 500,
95 300);
96 gtk_widget_show(appdata->window_main);
97
98 #endif
99
100 vbox_main = gtk_vbox_new (FALSE, 0);
101 gtk_widget_show (vbox_main);
102 gtk_container_add (GTK_CONTAINER (appdata->window_main), vbox_main);
103
104 appdata->notebook_main = GTK_NOTEBOOK (gtk_notebook_new ());
105 gtk_widget_show (GTK_WIDGET (appdata->notebook_main));
106 gtk_box_pack_start (GTK_BOX (vbox_main),
107 GTK_WIDGET (appdata->notebook_main), TRUE, TRUE,
108 0);
109 gtk_container_set_border_width (GTK_CONTAINER
110 (appdata->notebook_main), 4);
111
112 vbox_info = gtk_vbox_new (FALSE, 0);
113 gtk_widget_show (vbox_info);
114 gtk_container_add (GTK_CONTAINER (appdata->notebook_main), vbox_info);
115 hbox1 = gtk_hbox_new (FALSE, 10);
116 gtk_widget_show (hbox1);
117 gtk_box_pack_start (GTK_BOX (vbox_info), hbox1, FALSE, TRUE, 4);
118
119 button_clear = gtk_button_new_from_stock ("gtk-clear");
120 gtk_widget_show (button_clear);
121 gtk_box_pack_start (GTK_BOX (hbox1), button_clear, FALSE, FALSE, 0);
122
123 label8 = gtk_label_new (_("Test rounds:"));
124 gtk_widget_show (label8);
125 gtk_box_pack_start (GTK_BOX (hbox1), label8, FALSE, FALSE, 0);
126
127 spinbutton_count_adj = gtk_adjustment_new (10, 0, 10000, 1, 10, 10);
128 appdata->spinbutton_count =
129 gtk_spin_button_new (GTK_ADJUSTMENT (spinbutton_count_adj), 1,
130 0);
131 gtk_widget_show (appdata->spinbutton_count);
132 gtk_box_pack_start (GTK_BOX (hbox1), appdata->spinbutton_count, FALSE,
133 TRUE, 0);
134 gtk_widget_set_size_request (appdata->spinbutton_count, 100, -1);
135 appdata->combobox_testtype = gtk_combo_box_new_text ();
136 gtk_widget_show (appdata->combobox_testtype);
137 gtk_box_pack_start (GTK_BOX (hbox1), appdata->combobox_testtype, TRUE,
138 TRUE, 0);
139 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
140 _("Test All"));
141 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
142 _("GtkEntry"));
143 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
144 _("GtkComboBox"));
145 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
146 _("GtkComboBoxEntry"));
147 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
148 _("GtkSpinButton"));
149 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
150 _("GtkProgressBar"));
151 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
152 _("GtkToggleButton"));
153 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
154 _("GtkCheckButton"));
155 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
156 _("GtkRadioButton"));
157 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
158 _("GtkTextView - Add text"));
159 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
160 _("GtkTextView - Scroll"));
161 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
162 _("GtkDrawingArea - Lines"));
163 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
164 _("GtkDrawingArea - Circles"));
165 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
166 _("GtkDrawingArea - Text"));
167 gtk_combo_box_append_text (GTK_COMBO_BOX (appdata->combobox_testtype),
168 _("GtkDrawingArea - Pixbufs"));
169
170 button_start = gtk_button_new ();
171 gtk_widget_show (button_start);
172 gtk_box_pack_start (GTK_BOX (hbox1), button_start, FALSE, FALSE, 0);
173
174 alignment1 = gtk_alignment_new (0.5, 0.5, 0, 0);
175 gtk_widget_show (alignment1);
176 gtk_container_add (GTK_CONTAINER (button_start), alignment1);
177
178 hbox2 = gtk_hbox_new (FALSE, 2);
179 gtk_widget_show (hbox2);
180 gtk_container_add (GTK_CONTAINER (alignment1), hbox2);
181 image1 = gtk_image_new_from_stock ("gtk-execute",
182 GTK_ICON_SIZE_BUTTON);
183 gtk_widget_show (image1);
184 gtk_box_pack_start (GTK_BOX (hbox2), image1, FALSE, FALSE, 0);
185
186 label6 = gtk_label_new_with_mnemonic (_("Start"));
187 gtk_widget_show (label6);
188 gtk_box_pack_start (GTK_BOX (hbox2), label6, FALSE, FALSE, 0);
189
190 scrolledwindow1 = gtk_scrolled_window_new (NULL, NULL);
191 gtk_widget_show (scrolledwindow1);
192 gtk_box_pack_start (GTK_BOX (vbox_info), scrolledwindow1, TRUE, TRUE,
193 2);
194 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow1),
195 GTK_POLICY_NEVER,
196 GTK_POLICY_AUTOMATIC);
197 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW
198 (scrolledwindow1),
199 GTK_SHADOW_IN);
200 appdata->textview_info = gtk_text_view_new ();
201 gtk_widget_show (appdata->textview_info);
202 gtk_container_add (GTK_CONTAINER (scrolledwindow1),
203 appdata->textview_info);
204 gtk_container_set_border_width (GTK_CONTAINER
205 (appdata->textview_info), 4);
206 gtk_text_view_set_editable (GTK_TEXT_VIEW (appdata->textview_info),
207 FALSE);
208 gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (appdata->textview_info),
209 GTK_WRAP_WORD);
210 gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW
211 (appdata->textview_info), FALSE);
212
213 image2 = gtk_image_new_from_stock ("gtk-dialog-info",
214 GTK_ICON_SIZE_BUTTON);
215 gtk_widget_show (image2);
216 gtk_notebook_set_tab_label (GTK_NOTEBOOK (appdata->notebook_main),
217 gtk_notebook_get_nth_page (GTK_NOTEBOOK
218 (appdata->
219 notebook_main),
220 0), image2);
221 frame1 = gtk_frame_new (NULL);
222 gtk_widget_show (frame1);
223 gtk_container_add (GTK_CONTAINER (appdata->notebook_main), frame1);
224 gtk_container_set_border_width (GTK_CONTAINER (frame1), 10);
225 gtk_frame_set_shadow_type (GTK_FRAME (frame1), GTK_SHADOW_NONE);
226
227 alignment2 = gtk_alignment_new (0.5, 0.2, 0.3, 0);
228 gtk_widget_show (alignment2);
229 gtk_container_add (GTK_CONTAINER (frame1), alignment2);
230
231 vbox_entrys = gtk_vbox_new (FALSE, 0);
232 gtk_widget_show (vbox_entrys);
233 gtk_container_add (GTK_CONTAINER (alignment2), vbox_entrys);
234 appdata->entry_entrys = gtk_entry_new ();
235 gtk_widget_show (appdata->entry_entrys);
236 gtk_box_pack_start (GTK_BOX (vbox_entrys), appdata->entry_entrys,
237 FALSE, FALSE, 0);
238
239 appdata->combobox_entrys = gtk_combo_box_new_text ();
240 gtk_widget_show (appdata->combobox_entrys);
241 gtk_box_pack_start (GTK_BOX (vbox_entrys), appdata->combobox_entrys,
242 TRUE, TRUE, 0);
243
244 appdata->comboboxentry_entrys = gtk_combo_box_entry_new_text ();
245 gtk_widget_show (appdata->comboboxentry_entrys);
246 gtk_box_pack_start (GTK_BOX (vbox_entrys),
247 appdata->comboboxentry_entrys, TRUE, TRUE, 0);
248
249 spinbutton_entrys_adj = gtk_adjustment_new (1, 0, 10000, 1, 10, 10);
250 appdata->spinbutton_entrys =
251 gtk_spin_button_new (GTK_ADJUSTMENT (spinbutton_entrys_adj),
252 1, 0);
253 gtk_widget_show (appdata->spinbutton_entrys);
254 gtk_box_pack_start (GTK_BOX (vbox_entrys), appdata->spinbutton_entrys,
255 FALSE, FALSE, 0);
256
257 appdata->progressbar_entrys = gtk_progress_bar_new ();
258 gtk_widget_show (appdata->progressbar_entrys);
259 gtk_box_pack_start (GTK_BOX (vbox_entrys),
260 appdata->progressbar_entrys, FALSE, FALSE, 0);
261 gtk_progress_bar_set_text (GTK_PROGRESS_BAR
262 (appdata->progressbar_entrys),
263 _("GtkProgressBar"));
264
265 appdata->label_entrys = gtk_label_new (_("Entrys"));
266 gtk_widget_show (appdata->label_entrys);
267 gtk_frame_set_label_widget (GTK_FRAME (frame1),
268 appdata->label_entrys);
269 gtk_label_set_use_markup (GTK_LABEL (appdata->label_entrys), TRUE);
270 gtk_misc_set_padding (GTK_MISC (appdata->label_entrys), 10, 0);
271 label3 = gtk_label_new (_("Entrys"));
272 gtk_widget_show (label3);
273 gtk_notebook_set_tab_label (GTK_NOTEBOOK (appdata->notebook_main),
274 gtk_notebook_get_nth_page (GTK_NOTEBOOK
275 (appdata->
276 notebook_main),
277 1), label3);
278
279 frame2 = gtk_frame_new (NULL);
280 gtk_widget_show (frame2);
281 gtk_container_add (GTK_CONTAINER (appdata->notebook_main), frame2);
282 gtk_container_set_border_width (GTK_CONTAINER (frame2), 10);
283 gtk_frame_set_shadow_type (GTK_FRAME (frame2), GTK_SHADOW_NONE);
284
285 alignment3 = gtk_alignment_new (0.5, 0.2, 0.3, 0);
286 gtk_widget_show (alignment3);
287 gtk_container_add (GTK_CONTAINER (frame2), alignment3);
288
289 vbox_buttons = gtk_vbox_new (FALSE, 0);
290 gtk_widget_show (vbox_buttons);
291 gtk_container_add (GTK_CONTAINER (alignment3), vbox_buttons);
292 appdata->togglebutton_buttons =
293 gtk_toggle_button_new_with_mnemonic (_("GtkToggleButton"));
294 gtk_widget_show (appdata->togglebutton_buttons);
295 gtk_box_pack_start (GTK_BOX (vbox_buttons),
296 appdata->togglebutton_buttons, FALSE, FALSE, 0);
297
298 appdata->checkbutton_buttons =
299 gtk_check_button_new_with_mnemonic (_("GtkCheckButton"));
300 gtk_widget_show (appdata->checkbutton_buttons);
301 gtk_box_pack_start (GTK_BOX (vbox_buttons),
302 appdata->checkbutton_buttons, FALSE, FALSE, 0);
303
304 radiobutton_buttons_1_group = NULL;
305 appdata->radiobutton_buttons_1 =
306 gtk_radio_button_new_with_mnemonic (NULL,
307 _("GtkRadioButton 1"));
308 gtk_widget_show (appdata->radiobutton_buttons_1);
309 gtk_box_pack_start (GTK_BOX (vbox_buttons),
310 appdata->radiobutton_buttons_1, FALSE, FALSE, 0);
311 gtk_radio_button_set_group (GTK_RADIO_BUTTON
312 (appdata->radiobutton_buttons_1),
313 radiobutton_buttons_1_group);
314 radiobutton_buttons_1_group =
315 gtk_radio_button_get_group (GTK_RADIO_BUTTON
316 (appdata->radiobutton_buttons_1));
317
318 appdata->radiobutton_buttons_2 =
319 gtk_radio_button_new_with_mnemonic (NULL,
320 _("GtkRadioButton 2"));
321 gtk_widget_show (appdata->radiobutton_buttons_2);
322 gtk_box_pack_start (GTK_BOX (vbox_buttons),
323 appdata->radiobutton_buttons_2, FALSE, FALSE, 0);
324 gtk_radio_button_set_group (GTK_RADIO_BUTTON
325 (appdata->radiobutton_buttons_2),
326 radiobutton_buttons_1_group);
327 radiobutton_buttons_1_group =
328 gtk_radio_button_get_group (GTK_RADIO_BUTTON
329 (appdata->radiobutton_buttons_2));
330 appdata->label_buttons = gtk_label_new (_("Buttons"));
331 gtk_widget_show (appdata->label_buttons);
332 gtk_frame_set_label_widget (GTK_FRAME (frame2),
333 appdata->label_buttons);
334 gtk_label_set_use_markup (GTK_LABEL (appdata->label_buttons), TRUE);
335 gtk_misc_set_padding (GTK_MISC (appdata->label_buttons), 10, 0);
336
337 label4 = gtk_label_new (_("Buttons"));
338 gtk_widget_show (label4);
339 gtk_notebook_set_tab_label (GTK_NOTEBOOK (appdata->notebook_main),
340 gtk_notebook_get_nth_page (GTK_NOTEBOOK
341 (appdata->
342 notebook_main),
343 2), label4);
344
345 frame3 = gtk_frame_new (NULL);
346 gtk_widget_show (frame3);
347 gtk_container_add (GTK_CONTAINER (appdata->notebook_main), frame3);
348 gtk_container_set_border_width (GTK_CONTAINER (frame3), 10);
349 gtk_frame_set_shadow_type (GTK_FRAME (frame3), GTK_SHADOW_NONE);
350
351 alignment4 = gtk_alignment_new (0.5, 0.5, 1, 1);
352 gtk_widget_show (alignment4);
353 gtk_container_add (GTK_CONTAINER (frame3), alignment4);
354 gtk_container_set_border_width (GTK_CONTAINER (alignment4), 5);
355
356 vbox_text = gtk_vbox_new (FALSE, 0);
357 gtk_widget_show (vbox_text);
358 gtk_container_add (GTK_CONTAINER (alignment4), vbox_text);
359 appdata->scrolledwindow_text = gtk_scrolled_window_new (NULL, NULL);
360 gtk_widget_show (appdata->scrolledwindow_text);
361 gtk_box_pack_start (GTK_BOX (vbox_text), appdata->scrolledwindow_text,
362 TRUE, TRUE, 0);
363 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW
364 (appdata->scrolledwindow_text),
365 GTK_POLICY_NEVER, GTK_POLICY_ALWAYS);
366 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW
367 (appdata->scrolledwindow_text),
368 GTK_SHADOW_IN);
369
370 appdata->textview_text = gtk_text_view_new ();
371 gtk_widget_show (appdata->textview_text);
372 gtk_container_add (GTK_CONTAINER (appdata->scrolledwindow_text),
373 appdata->textview_text);
374 gtk_text_view_set_editable (GTK_TEXT_VIEW (appdata->textview_text),
375 FALSE);
376 gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (appdata->textview_text),
377 GTK_WRAP_WORD);
378 gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW
379 (appdata->textview_text), FALSE);
380
381 appdata->label_text = gtk_label_new (_("GtkTextView"));
382 gtk_widget_show (appdata->label_text);
383 gtk_frame_set_label_widget (GTK_FRAME (frame3), appdata->label_text);
384 gtk_label_set_use_markup (GTK_LABEL (appdata->label_text), TRUE);
385 gtk_misc_set_padding (GTK_MISC (appdata->label_text), 10, 0);
386
387 label9 = gtk_label_new (_("Text"));
388 gtk_widget_show (label9);
389 gtk_notebook_set_tab_label (GTK_NOTEBOOK (appdata->notebook_main),
390 gtk_notebook_get_nth_page (GTK_NOTEBOOK
391 (appdata->
392 notebook_main),
393 3), label9);
394 frame4 = gtk_frame_new (NULL);
395 gtk_widget_show (frame4);
396 gtk_container_add (GTK_CONTAINER (appdata->notebook_main), frame4);
397 gtk_container_set_border_width (GTK_CONTAINER (frame4), 10);
398 gtk_frame_set_shadow_type (GTK_FRAME (frame4), GTK_SHADOW_NONE);
399
400 alignment5 = gtk_alignment_new (0.5, 0.5, 0.95, 0.9);
401 gtk_widget_show (alignment5);
402 gtk_container_add (GTK_CONTAINER (frame4), alignment5);
403
404 vbox_drawing = gtk_vbox_new (FALSE, 0);
405 gtk_widget_show (vbox_drawing);
406 gtk_container_add (GTK_CONTAINER (alignment5), vbox_drawing);
407
408 appdata->drawingarea_drawing = gtk_drawing_area_new ();
409 gtk_widget_show (appdata->drawingarea_drawing);
410 gtk_box_pack_start (GTK_BOX (vbox_drawing),
411 appdata->drawingarea_drawing, TRUE, TRUE, 0);
412
413 appdata->label_drawing = gtk_label_new (_("GtkDrawingArea"));
414 gtk_widget_show (appdata->label_drawing);
415 gtk_frame_set_label_widget (GTK_FRAME (frame4),
416 appdata->label_drawing);
417 gtk_label_set_use_markup (GTK_LABEL (appdata->label_drawing), TRUE);
418 gtk_misc_set_padding (GTK_MISC (appdata->label_drawing), 10, 0);
419
420 label10 = gtk_label_new (_("Drawing"));
421 gtk_widget_show (label10);
422 gtk_notebook_set_tab_label (GTK_NOTEBOOK (appdata->notebook_main),
423 gtk_notebook_get_nth_page (GTK_NOTEBOOK
424 (appdata->
425 notebook_main),
426 4), label10);
427
428 scrolledwindow2 = gtk_scrolled_window_new (NULL, NULL);
429 gtk_widget_show (scrolledwindow2);
430 gtk_container_add (GTK_CONTAINER (appdata->notebook_main),
431 scrolledwindow2);
432 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow2),
433 GTK_POLICY_NEVER,
434 GTK_POLICY_AUTOMATIC);
435 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW
436 (scrolledwindow2),
437 GTK_SHADOW_IN);
438 appdata->textview_help = gtk_text_view_new ();
439 gtk_widget_show (appdata->textview_help);
440 gtk_container_add (GTK_CONTAINER (scrolledwindow2),
441 appdata->textview_help);
442 gtk_container_set_border_width (GTK_CONTAINER
443 (appdata->textview_help), 4);
444 gtk_text_view_set_editable (GTK_TEXT_VIEW (appdata->textview_help),
445 FALSE);
446 gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (appdata->textview_help),
447 GTK_WRAP_WORD);
448
449 image3 = gtk_image_new_from_stock ("gtk-help", GTK_ICON_SIZE_BUTTON);
450 gtk_widget_show (image3);
451 gtk_notebook_set_tab_label (GTK_NOTEBOOK (appdata->notebook_main),
452 gtk_notebook_get_nth_page (GTK_NOTEBOOK
453 (appdata->
454 notebook_main),
455 5), image3);
456
457 appdata->statusbar_main = gtk_statusbar_new ();
458 gtk_widget_show (appdata->statusbar_main);
459 gtk_box_pack_start (GTK_BOX (vbox_main), appdata->statusbar_main,
460 FALSE, FALSE, 0);
461
462 g_signal_connect ((gpointer) appdata->window_main, "delete_event",
463 G_CALLBACK (on_window_main_delete_event), NULL);
464 g_signal_connect ((gpointer) button_clear, "clicked",
465 G_CALLBACK (on_button_clear_clicked), NULL);
466 g_signal_connect ((gpointer) button_start, "clicked",
467 G_CALLBACK (on_button_start_clicked), NULL);
468
469 return appdata;
470 }
471