2 * DO NOT EDIT THIS FILE - it is generated by Glade.
14 #include <gdk/gdkkeysyms.h>
17 #include "demo-Gtk-stubs.h"
18 #include "demo-Gtk-widgets.h"
21 create_xscreensaver_demo (void)
23 GtkWidget *xscreensaver_demo;
24 GtkWidget *outer_vbox;
29 GtkAccelGroup *file_menu_accels;
30 GtkWidget *activate_menu;
34 GtkWidget *separator1;
38 GtkAccelGroup *edit_menu_accels;
41 GtkWidget *paste_menu;
44 GtkAccelGroup *help_menu_accels;
45 GtkWidget *about_menu;
48 GtkWidget *demos_hbox;
53 GtkWidget *centering_hbox;
54 GtkWidget *next_prev_hbox;
60 GtkWidget *opts_vbox2;
63 GtkWidget *opts_hbox3;
66 GtkWidget *visual_combo;
67 GList *visual_combo_items = NULL;
68 GtkWidget *combo_entry1;
69 GtkWidget *demo_hline;
70 GtkWidget *demo_manual_hbox;
74 GtkWidget *options_vbox;
75 GtkWidget *options_table;
76 GtkWidget *options_table_2;
77 GtkWidget *dpms_frame;
78 GtkWidget *dpms_table;
79 GtkWidget *dpms_off_text;
80 GtkWidget *dpms_suspend_text;
81 GtkWidget *dpms_standby_text;
82 GtkWidget *dpms_standby_label;
83 GtkWidget *dpms_off_label;
84 GtkWidget *dpms_suspend_label;
85 GtkWidget *dpms_dummy;
86 GtkWidget *dpms_button_eventbox;
87 GtkWidget *dpms_button;
88 GtkWidget *cmap_frame;
89 GtkWidget *cmap_table;
91 GtkWidget *cmap_dummy;
92 GtkWidget *fade_label;
93 GtkWidget *install_button_eventbox;
94 GtkWidget *install_button;
95 GtkWidget *fade_button_eventbox;
96 GtkWidget *fade_button;
97 GtkWidget *unfade_button_eventbox;
98 GtkWidget *unfade_button;
100 GtkWidget *options_table_1;
101 GtkWidget *grab_frame;
102 GtkWidget *grab_table;
103 GtkWidget *grab_image_eventbox;
104 GtkWidget *grab_image_button;
105 GtkWidget *image_browse_button;
106 GtkWidget *grab_video_eventbox;
107 GtkWidget *grab_video_button;
108 GtkWidget *grab_desk_eventbox;
109 GtkWidget *grab_desk_button;
110 GtkWidget *grab_dummy;
111 GtkWidget *image_text;
112 GtkWidget *blanking_frame;
113 GtkWidget *blanking_table;
114 GtkWidget *lock_text;
115 GtkWidget *cycle_text;
116 GtkWidget *timeout_text;
117 GtkWidget *timeout_label;
118 GtkWidget *cycle_label;
119 GtkWidget *lock_label;
120 GtkWidget *blanking_dummy;
121 GtkWidget *lock_button_eventbox;
122 GtkWidget *lock_button;
123 GtkWidget *blanking_hr;
124 GtkWidget *diag_frame;
125 GtkWidget *diag_table;
126 GtkWidget *splash_button_eventbox;
127 GtkWidget *splash_button;
128 GtkWidget *capture_button_eventbox;
129 GtkWidget *capture_button;
130 GtkWidget *verbose_button_eventbox;
131 GtkWidget *verbose_button;
132 GtkWidget *options_tab;
133 GtkAccelGroup *accel_group;
134 GtkTooltips *tooltips;
136 tooltips = gtk_tooltips_new ();
138 accel_group = gtk_accel_group_new ();
140 xscreensaver_demo = gtk_window_new (GTK_WINDOW_TOPLEVEL);
141 gtk_widget_set_name (xscreensaver_demo, "xscreensaver_demo");
142 gtk_object_set_data (GTK_OBJECT (xscreensaver_demo), "xscreensaver_demo", xscreensaver_demo);
143 gtk_window_set_title (GTK_WINDOW (xscreensaver_demo), "XScreenSaver");
144 gtk_window_set_policy (GTK_WINDOW (xscreensaver_demo), TRUE, TRUE, FALSE);
145 gtk_window_set_wmclass (GTK_WINDOW (xscreensaver_demo), "xscreensaver", "XScreenSaver");
147 outer_vbox = gtk_vbox_new (FALSE, 5);
148 gtk_widget_set_name (outer_vbox, "outer_vbox");
149 gtk_widget_ref (outer_vbox);
150 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "outer_vbox", outer_vbox,
151 (GtkDestroyNotify) gtk_widget_unref);
152 gtk_widget_show (outer_vbox);
153 gtk_container_add (GTK_CONTAINER (xscreensaver_demo), outer_vbox);
155 menubar = gtk_menu_bar_new ();
156 gtk_widget_set_name (menubar, "menubar");
157 gtk_widget_ref (menubar);
158 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "menubar", menubar,
159 (GtkDestroyNotify) gtk_widget_unref);
160 gtk_widget_show (menubar);
161 gtk_box_pack_start (GTK_BOX (outer_vbox), menubar, FALSE, FALSE, 0);
163 file = gtk_menu_item_new_with_label ("");
164 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (file)->child),
166 gtk_widget_add_accelerator (file, "activate_item", accel_group,
167 tmp_key, GDK_MOD1_MASK, 0);
168 gtk_widget_set_name (file, "file");
169 gtk_widget_ref (file);
170 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "file", file,
171 (GtkDestroyNotify) gtk_widget_unref);
172 gtk_widget_show (file);
173 gtk_container_add (GTK_CONTAINER (menubar), file);
175 file_menu = gtk_menu_new ();
176 gtk_widget_set_name (file_menu, "file_menu");
177 gtk_widget_ref (file_menu);
178 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "file_menu", file_menu,
179 (GtkDestroyNotify) gtk_widget_unref);
180 gtk_menu_item_set_submenu (GTK_MENU_ITEM (file), file_menu);
181 file_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (file_menu));
183 activate_menu = gtk_menu_item_new_with_label ("");
184 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (activate_menu)->child),
185 "_Blank Screen Now");
186 gtk_widget_add_accelerator (activate_menu, "activate_item", file_menu_accels,
188 gtk_widget_set_name (activate_menu, "activate_menu");
189 gtk_widget_ref (activate_menu);
190 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "activate_menu", activate_menu,
191 (GtkDestroyNotify) gtk_widget_unref);
192 gtk_widget_show (activate_menu);
193 gtk_container_add (GTK_CONTAINER (file_menu), activate_menu);
194 gtk_tooltips_set_tip (tooltips, activate_menu, "Activate the XScreenSaver daemon now (locking the screen if so configured.)", NULL);
196 lock_menu = gtk_menu_item_new_with_label ("");
197 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (lock_menu)->child),
199 gtk_widget_add_accelerator (lock_menu, "activate_item", file_menu_accels,
201 gtk_widget_set_name (lock_menu, "lock_menu");
202 gtk_widget_ref (lock_menu);
203 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "lock_menu", lock_menu,
204 (GtkDestroyNotify) gtk_widget_unref);
205 gtk_widget_show (lock_menu);
206 gtk_container_add (GTK_CONTAINER (file_menu), lock_menu);
207 gtk_tooltips_set_tip (tooltips, lock_menu, "Lock the screen now (even if \"Require Password\" is unchecked.)", NULL);
209 kill_menu = gtk_menu_item_new_with_label ("");
210 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (kill_menu)->child),
212 gtk_widget_add_accelerator (kill_menu, "activate_item", file_menu_accels,
214 gtk_widget_set_name (kill_menu, "kill_menu");
215 gtk_widget_ref (kill_menu);
216 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "kill_menu", kill_menu,
217 (GtkDestroyNotify) gtk_widget_unref);
218 gtk_widget_show (kill_menu);
219 gtk_container_add (GTK_CONTAINER (file_menu), kill_menu);
220 gtk_tooltips_set_tip (tooltips, kill_menu, "Tell the running XScreenSaver daemon to exit.", NULL);
222 restart = gtk_menu_item_new_with_label ("");
223 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (restart)->child),
225 gtk_widget_add_accelerator (restart, "activate_item", file_menu_accels,
227 gtk_widget_set_name (restart, "restart");
228 gtk_widget_ref (restart);
229 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "restart", restart,
230 (GtkDestroyNotify) gtk_widget_unref);
231 gtk_widget_show (restart);
232 gtk_container_add (GTK_CONTAINER (file_menu), restart);
233 gtk_tooltips_set_tip (tooltips, restart, "Kill and re-launch the XScreenSaver daemon.", NULL);
235 separator1 = gtk_menu_item_new ();
236 gtk_widget_set_name (separator1, "separator1");
237 gtk_widget_ref (separator1);
238 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "separator1", separator1,
239 (GtkDestroyNotify) gtk_widget_unref);
240 gtk_widget_show (separator1);
241 gtk_container_add (GTK_CONTAINER (file_menu), separator1);
242 gtk_widget_set_sensitive (separator1, FALSE);
244 exit_menu = gtk_menu_item_new_with_label ("");
245 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (exit_menu)->child),
247 gtk_widget_add_accelerator (exit_menu, "activate_item", file_menu_accels,
249 gtk_widget_set_name (exit_menu, "exit_menu");
250 gtk_widget_ref (exit_menu);
251 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "exit_menu", exit_menu,
252 (GtkDestroyNotify) gtk_widget_unref);
253 gtk_widget_show (exit_menu);
254 gtk_container_add (GTK_CONTAINER (file_menu), exit_menu);
255 gtk_tooltips_set_tip (tooltips, exit_menu, "Exit the xscreensaver-demo program (but leave the XScreenSaver daemon running in the background.)", NULL);
257 edit = gtk_menu_item_new_with_label ("");
258 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (edit)->child),
260 gtk_widget_add_accelerator (edit, "activate_item", accel_group,
261 tmp_key, GDK_MOD1_MASK, 0);
262 gtk_widget_set_name (edit, "edit");
263 gtk_widget_ref (edit);
264 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "edit", edit,
265 (GtkDestroyNotify) gtk_widget_unref);
266 gtk_widget_show (edit);
267 gtk_container_add (GTK_CONTAINER (menubar), edit);
269 edit_menu = gtk_menu_new ();
270 gtk_widget_set_name (edit_menu, "edit_menu");
271 gtk_widget_ref (edit_menu);
272 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "edit_menu", edit_menu,
273 (GtkDestroyNotify) gtk_widget_unref);
274 gtk_menu_item_set_submenu (GTK_MENU_ITEM (edit), edit_menu);
275 edit_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (edit_menu));
277 cut_menu = gtk_menu_item_new_with_label ("");
278 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (cut_menu)->child),
280 gtk_widget_add_accelerator (cut_menu, "activate_item", edit_menu_accels,
282 gtk_widget_set_name (cut_menu, "cut_menu");
283 gtk_widget_ref (cut_menu);
284 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cut_menu", cut_menu,
285 (GtkDestroyNotify) gtk_widget_unref);
286 gtk_widget_show (cut_menu);
287 gtk_container_add (GTK_CONTAINER (edit_menu), cut_menu);
289 copy_menu = gtk_menu_item_new_with_label ("");
290 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (copy_menu)->child),
292 gtk_widget_add_accelerator (copy_menu, "activate_item", edit_menu_accels,
294 gtk_widget_set_name (copy_menu, "copy_menu");
295 gtk_widget_ref (copy_menu);
296 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "copy_menu", copy_menu,
297 (GtkDestroyNotify) gtk_widget_unref);
298 gtk_widget_show (copy_menu);
299 gtk_container_add (GTK_CONTAINER (edit_menu), copy_menu);
301 paste_menu = gtk_menu_item_new_with_label ("");
302 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (paste_menu)->child),
304 gtk_widget_add_accelerator (paste_menu, "activate_item", edit_menu_accels,
306 gtk_widget_set_name (paste_menu, "paste_menu");
307 gtk_widget_ref (paste_menu);
308 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "paste_menu", paste_menu,
309 (GtkDestroyNotify) gtk_widget_unref);
310 gtk_widget_show (paste_menu);
311 gtk_container_add (GTK_CONTAINER (edit_menu), paste_menu);
313 help = gtk_menu_item_new_with_label ("");
314 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (help)->child),
316 gtk_widget_add_accelerator (help, "activate_item", accel_group,
317 tmp_key, GDK_MOD1_MASK, 0);
318 gtk_widget_set_name (help, "help");
319 gtk_widget_ref (help);
320 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "help", help,
321 (GtkDestroyNotify) gtk_widget_unref);
322 gtk_widget_show (help);
323 gtk_container_add (GTK_CONTAINER (menubar), help);
325 help_menu = gtk_menu_new ();
326 gtk_widget_set_name (help_menu, "help_menu");
327 gtk_widget_ref (help_menu);
328 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "help_menu", help_menu,
329 (GtkDestroyNotify) gtk_widget_unref);
330 gtk_menu_item_set_submenu (GTK_MENU_ITEM (help), help_menu);
331 help_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (help_menu));
333 about_menu = gtk_menu_item_new_with_label ("");
334 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (about_menu)->child),
336 gtk_widget_add_accelerator (about_menu, "activate_item", help_menu_accels,
338 gtk_widget_set_name (about_menu, "about_menu");
339 gtk_widget_ref (about_menu);
340 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "about_menu", about_menu,
341 (GtkDestroyNotify) gtk_widget_unref);
342 gtk_widget_show (about_menu);
343 gtk_container_add (GTK_CONTAINER (help_menu), about_menu);
344 gtk_tooltips_set_tip (tooltips, about_menu, "Display version information.", NULL);
346 doc_menu = gtk_menu_item_new_with_label ("");
347 tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (doc_menu)->child),
348 "_Documentation...");
349 gtk_widget_add_accelerator (doc_menu, "activate_item", help_menu_accels,
351 gtk_widget_set_name (doc_menu, "doc_menu");
352 gtk_widget_ref (doc_menu);
353 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "doc_menu", doc_menu,
354 (GtkDestroyNotify) gtk_widget_unref);
355 gtk_widget_show (doc_menu);
356 gtk_container_add (GTK_CONTAINER (help_menu), doc_menu);
357 gtk_tooltips_set_tip (tooltips, doc_menu, "Go to the documentation on the XScreenSaver web page.", NULL);
359 notebook = gtk_notebook_new ();
360 gtk_widget_set_name (notebook, "notebook");
361 gtk_widget_ref (notebook);
362 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "notebook", notebook,
363 (GtkDestroyNotify) gtk_widget_unref);
364 gtk_widget_show (notebook);
365 gtk_box_pack_start (GTK_BOX (outer_vbox), notebook, TRUE, TRUE, 0);
367 demos_hbox = gtk_hbox_new (FALSE, 5);
368 gtk_widget_set_name (demos_hbox, "demos_hbox");
369 gtk_widget_ref (demos_hbox);
370 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "demos_hbox", demos_hbox,
371 (GtkDestroyNotify) gtk_widget_unref);
372 gtk_widget_show (demos_hbox);
373 gtk_container_add (GTK_CONTAINER (notebook), demos_hbox);
375 list_vbox = gtk_vbox_new (FALSE, 5);
376 gtk_widget_set_name (list_vbox, "list_vbox");
377 gtk_widget_ref (list_vbox);
378 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "list_vbox", list_vbox,
379 (GtkDestroyNotify) gtk_widget_unref);
380 gtk_widget_show (list_vbox);
381 gtk_box_pack_start (GTK_BOX (demos_hbox), list_vbox, FALSE, FALSE, 0);
382 gtk_container_set_border_width (GTK_CONTAINER (list_vbox), 10);
384 scroller = gtk_scrolled_window_new (NULL, NULL);
385 gtk_widget_set_name (scroller, "scroller");
386 gtk_widget_ref (scroller);
387 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "scroller", scroller,
388 (GtkDestroyNotify) gtk_widget_unref);
389 gtk_widget_show (scroller);
390 gtk_box_pack_start (GTK_BOX (list_vbox), scroller, TRUE, TRUE, 0);
391 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scroller), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS);
393 viewport = gtk_viewport_new (NULL, NULL);
394 gtk_widget_set_name (viewport, "viewport");
395 gtk_widget_ref (viewport);
396 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "viewport", viewport,
397 (GtkDestroyNotify) gtk_widget_unref);
398 gtk_widget_show (viewport);
399 gtk_container_add (GTK_CONTAINER (scroller), viewport);
400 gtk_container_set_border_width (GTK_CONTAINER (viewport), 1);
402 list = gtk_list_new ();
403 gtk_widget_set_name (list, "list");
404 gtk_widget_ref (list);
405 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "list", list,
406 (GtkDestroyNotify) gtk_widget_unref);
407 gtk_widget_show (list);
408 gtk_container_add (GTK_CONTAINER (viewport), list);
410 centering_hbox = gtk_hbox_new (TRUE, 0);
411 gtk_widget_set_name (centering_hbox, "centering_hbox");
412 gtk_widget_ref (centering_hbox);
413 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "centering_hbox", centering_hbox,
414 (GtkDestroyNotify) gtk_widget_unref);
415 gtk_widget_show (centering_hbox);
416 gtk_box_pack_start (GTK_BOX (list_vbox), centering_hbox, FALSE, TRUE, 0);
418 next_prev_hbox = gtk_hbox_new (FALSE, 0);
419 gtk_widget_set_name (next_prev_hbox, "next_prev_hbox");
420 gtk_widget_ref (next_prev_hbox);
421 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "next_prev_hbox", next_prev_hbox,
422 (GtkDestroyNotify) gtk_widget_unref);
423 gtk_widget_show (next_prev_hbox);
424 gtk_box_pack_start (GTK_BOX (centering_hbox), next_prev_hbox, FALSE, FALSE, 0);
426 next = gtk_button_new_with_label ("\\/");
427 gtk_widget_set_name (next, "next");
428 gtk_widget_ref (next);
429 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "next", next,
430 (GtkDestroyNotify) gtk_widget_unref);
431 gtk_widget_show (next);
432 gtk_box_pack_start (GTK_BOX (next_prev_hbox), next, FALSE, FALSE, 0);
433 GTK_WIDGET_SET_FLAGS (next, GTK_CAN_DEFAULT);
434 gtk_tooltips_set_tip (tooltips, next, "Run the next demo in this list in full-screen mode (click the mouse to return.)", NULL);
436 prev = gtk_button_new_with_label ("/\\");
437 gtk_widget_set_name (prev, "prev");
438 gtk_widget_ref (prev);
439 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "prev", prev,
440 (GtkDestroyNotify) gtk_widget_unref);
441 gtk_widget_show (prev);
442 gtk_box_pack_start (GTK_BOX (next_prev_hbox), prev, FALSE, FALSE, 0);
443 GTK_WIDGET_SET_FLAGS (prev, GTK_CAN_DEFAULT);
444 gtk_tooltips_set_tip (tooltips, prev, "Run the previous demo in this list in full-screen mode (click the mouse to return.)", NULL);
446 opts_vbox = gtk_vbox_new (FALSE, 0);
447 gtk_widget_set_name (opts_vbox, "opts_vbox");
448 gtk_widget_ref (opts_vbox);
449 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "opts_vbox", opts_vbox,
450 (GtkDestroyNotify) gtk_widget_unref);
451 gtk_widget_show (opts_vbox);
452 gtk_box_pack_start (GTK_BOX (demos_hbox), opts_vbox, TRUE, TRUE, 0);
453 gtk_container_set_border_width (GTK_CONTAINER (opts_vbox), 10);
455 frame = gtk_frame_new (NULL);
456 gtk_widget_set_name (frame, "frame");
457 gtk_widget_ref (frame);
458 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "frame", frame,
459 (GtkDestroyNotify) gtk_widget_unref);
460 gtk_widget_show (frame);
461 gtk_box_pack_start (GTK_BOX (opts_vbox), frame, TRUE, TRUE, 0);
463 doc = gtk_label_new ("");
464 gtk_widget_set_name (doc, "doc");
465 gtk_widget_ref (doc);
466 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "doc", doc,
467 (GtkDestroyNotify) gtk_widget_unref);
468 gtk_widget_show (doc);
469 gtk_container_add (GTK_CONTAINER (frame), doc);
470 gtk_label_set_justify (GTK_LABEL (doc), GTK_JUSTIFY_LEFT);
471 gtk_label_set_line_wrap (GTK_LABEL (doc), TRUE);
472 gtk_misc_set_alignment (GTK_MISC (doc), 0, 0);
473 gtk_misc_set_padding (GTK_MISC (doc), 10, 10);
475 opts_vbox2 = gtk_vbox_new (FALSE, 2);
476 gtk_widget_set_name (opts_vbox2, "opts_vbox2");
477 gtk_widget_ref (opts_vbox2);
478 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "opts_vbox2", opts_vbox2,
479 (GtkDestroyNotify) gtk_widget_unref);
480 gtk_widget_show (opts_vbox2);
481 gtk_box_pack_start (GTK_BOX (opts_vbox), opts_vbox2, FALSE, TRUE, 0);
483 cmd_label = gtk_label_new ("Command Line:");
484 gtk_widget_set_name (cmd_label, "cmd_label");
485 gtk_widget_ref (cmd_label);
486 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cmd_label", cmd_label,
487 (GtkDestroyNotify) gtk_widget_unref);
488 gtk_widget_show (cmd_label);
489 gtk_box_pack_start (GTK_BOX (opts_vbox2), cmd_label, FALSE, FALSE, 0);
490 gtk_label_set_justify (GTK_LABEL (cmd_label), GTK_JUSTIFY_LEFT);
491 gtk_misc_set_alignment (GTK_MISC (cmd_label), 0, 1);
492 gtk_misc_set_padding (GTK_MISC (cmd_label), 0, 2);
494 cmd_text = gtk_entry_new ();
495 gtk_widget_set_name (cmd_text, "cmd_text");
496 gtk_widget_ref (cmd_text);
497 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cmd_text", cmd_text,
498 (GtkDestroyNotify) gtk_widget_unref);
499 gtk_widget_show (cmd_text);
500 gtk_box_pack_start (GTK_BOX (opts_vbox2), cmd_text, FALSE, TRUE, 0);
502 opts_hbox3 = gtk_hbox_new (FALSE, 0);
503 gtk_widget_set_name (opts_hbox3, "opts_hbox3");
504 gtk_widget_ref (opts_hbox3);
505 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "opts_hbox3", opts_hbox3,
506 (GtkDestroyNotify) gtk_widget_unref);
507 gtk_widget_show (opts_hbox3);
508 gtk_box_pack_start (GTK_BOX (opts_vbox2), opts_hbox3, FALSE, TRUE, 4);
509 gtk_container_set_border_width (GTK_CONTAINER (opts_hbox3), 4);
511 enabled = gtk_check_button_new_with_label ("Enabled");
512 gtk_widget_set_name (enabled, "enabled");
513 gtk_widget_ref (enabled);
514 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "enabled", enabled,
515 (GtkDestroyNotify) gtk_widget_unref);
516 gtk_widget_show (enabled);
517 gtk_box_pack_start (GTK_BOX (opts_hbox3), enabled, FALSE, FALSE, 0);
518 gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (enabled), TRUE);
520 visual = gtk_label_new ("Visual:");
521 gtk_widget_set_name (visual, "visual");
522 gtk_widget_ref (visual);
523 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "visual", visual,
524 (GtkDestroyNotify) gtk_widget_unref);
525 gtk_widget_show (visual);
526 gtk_box_pack_start (GTK_BOX (opts_hbox3), visual, FALSE, FALSE, 0);
527 gtk_label_set_justify (GTK_LABEL (visual), GTK_JUSTIFY_RIGHT);
528 gtk_misc_set_alignment (GTK_MISC (visual), 1, 0.5);
529 gtk_misc_set_padding (GTK_MISC (visual), 10, 0);
531 visual_combo = gtk_combo_new ();
532 gtk_widget_set_name (visual_combo, "visual_combo");
533 gtk_widget_ref (visual_combo);
534 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "visual_combo", visual_combo,
535 (GtkDestroyNotify) gtk_widget_unref);
536 gtk_widget_show (visual_combo);
537 gtk_box_pack_start (GTK_BOX (opts_hbox3), visual_combo, FALSE, FALSE, 0);
538 visual_combo_items = g_list_append (visual_combo_items, "Any");
539 visual_combo_items = g_list_append (visual_combo_items, "Best");
540 visual_combo_items = g_list_append (visual_combo_items, "Default");
541 visual_combo_items = g_list_append (visual_combo_items, "Default-N");
542 visual_combo_items = g_list_append (visual_combo_items, "GL");
543 visual_combo_items = g_list_append (visual_combo_items, "TrueColor");
544 visual_combo_items = g_list_append (visual_combo_items, "PseudoColor");
545 visual_combo_items = g_list_append (visual_combo_items, "StaticGray");
546 visual_combo_items = g_list_append (visual_combo_items, "GrayScale");
547 visual_combo_items = g_list_append (visual_combo_items, "DirectColor");
548 visual_combo_items = g_list_append (visual_combo_items, "Color");
549 visual_combo_items = g_list_append (visual_combo_items, "Gray");
550 visual_combo_items = g_list_append (visual_combo_items, "Mono");
551 gtk_combo_set_popdown_strings (GTK_COMBO (visual_combo), visual_combo_items);
552 g_list_free (visual_combo_items);
554 combo_entry1 = GTK_COMBO (visual_combo)->entry;
555 gtk_widget_set_name (combo_entry1, "combo_entry1");
556 gtk_widget_ref (combo_entry1);
557 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "combo_entry1", combo_entry1,
558 (GtkDestroyNotify) gtk_widget_unref);
559 gtk_widget_show (combo_entry1);
560 gtk_tooltips_set_tip (tooltips, combo_entry1, "The X visual type that this demo will require. If that visual is available it will be used, otherwise, this demo will not be run.", NULL);
561 gtk_entry_set_text (GTK_ENTRY (combo_entry1), "Any");
563 demo_hline = gtk_hseparator_new ();
564 gtk_widget_set_name (demo_hline, "demo_hline");
565 gtk_widget_ref (demo_hline);
566 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "demo_hline", demo_hline,
567 (GtkDestroyNotify) gtk_widget_unref);
568 gtk_widget_show (demo_hline);
569 gtk_box_pack_start (GTK_BOX (opts_vbox), demo_hline, FALSE, FALSE, 5);
571 demo_manual_hbox = gtk_hbutton_box_new ();
572 gtk_widget_set_name (demo_manual_hbox, "demo_manual_hbox");
573 gtk_widget_ref (demo_manual_hbox);
574 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "demo_manual_hbox", demo_manual_hbox,
575 (GtkDestroyNotify) gtk_widget_unref);
576 gtk_widget_show (demo_manual_hbox);
577 gtk_box_pack_start (GTK_BOX (opts_vbox), demo_manual_hbox, FALSE, TRUE, 0);
579 demo = gtk_button_new_with_label ("Demo");
580 gtk_widget_set_name (demo, "demo");
581 gtk_widget_ref (demo);
582 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "demo", demo,
583 (GtkDestroyNotify) gtk_widget_unref);
584 gtk_widget_show (demo);
585 gtk_container_add (GTK_CONTAINER (demo_manual_hbox), demo);
586 GTK_WIDGET_SET_FLAGS (demo, GTK_CAN_DEFAULT);
587 gtk_tooltips_set_tip (tooltips, demo, "Run this one in full-screen mode (click the mouse to return.)", NULL);
589 manual = gtk_button_new_with_label ("Documentation...");
590 gtk_widget_set_name (manual, "manual");
591 gtk_widget_ref (manual);
592 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "manual", manual,
593 (GtkDestroyNotify) gtk_widget_unref);
594 gtk_widget_show (manual);
595 gtk_container_add (GTK_CONTAINER (demo_manual_hbox), manual);
596 GTK_WIDGET_SET_FLAGS (manual, GTK_CAN_DEFAULT);
597 gtk_tooltips_set_tip (tooltips, manual, "Click here to read the manual for this display mode, if it has one.", NULL);
599 demo_tab = gtk_label_new ("Graphics Demos");
600 gtk_widget_set_name (demo_tab, "demo_tab");
601 gtk_widget_ref (demo_tab);
602 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "demo_tab", demo_tab,
603 (GtkDestroyNotify) gtk_widget_unref);
604 gtk_widget_show (demo_tab);
605 gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook), 0), demo_tab);
607 options_vbox = gtk_vbox_new (FALSE, 0);
608 gtk_widget_set_name (options_vbox, "options_vbox");
609 gtk_widget_ref (options_vbox);
610 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "options_vbox", options_vbox,
611 (GtkDestroyNotify) gtk_widget_unref);
612 gtk_widget_show (options_vbox);
613 gtk_container_add (GTK_CONTAINER (notebook), options_vbox);
615 options_table = gtk_table_new (1, 2, TRUE);
616 gtk_widget_set_name (options_table, "options_table");
617 gtk_widget_ref (options_table);
618 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "options_table", options_table,
619 (GtkDestroyNotify) gtk_widget_unref);
620 gtk_widget_show (options_table);
621 gtk_box_pack_start (GTK_BOX (options_vbox), options_table, FALSE, FALSE, 0);
623 options_table_2 = gtk_table_new (2, 1, FALSE);
624 gtk_widget_set_name (options_table_2, "options_table_2");
625 gtk_widget_ref (options_table_2);
626 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "options_table_2", options_table_2,
627 (GtkDestroyNotify) gtk_widget_unref);
628 gtk_widget_show (options_table_2);
629 gtk_table_attach (GTK_TABLE (options_table), options_table_2, 1, 2, 0, 1,
630 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
631 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0);
633 dpms_frame = gtk_frame_new ("Display Power Management:");
634 gtk_widget_set_name (dpms_frame, "dpms_frame");
635 gtk_widget_ref (dpms_frame);
636 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_frame", dpms_frame,
637 (GtkDestroyNotify) gtk_widget_unref);
638 gtk_widget_show (dpms_frame);
639 gtk_table_attach (GTK_TABLE (options_table_2), dpms_frame, 0, 1, 0, 1,
640 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
641 (GtkAttachOptions) (GTK_FILL), 0, 0);
642 gtk_container_set_border_width (GTK_CONTAINER (dpms_frame), 10);
644 dpms_table = gtk_table_new (4, 3, FALSE);
645 gtk_widget_set_name (dpms_table, "dpms_table");
646 gtk_widget_ref (dpms_table);
647 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_table", dpms_table,
648 (GtkDestroyNotify) gtk_widget_unref);
649 gtk_widget_show (dpms_table);
650 gtk_container_add (GTK_CONTAINER (dpms_frame), dpms_table);
651 gtk_container_set_border_width (GTK_CONTAINER (dpms_table), 10);
652 gtk_table_set_row_spacings (GTK_TABLE (dpms_table), 2);
653 gtk_table_set_col_spacings (GTK_TABLE (dpms_table), 10);
655 dpms_off_text = gtk_entry_new_with_max_length (8);
656 gtk_widget_set_name (dpms_off_text, "dpms_off_text");
657 gtk_widget_ref (dpms_off_text);
658 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_off_text", dpms_off_text,
659 (GtkDestroyNotify) gtk_widget_unref);
660 gtk_widget_show (dpms_off_text);
661 gtk_table_attach (GTK_TABLE (dpms_table), dpms_off_text, 1, 2, 3, 4,
662 (GtkAttachOptions) (0),
663 (GtkAttachOptions) (0), 0, 0);
664 gtk_tooltips_set_tip (tooltips, dpms_off_text, "How long until the monitor powers down (if Power Management is enabled).", NULL);
666 dpms_suspend_text = gtk_entry_new_with_max_length (8);
667 gtk_widget_set_name (dpms_suspend_text, "dpms_suspend_text");
668 gtk_widget_ref (dpms_suspend_text);
669 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_suspend_text", dpms_suspend_text,
670 (GtkDestroyNotify) gtk_widget_unref);
671 gtk_widget_show (dpms_suspend_text);
672 gtk_table_attach (GTK_TABLE (dpms_table), dpms_suspend_text, 1, 2, 2, 3,
673 (GtkAttachOptions) (0),
674 (GtkAttachOptions) (0), 0, 0);
675 gtk_tooltips_set_tip (tooltips, dpms_suspend_text, "How long until the monitor goes into power-saving mode (if Power Management is enabled).", NULL);
677 dpms_standby_text = gtk_entry_new_with_max_length (8);
678 gtk_widget_set_name (dpms_standby_text, "dpms_standby_text");
679 gtk_widget_ref (dpms_standby_text);
680 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_standby_text", dpms_standby_text,
681 (GtkDestroyNotify) gtk_widget_unref);
682 gtk_widget_show (dpms_standby_text);
683 gtk_table_attach (GTK_TABLE (dpms_table), dpms_standby_text, 1, 2, 1, 2,
684 (GtkAttachOptions) (0),
685 (GtkAttachOptions) (0), 0, 0);
686 gtk_tooltips_set_tip (tooltips, dpms_standby_text, "How long before the monitor goes completely black (if Power Management is enabled).", NULL);
688 dpms_standby_label = gtk_label_new ("Standby After:");
689 gtk_widget_set_name (dpms_standby_label, "dpms_standby_label");
690 gtk_widget_ref (dpms_standby_label);
691 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_standby_label", dpms_standby_label,
692 (GtkDestroyNotify) gtk_widget_unref);
693 gtk_widget_show (dpms_standby_label);
694 gtk_table_attach (GTK_TABLE (dpms_table), dpms_standby_label, 0, 1, 1, 2,
695 (GtkAttachOptions) (GTK_FILL),
696 (GtkAttachOptions) (0), 0, 0);
697 gtk_label_set_justify (GTK_LABEL (dpms_standby_label), GTK_JUSTIFY_RIGHT);
698 gtk_misc_set_alignment (GTK_MISC (dpms_standby_label), 1, 0.5);
700 dpms_off_label = gtk_label_new ("Off After:");
701 gtk_widget_set_name (dpms_off_label, "dpms_off_label");
702 gtk_widget_ref (dpms_off_label);
703 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_off_label", dpms_off_label,
704 (GtkDestroyNotify) gtk_widget_unref);
705 gtk_widget_show (dpms_off_label);
706 gtk_table_attach (GTK_TABLE (dpms_table), dpms_off_label, 0, 1, 3, 4,
707 (GtkAttachOptions) (GTK_FILL),
708 (GtkAttachOptions) (0), 0, 0);
709 gtk_label_set_justify (GTK_LABEL (dpms_off_label), GTK_JUSTIFY_RIGHT);
710 gtk_misc_set_alignment (GTK_MISC (dpms_off_label), 1, 0.5);
712 dpms_suspend_label = gtk_label_new ("Suspend After:");
713 gtk_widget_set_name (dpms_suspend_label, "dpms_suspend_label");
714 gtk_widget_ref (dpms_suspend_label);
715 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_suspend_label", dpms_suspend_label,
716 (GtkDestroyNotify) gtk_widget_unref);
717 gtk_widget_show (dpms_suspend_label);
718 gtk_table_attach (GTK_TABLE (dpms_table), dpms_suspend_label, 0, 1, 2, 3,
719 (GtkAttachOptions) (GTK_FILL),
720 (GtkAttachOptions) (0), 0, 0);
721 gtk_label_set_justify (GTK_LABEL (dpms_suspend_label), GTK_JUSTIFY_RIGHT);
722 gtk_misc_set_alignment (GTK_MISC (dpms_suspend_label), 1, 0.5);
724 dpms_dummy = gtk_label_new ("");
725 gtk_widget_set_name (dpms_dummy, "dpms_dummy");
726 gtk_widget_ref (dpms_dummy);
727 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_dummy", dpms_dummy,
728 (GtkDestroyNotify) gtk_widget_unref);
729 gtk_widget_show (dpms_dummy);
730 gtk_table_attach (GTK_TABLE (dpms_table), dpms_dummy, 2, 3, 3, 4,
731 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
732 (GtkAttachOptions) (0), 0, 0);
733 gtk_label_set_justify (GTK_LABEL (dpms_dummy), GTK_JUSTIFY_LEFT);
735 dpms_button_eventbox = gtk_event_box_new ();
736 gtk_widget_set_name (dpms_button_eventbox, "dpms_button_eventbox");
737 gtk_widget_ref (dpms_button_eventbox);
738 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_button_eventbox", dpms_button_eventbox,
739 (GtkDestroyNotify) gtk_widget_unref);
740 gtk_widget_show (dpms_button_eventbox);
741 gtk_table_attach (GTK_TABLE (dpms_table), dpms_button_eventbox, 0, 3, 0, 1,
742 (GtkAttachOptions) (GTK_FILL),
743 (GtkAttachOptions) (GTK_FILL), 0, 0);
744 gtk_tooltips_set_tip (tooltips, dpms_button_eventbox, "Whether the monitor should be powered down after a while.", NULL);
746 dpms_button = gtk_check_button_new_with_label ("Power Management Enabled");
747 gtk_widget_set_name (dpms_button, "dpms_button");
748 gtk_widget_ref (dpms_button);
749 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_button", dpms_button,
750 (GtkDestroyNotify) gtk_widget_unref);
751 gtk_widget_show (dpms_button);
752 gtk_container_add (GTK_CONTAINER (dpms_button_eventbox), dpms_button);
753 gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (dpms_button), TRUE);
755 cmap_frame = gtk_frame_new ("Colormaps:");
756 gtk_widget_set_name (cmap_frame, "cmap_frame");
757 gtk_widget_ref (cmap_frame);
758 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cmap_frame", cmap_frame,
759 (GtkDestroyNotify) gtk_widget_unref);
760 gtk_widget_show (cmap_frame);
761 gtk_table_attach (GTK_TABLE (options_table_2), cmap_frame, 0, 1, 1, 2,
762 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
763 (GtkAttachOptions) (GTK_FILL), 0, 0);
764 gtk_container_set_border_width (GTK_CONTAINER (cmap_frame), 10);
766 cmap_table = gtk_table_new (5, 3, FALSE);
767 gtk_widget_set_name (cmap_table, "cmap_table");
768 gtk_widget_ref (cmap_table);
769 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cmap_table", cmap_table,
770 (GtkDestroyNotify) gtk_widget_unref);
771 gtk_widget_show (cmap_table);
772 gtk_container_add (GTK_CONTAINER (cmap_frame), cmap_table);
773 gtk_container_set_border_width (GTK_CONTAINER (cmap_table), 10);
774 gtk_table_set_row_spacings (GTK_TABLE (cmap_table), 2);
775 gtk_table_set_col_spacings (GTK_TABLE (cmap_table), 10);
777 fade_text = gtk_entry_new_with_max_length (8);
778 gtk_widget_set_name (fade_text, "fade_text");
779 gtk_widget_ref (fade_text);
780 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "fade_text", fade_text,
781 (GtkDestroyNotify) gtk_widget_unref);
782 gtk_widget_show (fade_text);
783 gtk_table_attach (GTK_TABLE (cmap_table), fade_text, 1, 2, 4, 5,
784 (GtkAttachOptions) (0),
785 (GtkAttachOptions) (0), 0, 0);
786 gtk_tooltips_set_tip (tooltips, fade_text, "How long it should take for the screen to fade in and out.", NULL);
788 cmap_dummy = gtk_label_new ("");
789 gtk_widget_set_name (cmap_dummy, "cmap_dummy");
790 gtk_widget_ref (cmap_dummy);
791 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cmap_dummy", cmap_dummy,
792 (GtkDestroyNotify) gtk_widget_unref);
793 gtk_widget_show (cmap_dummy);
794 gtk_table_attach (GTK_TABLE (cmap_table), cmap_dummy, 2, 3, 4, 5,
795 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
796 (GtkAttachOptions) (0), 0, 0);
797 gtk_label_set_justify (GTK_LABEL (cmap_dummy), GTK_JUSTIFY_LEFT);
799 fade_label = gtk_label_new ("Fade Duration:");
800 gtk_widget_set_name (fade_label, "fade_label");
801 gtk_widget_ref (fade_label);
802 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "fade_label", fade_label,
803 (GtkDestroyNotify) gtk_widget_unref);
804 gtk_widget_show (fade_label);
805 gtk_table_attach (GTK_TABLE (cmap_table), fade_label, 0, 1, 4, 5,
806 (GtkAttachOptions) (GTK_FILL),
807 (GtkAttachOptions) (0), 0, 0);
808 gtk_label_set_justify (GTK_LABEL (fade_label), GTK_JUSTIFY_RIGHT);
809 gtk_misc_set_alignment (GTK_MISC (fade_label), 1, 0.5);
811 install_button_eventbox = gtk_event_box_new ();
812 gtk_widget_set_name (install_button_eventbox, "install_button_eventbox");
813 gtk_widget_ref (install_button_eventbox);
814 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "install_button_eventbox", install_button_eventbox,
815 (GtkDestroyNotify) gtk_widget_unref);
816 gtk_widget_show (install_button_eventbox);
817 gtk_table_attach (GTK_TABLE (cmap_table), install_button_eventbox, 0, 3, 0, 1,
818 (GtkAttachOptions) (GTK_FILL),
819 (GtkAttachOptions) (GTK_FILL), 0, 0);
820 gtk_tooltips_set_tip (tooltips, install_button_eventbox, "Whether to install a private colormap when running in 8-bit mode on the default Visual.", NULL);
822 install_button = gtk_check_button_new_with_label ("Install Colormap");
823 gtk_widget_set_name (install_button, "install_button");
824 gtk_widget_ref (install_button);
825 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "install_button", install_button,
826 (GtkDestroyNotify) gtk_widget_unref);
827 gtk_widget_show (install_button);
828 gtk_container_add (GTK_CONTAINER (install_button_eventbox), install_button);
830 fade_button_eventbox = gtk_event_box_new ();
831 gtk_widget_set_name (fade_button_eventbox, "fade_button_eventbox");
832 gtk_widget_ref (fade_button_eventbox);
833 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "fade_button_eventbox", fade_button_eventbox,
834 (GtkDestroyNotify) gtk_widget_unref);
835 gtk_widget_show (fade_button_eventbox);
836 gtk_table_attach (GTK_TABLE (cmap_table), fade_button_eventbox, 0, 3, 2, 3,
837 (GtkAttachOptions) (GTK_FILL),
838 (GtkAttachOptions) (GTK_FILL), 0, 0);
839 gtk_tooltips_set_tip (tooltips, fade_button_eventbox, "Whether the screen should slowly fade to black when the screen saver activates.", NULL);
841 fade_button = gtk_check_button_new_with_label ("Fade To Black When Blanking");
842 gtk_widget_set_name (fade_button, "fade_button");
843 gtk_widget_ref (fade_button);
844 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "fade_button", fade_button,
845 (GtkDestroyNotify) gtk_widget_unref);
846 gtk_widget_show (fade_button);
847 gtk_container_add (GTK_CONTAINER (fade_button_eventbox), fade_button);
849 unfade_button_eventbox = gtk_event_box_new ();
850 gtk_widget_set_name (unfade_button_eventbox, "unfade_button_eventbox");
851 gtk_widget_ref (unfade_button_eventbox);
852 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "unfade_button_eventbox", unfade_button_eventbox,
853 (GtkDestroyNotify) gtk_widget_unref);
854 gtk_widget_show (unfade_button_eventbox);
855 gtk_table_attach (GTK_TABLE (cmap_table), unfade_button_eventbox, 0, 3, 3, 4,
856 (GtkAttachOptions) (GTK_FILL),
857 (GtkAttachOptions) (GTK_FILL), 0, 0);
858 gtk_tooltips_set_tip (tooltips, unfade_button_eventbox, "Whether the screen should slowly fade in from black when the screen saver deactivates.", NULL);
860 unfade_button = gtk_check_button_new_with_label ("Fade From Black When Unblanking");
861 gtk_widget_set_name (unfade_button, "unfade_button");
862 gtk_widget_ref (unfade_button);
863 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "unfade_button", unfade_button,
864 (GtkDestroyNotify) gtk_widget_unref);
865 gtk_widget_show (unfade_button);
866 gtk_container_add (GTK_CONTAINER (unfade_button_eventbox), unfade_button);
868 cmap_hr = gtk_hseparator_new ();
869 gtk_widget_set_name (cmap_hr, "cmap_hr");
870 gtk_widget_ref (cmap_hr);
871 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cmap_hr", cmap_hr,
872 (GtkDestroyNotify) gtk_widget_unref);
873 gtk_widget_show (cmap_hr);
874 gtk_table_attach (GTK_TABLE (cmap_table), cmap_hr, 0, 3, 1, 2,
875 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
876 (GtkAttachOptions) (GTK_FILL), 0, 2);
878 options_table_1 = gtk_table_new (3, 1, FALSE);
879 gtk_widget_set_name (options_table_1, "options_table_1");
880 gtk_widget_ref (options_table_1);
881 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "options_table_1", options_table_1,
882 (GtkDestroyNotify) gtk_widget_unref);
883 gtk_widget_show (options_table_1);
884 gtk_table_attach (GTK_TABLE (options_table), options_table_1, 0, 1, 0, 1,
885 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
886 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0);
888 grab_frame = gtk_frame_new ("Image Manipulation:");
889 gtk_widget_set_name (grab_frame, "grab_frame");
890 gtk_widget_ref (grab_frame);
891 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_frame", grab_frame,
892 (GtkDestroyNotify) gtk_widget_unref);
893 gtk_widget_show (grab_frame);
894 gtk_table_attach (GTK_TABLE (options_table_1), grab_frame, 0, 1, 1, 2,
895 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
896 (GtkAttachOptions) (GTK_FILL), 0, 0);
897 gtk_container_set_border_width (GTK_CONTAINER (grab_frame), 10);
899 grab_table = gtk_table_new (4, 3, FALSE);
900 gtk_widget_set_name (grab_table, "grab_table");
901 gtk_widget_ref (grab_table);
902 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_table", grab_table,
903 (GtkDestroyNotify) gtk_widget_unref);
904 gtk_widget_show (grab_table);
905 gtk_container_add (GTK_CONTAINER (grab_frame), grab_table);
906 gtk_container_set_border_width (GTK_CONTAINER (grab_table), 10);
908 grab_image_eventbox = gtk_event_box_new ();
909 gtk_widget_set_name (grab_image_eventbox, "grab_image_eventbox");
910 gtk_widget_ref (grab_image_eventbox);
911 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_image_eventbox", grab_image_eventbox,
912 (GtkDestroyNotify) gtk_widget_unref);
913 gtk_widget_show (grab_image_eventbox);
914 gtk_table_attach (GTK_TABLE (grab_table), grab_image_eventbox, 0, 3, 2, 3,
915 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
916 (GtkAttachOptions) (GTK_FILL), 0, 0);
917 gtk_tooltips_set_tip (tooltips, grab_image_eventbox, "Whether the image-manipulating modes should operate on random images loaded from disk.", NULL);
919 grab_image_button = gtk_check_button_new_with_label ("Choose Random Image:");
920 gtk_widget_set_name (grab_image_button, "grab_image_button");
921 gtk_widget_ref (grab_image_button);
922 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_image_button", grab_image_button,
923 (GtkDestroyNotify) gtk_widget_unref);
924 gtk_widget_show (grab_image_button);
925 gtk_container_add (GTK_CONTAINER (grab_image_eventbox), grab_image_button);
927 image_browse_button = gtk_button_new_with_label ("Browse");
928 gtk_widget_set_name (image_browse_button, "image_browse_button");
929 gtk_widget_ref (image_browse_button);
930 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "image_browse_button", image_browse_button,
931 (GtkDestroyNotify) gtk_widget_unref);
932 gtk_widget_show (image_browse_button);
933 gtk_table_attach (GTK_TABLE (grab_table), image_browse_button, 2, 3, 3, 4,
934 (GtkAttachOptions) (0),
935 (GtkAttachOptions) (0), 4, 0);
937 grab_video_eventbox = gtk_event_box_new ();
938 gtk_widget_set_name (grab_video_eventbox, "grab_video_eventbox");
939 gtk_widget_ref (grab_video_eventbox);
940 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_video_eventbox", grab_video_eventbox,
941 (GtkDestroyNotify) gtk_widget_unref);
942 gtk_widget_show (grab_video_eventbox);
943 gtk_table_attach (GTK_TABLE (grab_table), grab_video_eventbox, 0, 3, 1, 2,
944 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
945 (GtkAttachOptions) (GTK_FILL), 0, 0);
946 gtk_tooltips_set_tip (tooltips, grab_video_eventbox, "Whether the image-manipulating modes should operate on images captured from the system's video input (if there is one).", NULL);
948 grab_video_button = gtk_check_button_new_with_label ("Grab Video Frames");
949 gtk_widget_set_name (grab_video_button, "grab_video_button");
950 gtk_widget_ref (grab_video_button);
951 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_video_button", grab_video_button,
952 (GtkDestroyNotify) gtk_widget_unref);
953 gtk_widget_show (grab_video_button);
954 gtk_container_add (GTK_CONTAINER (grab_video_eventbox), grab_video_button);
956 grab_desk_eventbox = gtk_event_box_new ();
957 gtk_widget_set_name (grab_desk_eventbox, "grab_desk_eventbox");
958 gtk_widget_ref (grab_desk_eventbox);
959 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_desk_eventbox", grab_desk_eventbox,
960 (GtkDestroyNotify) gtk_widget_unref);
961 gtk_widget_show (grab_desk_eventbox);
962 gtk_table_attach (GTK_TABLE (grab_table), grab_desk_eventbox, 0, 3, 0, 1,
963 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
964 (GtkAttachOptions) (GTK_FILL), 0, 0);
965 gtk_tooltips_set_tip (tooltips, grab_desk_eventbox, "Whether the image-manipulating modes should be allowed to operate on an image of your desktop.", NULL);
967 grab_desk_button = gtk_check_button_new_with_label ("Grab Desktop Images");
968 gtk_widget_set_name (grab_desk_button, "grab_desk_button");
969 gtk_widget_ref (grab_desk_button);
970 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_desk_button", grab_desk_button,
971 (GtkDestroyNotify) gtk_widget_unref);
972 gtk_widget_show (grab_desk_button);
973 gtk_container_add (GTK_CONTAINER (grab_desk_eventbox), grab_desk_button);
975 grab_dummy = gtk_label_new ("");
976 gtk_widget_set_name (grab_dummy, "grab_dummy");
977 gtk_widget_ref (grab_dummy);
978 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_dummy", grab_dummy,
979 (GtkDestroyNotify) gtk_widget_unref);
980 gtk_widget_show (grab_dummy);
981 gtk_table_attach (GTK_TABLE (grab_table), grab_dummy, 0, 1, 3, 4,
982 (GtkAttachOptions) (GTK_SHRINK | GTK_FILL),
983 (GtkAttachOptions) (GTK_SHRINK), 0, 0);
984 gtk_label_set_justify (GTK_LABEL (grab_dummy), GTK_JUSTIFY_LEFT);
985 gtk_misc_set_padding (GTK_MISC (grab_dummy), 8, 0);
987 image_text = gtk_entry_new ();
988 gtk_widget_set_name (image_text, "image_text");
989 gtk_widget_ref (image_text);
990 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "image_text", image_text,
991 (GtkDestroyNotify) gtk_widget_unref);
992 gtk_widget_show (image_text);
993 gtk_table_attach (GTK_TABLE (grab_table), image_text, 1, 2, 3, 4,
994 (GtkAttachOptions) (GTK_SHRINK | GTK_FILL),
995 (GtkAttachOptions) (0), 0, 0);
996 gtk_tooltips_set_tip (tooltips, image_text, "The directory from which images will be randomly chosen.", NULL);
998 blanking_frame = gtk_frame_new ("Blanking and Locking:");
999 gtk_widget_set_name (blanking_frame, "blanking_frame");
1000 gtk_widget_ref (blanking_frame);
1001 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "blanking_frame", blanking_frame,
1002 (GtkDestroyNotify) gtk_widget_unref);
1003 gtk_widget_show (blanking_frame);
1004 gtk_table_attach (GTK_TABLE (options_table_1), blanking_frame, 0, 1, 0, 1,
1005 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
1006 (GtkAttachOptions) (GTK_FILL), 0, 0);
1007 gtk_container_set_border_width (GTK_CONTAINER (blanking_frame), 10);
1009 blanking_table = gtk_table_new (5, 3, FALSE);
1010 gtk_widget_set_name (blanking_table, "blanking_table");
1011 gtk_widget_ref (blanking_table);
1012 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "blanking_table", blanking_table,
1013 (GtkDestroyNotify) gtk_widget_unref);
1014 gtk_widget_show (blanking_table);
1015 gtk_container_add (GTK_CONTAINER (blanking_frame), blanking_table);
1016 gtk_container_set_border_width (GTK_CONTAINER (blanking_table), 10);
1017 gtk_table_set_row_spacings (GTK_TABLE (blanking_table), 2);
1018 gtk_table_set_col_spacings (GTK_TABLE (blanking_table), 10);
1020 lock_text = gtk_entry_new_with_max_length (8);
1021 gtk_widget_set_name (lock_text, "lock_text");
1022 gtk_widget_ref (lock_text);
1023 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "lock_text", lock_text,
1024 (GtkDestroyNotify) gtk_widget_unref);
1025 gtk_widget_show (lock_text);
1026 gtk_table_attach (GTK_TABLE (blanking_table), lock_text, 1, 2, 4, 5,
1027 (GtkAttachOptions) (0),
1028 (GtkAttachOptions) (0), 0, 0);
1029 gtk_tooltips_set_tip (tooltips, lock_text, "How long after the screen saver has activated until a password will be required (if `Require Password' is also set.)", NULL);
1031 cycle_text = gtk_entry_new_with_max_length (8);
1032 gtk_widget_set_name (cycle_text, "cycle_text");
1033 gtk_widget_ref (cycle_text);
1034 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cycle_text", cycle_text,
1035 (GtkDestroyNotify) gtk_widget_unref);
1036 gtk_widget_show (cycle_text);
1037 gtk_table_attach (GTK_TABLE (blanking_table), cycle_text, 1, 2, 1, 2,
1038 (GtkAttachOptions) (0),
1039 (GtkAttachOptions) (0), 0, 0);
1040 gtk_tooltips_set_tip (tooltips, cycle_text, "How long each demo will be run before moving on to another.", NULL);
1042 timeout_text = gtk_entry_new_with_max_length (8);
1043 gtk_widget_set_name (timeout_text, "timeout_text");
1044 gtk_widget_ref (timeout_text);
1045 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "timeout_text", timeout_text,
1046 (GtkDestroyNotify) gtk_widget_unref);
1047 gtk_widget_show (timeout_text);
1048 gtk_table_attach (GTK_TABLE (blanking_table), timeout_text, 1, 2, 0, 1,
1049 (GtkAttachOptions) (0),
1050 (GtkAttachOptions) (0), 0, 0);
1051 gtk_tooltips_set_tip (tooltips, timeout_text, "How long until the screen saver activates and begins running demos.", NULL);
1053 timeout_label = gtk_label_new ("Blank After:");
1054 gtk_widget_set_name (timeout_label, "timeout_label");
1055 gtk_widget_ref (timeout_label);
1056 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "timeout_label", timeout_label,
1057 (GtkDestroyNotify) gtk_widget_unref);
1058 gtk_widget_show (timeout_label);
1059 gtk_table_attach (GTK_TABLE (blanking_table), timeout_label, 0, 1, 0, 1,
1060 (GtkAttachOptions) (GTK_FILL),
1061 (GtkAttachOptions) (0), 0, 0);
1062 gtk_label_set_justify (GTK_LABEL (timeout_label), GTK_JUSTIFY_RIGHT);
1063 gtk_misc_set_alignment (GTK_MISC (timeout_label), 1, 0.5);
1065 cycle_label = gtk_label_new ("Cycle After:");
1066 gtk_widget_set_name (cycle_label, "cycle_label");
1067 gtk_widget_ref (cycle_label);
1068 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cycle_label", cycle_label,
1069 (GtkDestroyNotify) gtk_widget_unref);
1070 gtk_widget_show (cycle_label);
1071 gtk_table_attach (GTK_TABLE (blanking_table), cycle_label, 0, 1, 1, 2,
1072 (GtkAttachOptions) (GTK_FILL),
1073 (GtkAttachOptions) (0), 0, 0);
1074 gtk_label_set_justify (GTK_LABEL (cycle_label), GTK_JUSTIFY_RIGHT);
1075 gtk_misc_set_alignment (GTK_MISC (cycle_label), 1, 0.5);
1077 lock_label = gtk_label_new ("Lock After:");
1078 gtk_widget_set_name (lock_label, "lock_label");
1079 gtk_widget_ref (lock_label);
1080 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "lock_label", lock_label,
1081 (GtkDestroyNotify) gtk_widget_unref);
1082 gtk_widget_show (lock_label);
1083 gtk_table_attach (GTK_TABLE (blanking_table), lock_label, 0, 1, 4, 5,
1084 (GtkAttachOptions) (GTK_FILL),
1085 (GtkAttachOptions) (0), 0, 0);
1086 gtk_label_set_justify (GTK_LABEL (lock_label), GTK_JUSTIFY_RIGHT);
1087 gtk_misc_set_alignment (GTK_MISC (lock_label), 1, 0.5);
1089 blanking_dummy = gtk_label_new ("");
1090 gtk_widget_set_name (blanking_dummy, "blanking_dummy");
1091 gtk_widget_ref (blanking_dummy);
1092 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "blanking_dummy", blanking_dummy,
1093 (GtkDestroyNotify) gtk_widget_unref);
1094 gtk_widget_show (blanking_dummy);
1095 gtk_table_attach (GTK_TABLE (blanking_table), blanking_dummy, 2, 3, 4, 5,
1096 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
1097 (GtkAttachOptions) (0), 0, 0);
1098 gtk_label_set_justify (GTK_LABEL (blanking_dummy), GTK_JUSTIFY_LEFT);
1100 lock_button_eventbox = gtk_event_box_new ();
1101 gtk_widget_set_name (lock_button_eventbox, "lock_button_eventbox");
1102 gtk_widget_ref (lock_button_eventbox);
1103 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "lock_button_eventbox", lock_button_eventbox,
1104 (GtkDestroyNotify) gtk_widget_unref);
1105 gtk_widget_show (lock_button_eventbox);
1106 gtk_table_attach (GTK_TABLE (blanking_table), lock_button_eventbox, 0, 3, 3, 4,
1107 (GtkAttachOptions) (GTK_FILL),
1108 (GtkAttachOptions) (GTK_FILL), 0, 0);
1109 gtk_tooltips_set_tip (tooltips, lock_button_eventbox, "Whether a password should be required to unblank the screen.", NULL);
1111 lock_button = gtk_check_button_new_with_label ("Require Password");
1112 gtk_widget_set_name (lock_button, "lock_button");
1113 gtk_widget_ref (lock_button);
1114 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "lock_button", lock_button,
1115 (GtkDestroyNotify) gtk_widget_unref);
1116 gtk_widget_show (lock_button);
1117 gtk_container_add (GTK_CONTAINER (lock_button_eventbox), lock_button);
1119 blanking_hr = gtk_hseparator_new ();
1120 gtk_widget_set_name (blanking_hr, "blanking_hr");
1121 gtk_widget_ref (blanking_hr);
1122 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "blanking_hr", blanking_hr,
1123 (GtkDestroyNotify) gtk_widget_unref);
1124 gtk_widget_show (blanking_hr);
1125 gtk_table_attach (GTK_TABLE (blanking_table), blanking_hr, 0, 3, 2, 3,
1126 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
1127 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 2);
1129 diag_frame = gtk_frame_new ("Diagnostics:");
1130 gtk_widget_set_name (diag_frame, "diag_frame");
1131 gtk_widget_ref (diag_frame);
1132 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "diag_frame", diag_frame,
1133 (GtkDestroyNotify) gtk_widget_unref);
1134 gtk_widget_show (diag_frame);
1135 gtk_table_attach (GTK_TABLE (options_table_1), diag_frame, 0, 1, 2, 3,
1136 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
1137 (GtkAttachOptions) (GTK_FILL), 0, 0);
1138 gtk_container_set_border_width (GTK_CONTAINER (diag_frame), 10);
1140 diag_table = gtk_table_new (3, 1, FALSE);
1141 gtk_widget_set_name (diag_table, "diag_table");
1142 gtk_widget_ref (diag_table);
1143 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "diag_table", diag_table,
1144 (GtkDestroyNotify) gtk_widget_unref);
1145 gtk_widget_show (diag_table);
1146 gtk_container_add (GTK_CONTAINER (diag_frame), diag_table);
1147 gtk_container_set_border_width (GTK_CONTAINER (diag_table), 10);
1148 gtk_table_set_row_spacings (GTK_TABLE (diag_table), 2);
1149 gtk_table_set_col_spacings (GTK_TABLE (diag_table), 10);
1151 splash_button_eventbox = gtk_event_box_new ();
1152 gtk_widget_set_name (splash_button_eventbox, "splash_button_eventbox");
1153 gtk_widget_ref (splash_button_eventbox);
1154 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "splash_button_eventbox", splash_button_eventbox,
1155 (GtkDestroyNotify) gtk_widget_unref);
1156 gtk_widget_show (splash_button_eventbox);
1157 gtk_table_attach (GTK_TABLE (diag_table), splash_button_eventbox, 0, 1, 2, 3,
1158 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
1159 (GtkAttachOptions) (0), 0, 0);
1160 gtk_tooltips_set_tip (tooltips, splash_button_eventbox, "Whether the splash screen (with the version number and `Help' button) should be momentarily displayed when the daemon first starts up.", NULL);
1162 splash_button = gtk_check_button_new_with_label ("Display Splash Screen at Startup");
1163 gtk_widget_set_name (splash_button, "splash_button");
1164 gtk_widget_ref (splash_button);
1165 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "splash_button", splash_button,
1166 (GtkDestroyNotify) gtk_widget_unref);
1167 gtk_widget_show (splash_button);
1168 gtk_container_add (GTK_CONTAINER (splash_button_eventbox), splash_button);
1169 gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (splash_button), TRUE);
1171 capture_button_eventbox = gtk_event_box_new ();
1172 gtk_widget_set_name (capture_button_eventbox, "capture_button_eventbox");
1173 gtk_widget_ref (capture_button_eventbox);
1174 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "capture_button_eventbox", capture_button_eventbox,
1175 (GtkDestroyNotify) gtk_widget_unref);
1176 gtk_widget_show (capture_button_eventbox);
1177 gtk_table_attach (GTK_TABLE (diag_table), capture_button_eventbox, 0, 1, 1, 2,
1178 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
1179 (GtkAttachOptions) (0), 0, 0);
1180 gtk_tooltips_set_tip (tooltips, capture_button_eventbox, "Whether the stdout and stderr streams of graphics demos should be displayed on the xscreensaver window.", NULL);
1182 capture_button = gtk_check_button_new_with_label ("Display Subprocess Errors");
1183 gtk_widget_set_name (capture_button, "capture_button");
1184 gtk_widget_ref (capture_button);
1185 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "capture_button", capture_button,
1186 (GtkDestroyNotify) gtk_widget_unref);
1187 gtk_widget_show (capture_button);
1188 gtk_container_add (GTK_CONTAINER (capture_button_eventbox), capture_button);
1190 verbose_button_eventbox = gtk_event_box_new ();
1191 gtk_widget_set_name (verbose_button_eventbox, "verbose_button_eventbox");
1192 gtk_widget_ref (verbose_button_eventbox);
1193 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "verbose_button_eventbox", verbose_button_eventbox,
1194 (GtkDestroyNotify) gtk_widget_unref);
1195 gtk_widget_show (verbose_button_eventbox);
1196 gtk_table_attach (GTK_TABLE (diag_table), verbose_button_eventbox, 0, 1, 0, 1,
1197 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
1198 (GtkAttachOptions) (0), 0, 0);
1199 gtk_tooltips_set_tip (tooltips, verbose_button_eventbox, "Whether the daemon should print lots of debugging information.", NULL);
1201 verbose_button = gtk_check_button_new_with_label ("Verbose Diagnostics");
1202 gtk_widget_set_name (verbose_button, "verbose_button");
1203 gtk_widget_ref (verbose_button);
1204 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "verbose_button", verbose_button,
1205 (GtkDestroyNotify) gtk_widget_unref);
1206 gtk_widget_show (verbose_button);
1207 gtk_container_add (GTK_CONTAINER (verbose_button_eventbox), verbose_button);
1209 options_tab = gtk_label_new ("Screensaver Options");
1210 gtk_widget_set_name (options_tab, "options_tab");
1211 gtk_widget_ref (options_tab);
1212 gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "options_tab", options_tab,
1213 (GtkDestroyNotify) gtk_widget_unref);
1214 gtk_widget_show (options_tab);
1215 gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook), 1), options_tab);
1217 gtk_signal_connect (GTK_OBJECT (activate_menu), "activate",
1218 GTK_SIGNAL_FUNC (activate_menu_cb),
1220 gtk_signal_connect (GTK_OBJECT (lock_menu), "activate",
1221 GTK_SIGNAL_FUNC (lock_menu_cb),
1223 gtk_signal_connect (GTK_OBJECT (kill_menu), "activate",
1224 GTK_SIGNAL_FUNC (kill_menu_cb),
1226 gtk_signal_connect (GTK_OBJECT (restart), "activate",
1227 GTK_SIGNAL_FUNC (restart_menu_cb),
1229 gtk_signal_connect (GTK_OBJECT (exit_menu), "activate",
1230 GTK_SIGNAL_FUNC (exit_menu_cb),
1232 gtk_signal_connect (GTK_OBJECT (cut_menu), "activate",
1233 GTK_SIGNAL_FUNC (cut_menu_cb),
1235 gtk_signal_connect (GTK_OBJECT (copy_menu), "activate",
1236 GTK_SIGNAL_FUNC (copy_menu_cb),
1238 gtk_signal_connect (GTK_OBJECT (paste_menu), "activate",
1239 GTK_SIGNAL_FUNC (paste_menu_cb),
1241 gtk_signal_connect (GTK_OBJECT (about_menu), "activate",
1242 GTK_SIGNAL_FUNC (about_menu_cb),
1244 gtk_signal_connect (GTK_OBJECT (doc_menu), "activate",
1245 GTK_SIGNAL_FUNC (doc_menu_cb),
1247 gtk_signal_connect (GTK_OBJECT (notebook), "switch_page",
1248 GTK_SIGNAL_FUNC (pref_changed_cb),
1250 gtk_signal_connect (GTK_OBJECT (next), "clicked",
1251 GTK_SIGNAL_FUNC (run_next_cb),
1253 gtk_signal_connect (GTK_OBJECT (prev), "clicked",
1254 GTK_SIGNAL_FUNC (run_prev_cb),
1256 gtk_signal_connect (GTK_OBJECT (enabled), "toggled",
1257 GTK_SIGNAL_FUNC (enabled_cb),
1259 gtk_signal_connect (GTK_OBJECT (demo), "clicked",
1260 GTK_SIGNAL_FUNC (run_this_cb),
1262 gtk_signal_connect (GTK_OBJECT (manual), "clicked",
1263 GTK_SIGNAL_FUNC (manual_cb),
1265 gtk_signal_connect (GTK_OBJECT (dpms_off_text), "activate",
1266 GTK_SIGNAL_FUNC (pref_changed_cb),
1268 gtk_signal_connect (GTK_OBJECT (dpms_off_text), "focus_out_event",
1269 GTK_SIGNAL_FUNC (pref_changed_cb),
1271 gtk_signal_connect (GTK_OBJECT (dpms_suspend_text), "activate",
1272 GTK_SIGNAL_FUNC (pref_changed_cb),
1274 gtk_signal_connect (GTK_OBJECT (dpms_suspend_text), "focus_out_event",
1275 GTK_SIGNAL_FUNC (pref_changed_cb),
1277 gtk_signal_connect (GTK_OBJECT (dpms_standby_text), "activate",
1278 GTK_SIGNAL_FUNC (pref_changed_cb),
1280 gtk_signal_connect (GTK_OBJECT (dpms_standby_text), "focus_out_event",
1281 GTK_SIGNAL_FUNC (pref_changed_cb),
1283 gtk_signal_connect (GTK_OBJECT (dpms_button), "toggled",
1284 GTK_SIGNAL_FUNC (pref_changed_cb),
1286 gtk_signal_connect (GTK_OBJECT (fade_text), "activate",
1287 GTK_SIGNAL_FUNC (pref_changed_cb),
1289 gtk_signal_connect (GTK_OBJECT (fade_text), "focus_out_event",
1290 GTK_SIGNAL_FUNC (pref_changed_cb),
1292 gtk_signal_connect (GTK_OBJECT (install_button), "toggled",
1293 GTK_SIGNAL_FUNC (pref_changed_cb),
1295 gtk_signal_connect (GTK_OBJECT (fade_button), "toggled",
1296 GTK_SIGNAL_FUNC (pref_changed_cb),
1298 gtk_signal_connect (GTK_OBJECT (unfade_button), "toggled",
1299 GTK_SIGNAL_FUNC (pref_changed_cb),
1301 gtk_signal_connect (GTK_OBJECT (grab_image_button), "toggled",
1302 GTK_SIGNAL_FUNC (pref_changed_cb),
1304 gtk_signal_connect (GTK_OBJECT (image_browse_button), "clicked",
1305 GTK_SIGNAL_FUNC (browse_image_dir_cb),
1307 gtk_signal_connect (GTK_OBJECT (grab_video_button), "toggled",
1308 GTK_SIGNAL_FUNC (pref_changed_cb),
1310 gtk_signal_connect (GTK_OBJECT (grab_desk_button), "toggled",
1311 GTK_SIGNAL_FUNC (pref_changed_cb),
1313 gtk_signal_connect (GTK_OBJECT (image_text), "activate",
1314 GTK_SIGNAL_FUNC (pref_changed_cb),
1316 gtk_signal_connect (GTK_OBJECT (image_text), "focus_out_event",
1317 GTK_SIGNAL_FUNC (pref_changed_cb),
1319 gtk_signal_connect (GTK_OBJECT (lock_text), "activate",
1320 GTK_SIGNAL_FUNC (pref_changed_cb),
1322 gtk_signal_connect (GTK_OBJECT (lock_text), "focus_out_event",
1323 GTK_SIGNAL_FUNC (pref_changed_cb),
1325 gtk_signal_connect (GTK_OBJECT (cycle_text), "activate",
1326 GTK_SIGNAL_FUNC (pref_changed_cb),
1328 gtk_signal_connect (GTK_OBJECT (cycle_text), "focus_out_event",
1329 GTK_SIGNAL_FUNC (pref_changed_cb),
1331 gtk_signal_connect (GTK_OBJECT (timeout_text), "activate",
1332 GTK_SIGNAL_FUNC (pref_changed_cb),
1334 gtk_signal_connect (GTK_OBJECT (timeout_text), "focus_out_event",
1335 GTK_SIGNAL_FUNC (pref_changed_cb),
1337 gtk_signal_connect (GTK_OBJECT (lock_button), "toggled",
1338 GTK_SIGNAL_FUNC (pref_changed_cb),
1340 gtk_signal_connect (GTK_OBJECT (splash_button), "toggled",
1341 GTK_SIGNAL_FUNC (pref_changed_cb),
1343 gtk_signal_connect (GTK_OBJECT (capture_button), "toggled",
1344 GTK_SIGNAL_FUNC (pref_changed_cb),
1346 gtk_signal_connect (GTK_OBJECT (verbose_button), "toggled",
1347 GTK_SIGNAL_FUNC (pref_changed_cb),
1350 gtk_widget_grab_default (next);
1351 gtk_object_set_data (GTK_OBJECT (xscreensaver_demo), "tooltips", tooltips);
1353 gtk_window_add_accel_group (GTK_WINDOW (xscreensaver_demo), accel_group);
1355 return xscreensaver_demo;