~ubuntu-branches/ubuntu/breezy/xscreensaver/breezy

« back to all changes in this revision

Viewing changes to driver/demo-Gtk-widgets.c

  • Committer: Bazaar Package Importer
  • Author(s): Oliver Grawert
  • Date: 2005-10-11 21:00:42 UTC
  • mfrom: (2.1.1 sarge)
  • Revision ID: james.westby@ubuntu.com-20051011210042-u7q6zslgevdxspr3
Tags: 4.21-4ubuntu17
updated pt_BR again, fixed to UTF-8 

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
 
17
17
#include "demo-Gtk-stubs.h"
18
18
#include "demo-Gtk-widgets.h"
 
19
#include "demo-Gtk-support.h"
 
20
 
 
21
# ifdef __GNUC__
 
22
#  define STFU __extension__  /* ignore gcc -pendantic warnings in next sexp */
 
23
# else
 
24
#  define STFU /* */
 
25
# endif
19
26
 
20
27
GtkWidget*
21
28
create_xscreensaver_demo (void)
33
40
  GtkWidget *restart;
34
41
  GtkWidget *separator1;
35
42
  GtkWidget *exit_menu;
36
 
  GtkWidget *edit;
37
 
  GtkWidget *edit_menu;
38
 
  GtkAccelGroup *edit_menu_accels;
39
 
  GtkWidget *cut_menu;
40
 
  GtkWidget *copy_menu;
41
 
  GtkWidget *paste_menu;
42
43
  GtkWidget *help;
43
44
  GtkWidget *help_menu;
44
45
  GtkAccelGroup *help_menu_accels;
45
46
  GtkWidget *about_menu;
46
47
  GtkWidget *doc_menu;
47
48
  GtkWidget *notebook;
48
 
  GtkWidget *demos_hbox;
 
49
  GtkWidget *demos_table;
 
50
  GtkWidget *blanking_table;
 
51
  GtkWidget *cycle_label;
 
52
  GtkWidget *lock_button_eventbox;
 
53
  GtkWidget *lock_button;
 
54
  GtkWidget *timeout_label;
 
55
  GtkObject *timeout_spinbutton_adj;
 
56
  GtkWidget *timeout_spinbutton;
 
57
  GtkWidget *timeout_mlabel;
 
58
  GtkWidget *cycle_mlabel;
 
59
  GtkWidget *lock_mlabel;
 
60
  GtkObject *lock_spinbutton_adj;
 
61
  GtkWidget *lock_spinbutton;
 
62
  GtkObject *cycle_spinbutton_adj;
 
63
  GtkWidget *cycle_spinbutton;
 
64
  GtkWidget *demo_manual_hbbox;
 
65
  GtkWidget *demo;
 
66
  GtkWidget *settings;
49
67
  GtkWidget *list_vbox;
 
68
  GtkWidget *mode_hbox;
 
69
  GtkWidget *mode_label;
 
70
  GtkWidget *mode_menu;
 
71
  GtkWidget *mode_menu_menu;
 
72
  GtkWidget *glade_menuitem;
 
73
  GtkWidget *col_head_hbox;
 
74
  GtkWidget *use_col_frame;
 
75
  GtkWidget *use_label;
 
76
  GtkWidget *saver_col_frame;
 
77
  GtkWidget *saver_label;
50
78
  GtkWidget *scroller;
51
79
  GtkWidget *viewport;
52
80
  GtkWidget *list;
54
82
  GtkWidget *next_prev_hbox;
55
83
  GtkWidget *next;
56
84
  GtkWidget *prev;
57
 
  GtkWidget *opts_vbox;
58
 
  GtkWidget *frame;
59
 
  GtkWidget *doc;
60
 
  GtkWidget *opts_vbox2;
61
 
  GtkWidget *cmd_label;
62
 
  GtkWidget *cmd_text;
63
 
  GtkWidget *opts_hbox3;
64
 
  GtkWidget *enabled;
65
 
  GtkWidget *visual;
66
 
  GtkWidget *visual_combo;
67
 
  GList *visual_combo_items = NULL;
68
 
  GtkWidget *combo_entry1;
69
 
  GtkWidget *demo_hline;
70
 
  GtkWidget *demo_manual_hbox;
71
 
  GtkWidget *demo;
72
 
  GtkWidget *manual;
 
85
  GtkWidget *preview_frame;
 
86
  GtkWidget *preview_aspectframe;
 
87
  GtkWidget *preview;
73
88
  GtkWidget *demo_tab;
74
 
  GtkWidget *options_vbox;
75
89
  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;
 
90
  GtkWidget *diag_frame;
 
91
  GtkWidget *diag_hbox;
 
92
  GtkWidget *diag_logo;
 
93
  GtkWidget *diag_vbox;
 
94
  GtkWidget *verbose_button_eventbox;
 
95
  GtkWidget *verbose_button;
 
96
  GtkWidget *capture_button_eventbox;
 
97
  GtkWidget *capture_button;
 
98
  GtkWidget *splash_button_eventbox;
 
99
  GtkWidget *splash_button;
88
100
  GtkWidget *cmap_frame;
89
 
  GtkWidget *cmap_table;
90
 
  GtkWidget *fade_text;
91
 
  GtkWidget *cmap_dummy;
92
 
  GtkWidget *fade_label;
 
101
  GtkWidget *cmap_hbox;
 
102
  GtkWidget *cmap_logo;
 
103
  GtkWidget *cmap_vbox;
93
104
  GtkWidget *install_button_eventbox;
94
105
  GtkWidget *install_button;
 
106
  GtkWidget *cmap_hr;
95
107
  GtkWidget *fade_button_eventbox;
96
108
  GtkWidget *fade_button;
97
109
  GtkWidget *unfade_button_eventbox;
98
110
  GtkWidget *unfade_button;
99
 
  GtkWidget *cmap_hr;
100
 
  GtkWidget *options_table_1;
 
111
  GtkWidget *fade_hbox;
 
112
  GtkWidget *fade_dummy;
 
113
  GtkWidget *fade_label;
 
114
  GtkObject *fade_spinbutton_adj;
 
115
  GtkWidget *fade_spinbutton;
 
116
  GtkWidget *fade_sec_label;
 
117
  GtkWidget *dpms_frame;
 
118
  GtkWidget *dpms_hbox;
 
119
  GtkWidget *dpms_logo;
 
120
  GtkWidget *dpms_vbox;
 
121
  GtkWidget *dpms_button_eventbox;
 
122
  GtkWidget *dpms_button;
 
123
  GtkWidget *dpms_table;
 
124
  GtkObject *dpms_standby_spinbutton_adj;
 
125
  GtkWidget *dpms_standby_spinbutton;
 
126
  GtkWidget *dpms_standby_mlabel;
 
127
  GtkWidget *dpms_suspend_mlabel;
 
128
  GtkWidget *dpms_off_mlabel;
 
129
  GtkWidget *dpms_off_label;
 
130
  GtkWidget *dpms_suspend_label;
 
131
  GtkWidget *dpms_standby_label;
 
132
  GtkObject *dpms_suspend_spinbutton_adj;
 
133
  GtkWidget *dpms_suspend_spinbutton;
 
134
  GtkObject *dpms_off_spinbutton_adj;
 
135
  GtkWidget *dpms_off_spinbutton;
101
136
  GtkWidget *grab_frame;
102
 
  GtkWidget *grab_table;
 
137
  GtkWidget *grab_hbox;
 
138
  GtkWidget *img_logo;
 
139
  GtkWidget *grab_vbox;
 
140
  GtkWidget *grab_desk_eventbox;
 
141
  GtkWidget *grab_desk_button;
 
142
  GtkWidget *grab_video_eventbox;
 
143
  GtkWidget *grab_video_button;
103
144
  GtkWidget *grab_image_eventbox;
104
145
  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;
 
146
  GtkWidget *image_hbox;
110
147
  GtkWidget *grab_dummy;
111
148
  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;
 
149
  GtkWidget *image_browse_button;
132
150
  GtkWidget *options_tab;
133
151
  GtkAccelGroup *accel_group;
134
152
  GtkTooltips *tooltips;
140
158
  xscreensaver_demo = gtk_window_new (GTK_WINDOW_TOPLEVEL);
141
159
  gtk_widget_set_name (xscreensaver_demo, "xscreensaver_demo");
142
160
  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);
 
161
  gtk_window_set_title (GTK_WINDOW (xscreensaver_demo), _("XScreenSaver"));
145
162
  gtk_window_set_wmclass (GTK_WINDOW (xscreensaver_demo), "xscreensaver", "XScreenSaver");
146
163
 
147
164
  outer_vbox = gtk_vbox_new (FALSE, 5);
162
179
 
163
180
  file = gtk_menu_item_new_with_label ("");
164
181
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (file)->child),
165
 
                                   "_File");
 
182
                                   _("_File"));
166
183
  gtk_widget_add_accelerator (file, "activate_item", accel_group,
167
 
                              tmp_key, GDK_MOD1_MASK, 0);
 
184
                              tmp_key, GDK_MOD1_MASK, (GtkAccelFlags) 0);
168
185
  gtk_widget_set_name (file, "file");
169
186
  gtk_widget_ref (file);
170
187
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "file", file,
182
199
 
183
200
  activate_menu = gtk_menu_item_new_with_label ("");
184
201
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (activate_menu)->child),
185
 
                                   "_Blank Screen Now");
 
202
                                   _("_Blank Screen Now"));
186
203
  gtk_widget_add_accelerator (activate_menu, "activate_item", file_menu_accels,
187
204
                              tmp_key, 0, 0);
188
205
  gtk_widget_set_name (activate_menu, "activate_menu");
191
208
                            (GtkDestroyNotify) gtk_widget_unref);
192
209
  gtk_widget_show (activate_menu);
193
210
  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);
 
211
  gtk_tooltips_set_tip (tooltips, activate_menu, _("Activate the XScreenSaver daemon now (locking the screen if so configured.)"), NULL);
195
212
 
196
213
  lock_menu = gtk_menu_item_new_with_label ("");
197
214
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (lock_menu)->child),
198
 
                                   "_Lock Screen Now");
 
215
                                   _("_Lock Screen Now"));
199
216
  gtk_widget_add_accelerator (lock_menu, "activate_item", file_menu_accels,
200
217
                              tmp_key, 0, 0);
201
218
  gtk_widget_set_name (lock_menu, "lock_menu");
204
221
                            (GtkDestroyNotify) gtk_widget_unref);
205
222
  gtk_widget_show (lock_menu);
206
223
  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);
 
224
  gtk_tooltips_set_tip (tooltips, lock_menu, _("Lock the screen now (even if \"Lock Screen\" is unchecked.)"), NULL);
208
225
 
209
226
  kill_menu = gtk_menu_item_new_with_label ("");
210
227
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (kill_menu)->child),
211
 
                                   "_Kill Daemon");
 
228
                                   _("_Kill Daemon"));
212
229
  gtk_widget_add_accelerator (kill_menu, "activate_item", file_menu_accels,
213
230
                              tmp_key, 0, 0);
214
231
  gtk_widget_set_name (kill_menu, "kill_menu");
217
234
                            (GtkDestroyNotify) gtk_widget_unref);
218
235
  gtk_widget_show (kill_menu);
219
236
  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);
 
237
  gtk_tooltips_set_tip (tooltips, kill_menu, _("Tell the running XScreenSaver daemon to exit."), NULL);
221
238
 
222
239
  restart = gtk_menu_item_new_with_label ("");
223
240
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (restart)->child),
224
 
                                   "_Restart Daemon");
 
241
                                   _("_Restart Daemon"));
225
242
  gtk_widget_add_accelerator (restart, "activate_item", file_menu_accels,
226
243
                              tmp_key, 0, 0);
227
244
  gtk_widget_set_name (restart, "restart");
230
247
                            (GtkDestroyNotify) gtk_widget_unref);
231
248
  gtk_widget_show (restart);
232
249
  gtk_container_add (GTK_CONTAINER (file_menu), restart);
233
 
  gtk_tooltips_set_tip (tooltips, restart, "Kill and re-launch the XScreenSaver daemon.", NULL);
 
250
  gtk_tooltips_set_tip (tooltips, restart, _("Kill and re-launch the XScreenSaver daemon."), NULL);
234
251
 
235
252
  separator1 = gtk_menu_item_new ();
236
253
  gtk_widget_set_name (separator1, "separator1");
243
260
 
244
261
  exit_menu = gtk_menu_item_new_with_label ("");
245
262
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (exit_menu)->child),
246
 
                                   "_Exit");
 
263
                                   _("_Exit"));
247
264
  gtk_widget_add_accelerator (exit_menu, "activate_item", file_menu_accels,
248
265
                              tmp_key, 0, 0);
249
266
  gtk_widget_set_name (exit_menu, "exit_menu");
252
269
                            (GtkDestroyNotify) gtk_widget_unref);
253
270
  gtk_widget_show (exit_menu);
254
271
  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);
256
 
 
257
 
  edit = gtk_menu_item_new_with_label ("");
258
 
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (edit)->child),
259
 
                                   "_Edit");
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);
268
 
 
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));
276
 
 
277
 
  cut_menu = gtk_menu_item_new_with_label ("");
278
 
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (cut_menu)->child),
279
 
                                   "C_ut");
280
 
  gtk_widget_add_accelerator (cut_menu, "activate_item", edit_menu_accels,
281
 
                              tmp_key, 0, 0);
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);
288
 
 
289
 
  copy_menu = gtk_menu_item_new_with_label ("");
290
 
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (copy_menu)->child),
291
 
                                   "_Copy");
292
 
  gtk_widget_add_accelerator (copy_menu, "activate_item", edit_menu_accels,
293
 
                              tmp_key, 0, 0);
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);
300
 
 
301
 
  paste_menu = gtk_menu_item_new_with_label ("");
302
 
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (paste_menu)->child),
303
 
                                   "_Paste");
304
 
  gtk_widget_add_accelerator (paste_menu, "activate_item", edit_menu_accels,
305
 
                              tmp_key, 0, 0);
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);
 
272
  gtk_tooltips_set_tip (tooltips, exit_menu, _("Exit the xscreensaver-demo program (but leave the XScreenSaver daemon running in the background.)"), NULL);
312
273
 
313
274
  help = gtk_menu_item_new_with_label ("");
314
275
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (help)->child),
315
 
                                   "_Help");
 
276
                                   _("_Help"));
316
277
  gtk_widget_add_accelerator (help, "activate_item", accel_group,
317
 
                              tmp_key, GDK_MOD1_MASK, 0);
 
278
                              tmp_key, GDK_MOD1_MASK, (GtkAccelFlags) 0);
318
279
  gtk_widget_set_name (help, "help");
319
280
  gtk_widget_ref (help);
320
281
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "help", help,
332
293
 
333
294
  about_menu = gtk_menu_item_new_with_label ("");
334
295
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (about_menu)->child),
335
 
                                   "_About...");
 
296
                                   _("_About..."));
336
297
  gtk_widget_add_accelerator (about_menu, "activate_item", help_menu_accels,
337
298
                              tmp_key, 0, 0);
338
299
  gtk_widget_set_name (about_menu, "about_menu");
341
302
                            (GtkDestroyNotify) gtk_widget_unref);
342
303
  gtk_widget_show (about_menu);
343
304
  gtk_container_add (GTK_CONTAINER (help_menu), about_menu);
344
 
  gtk_tooltips_set_tip (tooltips, about_menu, "Display version information.", NULL);
 
305
  gtk_tooltips_set_tip (tooltips, about_menu, _("Display version information."), NULL);
345
306
 
346
307
  doc_menu = gtk_menu_item_new_with_label ("");
347
308
  tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (doc_menu)->child),
348
 
                                   "_Documentation...");
 
309
                                   _("_Documentation..."));
349
310
  gtk_widget_add_accelerator (doc_menu, "activate_item", help_menu_accels,
350
311
                              tmp_key, 0, 0);
351
312
  gtk_widget_set_name (doc_menu, "doc_menu");
354
315
                            (GtkDestroyNotify) gtk_widget_unref);
355
316
  gtk_widget_show (doc_menu);
356
317
  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);
 
318
  gtk_tooltips_set_tip (tooltips, doc_menu, _("Go to the documentation on the XScreenSaver web page."), NULL);
358
319
 
359
320
  notebook = gtk_notebook_new ();
360
321
  gtk_widget_set_name (notebook, "notebook");
364
325
  gtk_widget_show (notebook);
365
326
  gtk_box_pack_start (GTK_BOX (outer_vbox), notebook, TRUE, TRUE, 0);
366
327
 
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);
374
 
 
375
 
  list_vbox = gtk_vbox_new (FALSE, 5);
 
328
  demos_table = gtk_table_new (2, 2, FALSE);
 
329
  gtk_widget_set_name (demos_table, "demos_table");
 
330
  gtk_widget_ref (demos_table);
 
331
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "demos_table", demos_table,
 
332
                            (GtkDestroyNotify) gtk_widget_unref);
 
333
  gtk_widget_show (demos_table);
 
334
  gtk_container_add (GTK_CONTAINER (notebook), demos_table);
 
335
  gtk_container_set_border_width (GTK_CONTAINER (demos_table), 10);
 
336
 
 
337
  blanking_table = gtk_table_new (3, 4, FALSE);
 
338
  gtk_widget_set_name (blanking_table, "blanking_table");
 
339
  gtk_widget_ref (blanking_table);
 
340
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "blanking_table", blanking_table,
 
341
                            (GtkDestroyNotify) gtk_widget_unref);
 
342
  gtk_widget_show (blanking_table);
 
343
  gtk_table_attach (GTK_TABLE (demos_table), blanking_table, 0, 1, 1, 2,
 
344
                    (GtkAttachOptions) (GTK_FILL),
 
345
                    (GtkAttachOptions) (GTK_FILL), 0, 0);
 
346
  gtk_table_set_row_spacings (GTK_TABLE (blanking_table), 2);
 
347
 
 
348
  cycle_label = gtk_label_new (_("Cycle After"));
 
349
  gtk_widget_set_name (cycle_label, "cycle_label");
 
350
  gtk_widget_ref (cycle_label);
 
351
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cycle_label", cycle_label,
 
352
                            (GtkDestroyNotify) gtk_widget_unref);
 
353
  gtk_widget_show (cycle_label);
 
354
  gtk_table_attach (GTK_TABLE (blanking_table), cycle_label, 1, 2, 1, 2,
 
355
                    (GtkAttachOptions) (GTK_FILL),
 
356
                    (GtkAttachOptions) (0), 0, 0);
 
357
  gtk_label_set_justify (GTK_LABEL (cycle_label), GTK_JUSTIFY_RIGHT);
 
358
  gtk_misc_set_alignment (GTK_MISC (cycle_label), 1, 0.5);
 
359
  gtk_misc_set_padding (GTK_MISC (cycle_label), 8, 0);
 
360
 
 
361
  lock_button_eventbox = gtk_event_box_new ();
 
362
  gtk_widget_set_name (lock_button_eventbox, "lock_button_eventbox");
 
363
  gtk_widget_ref (lock_button_eventbox);
 
364
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "lock_button_eventbox", lock_button_eventbox,
 
365
                            (GtkDestroyNotify) gtk_widget_unref);
 
366
  gtk_widget_show (lock_button_eventbox);
 
367
  gtk_table_attach (GTK_TABLE (blanking_table), lock_button_eventbox, 0, 2, 2, 3,
 
368
                    (GtkAttachOptions) (GTK_FILL),
 
369
                    (GtkAttachOptions) (0), 0, 0);
 
370
  gtk_tooltips_set_tip (tooltips, lock_button_eventbox, _("Whether a password should be required to un-blank the screen."), NULL);
 
371
 
 
372
  lock_button = gtk_check_button_new_with_label (_("Lock Screen After"));
 
373
  gtk_widget_set_name (lock_button, "lock_button");
 
374
  gtk_widget_ref (lock_button);
 
375
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "lock_button", lock_button,
 
376
                            (GtkDestroyNotify) gtk_widget_unref);
 
377
  gtk_widget_show (lock_button);
 
378
  gtk_container_add (GTK_CONTAINER (lock_button_eventbox), lock_button);
 
379
 
 
380
  timeout_label = gtk_label_new (_("Blank After"));
 
381
  gtk_widget_set_name (timeout_label, "timeout_label");
 
382
  gtk_widget_ref (timeout_label);
 
383
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "timeout_label", timeout_label,
 
384
                            (GtkDestroyNotify) gtk_widget_unref);
 
385
  gtk_widget_show (timeout_label);
 
386
  gtk_table_attach (GTK_TABLE (blanking_table), timeout_label, 1, 2, 0, 1,
 
387
                    (GtkAttachOptions) (GTK_FILL),
 
388
                    (GtkAttachOptions) (0), 0, 0);
 
389
  gtk_label_set_justify (GTK_LABEL (timeout_label), GTK_JUSTIFY_RIGHT);
 
390
  gtk_misc_set_alignment (GTK_MISC (timeout_label), 1, 0.5);
 
391
  gtk_misc_set_padding (GTK_MISC (timeout_label), 8, 0);
 
392
 
 
393
  timeout_spinbutton_adj = gtk_adjustment_new (0, 1, 720, 1, 30, 30);
 
394
  timeout_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (timeout_spinbutton_adj), 15, 0);
 
395
  gtk_widget_set_name (timeout_spinbutton, "timeout_spinbutton");
 
396
  gtk_widget_ref (timeout_spinbutton);
 
397
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "timeout_spinbutton", timeout_spinbutton,
 
398
                            (GtkDestroyNotify) gtk_widget_unref);
 
399
  gtk_widget_show (timeout_spinbutton);
 
400
  gtk_table_attach (GTK_TABLE (blanking_table), timeout_spinbutton, 2, 3, 0, 1,
 
401
                    (GtkAttachOptions) (GTK_FILL),
 
402
                    (GtkAttachOptions) (0), 0, 0);
 
403
  gtk_tooltips_set_tip (tooltips, timeout_spinbutton, _("How long before the monitor goes completely black."), NULL);
 
404
  gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (timeout_spinbutton), TRUE);
 
405
  gtk_spin_button_set_snap_to_ticks (GTK_SPIN_BUTTON (timeout_spinbutton), TRUE);
 
406
 
 
407
  timeout_mlabel = gtk_label_new (_("minutes"));
 
408
  gtk_widget_set_name (timeout_mlabel, "timeout_mlabel");
 
409
  gtk_widget_ref (timeout_mlabel);
 
410
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "timeout_mlabel", timeout_mlabel,
 
411
                            (GtkDestroyNotify) gtk_widget_unref);
 
412
  gtk_widget_show (timeout_mlabel);
 
413
  gtk_table_attach (GTK_TABLE (blanking_table), timeout_mlabel, 3, 4, 0, 1,
 
414
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
 
415
                    (GtkAttachOptions) (0), 0, 0);
 
416
  gtk_label_set_justify (GTK_LABEL (timeout_mlabel), GTK_JUSTIFY_LEFT);
 
417
  gtk_misc_set_alignment (GTK_MISC (timeout_mlabel), 0, 0.5);
 
418
 
 
419
  cycle_mlabel = gtk_label_new (_("minutes"));
 
420
  gtk_widget_set_name (cycle_mlabel, "cycle_mlabel");
 
421
  gtk_widget_ref (cycle_mlabel);
 
422
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cycle_mlabel", cycle_mlabel,
 
423
                            (GtkDestroyNotify) gtk_widget_unref);
 
424
  gtk_widget_show (cycle_mlabel);
 
425
  gtk_table_attach (GTK_TABLE (blanking_table), cycle_mlabel, 3, 4, 1, 2,
 
426
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
 
427
                    (GtkAttachOptions) (0), 0, 0);
 
428
  gtk_label_set_justify (GTK_LABEL (cycle_mlabel), GTK_JUSTIFY_LEFT);
 
429
  gtk_misc_set_alignment (GTK_MISC (cycle_mlabel), 0, 0.5);
 
430
 
 
431
  lock_mlabel = gtk_label_new (_("minutes"));
 
432
  gtk_widget_set_name (lock_mlabel, "lock_mlabel");
 
433
  gtk_widget_ref (lock_mlabel);
 
434
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "lock_mlabel", lock_mlabel,
 
435
                            (GtkDestroyNotify) gtk_widget_unref);
 
436
  gtk_widget_show (lock_mlabel);
 
437
  gtk_table_attach (GTK_TABLE (blanking_table), lock_mlabel, 3, 4, 2, 3,
 
438
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
 
439
                    (GtkAttachOptions) (0), 0, 0);
 
440
  gtk_label_set_justify (GTK_LABEL (lock_mlabel), GTK_JUSTIFY_LEFT);
 
441
  gtk_misc_set_alignment (GTK_MISC (lock_mlabel), 0, 0.5);
 
442
 
 
443
  lock_spinbutton_adj = gtk_adjustment_new (0, 0, 720, 1, 30, 30);
 
444
  lock_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (lock_spinbutton_adj), 15, 0);
 
445
  gtk_widget_set_name (lock_spinbutton, "lock_spinbutton");
 
446
  gtk_widget_ref (lock_spinbutton);
 
447
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "lock_spinbutton", lock_spinbutton,
 
448
                            (GtkDestroyNotify) gtk_widget_unref);
 
449
  gtk_widget_show (lock_spinbutton);
 
450
  gtk_table_attach (GTK_TABLE (blanking_table), lock_spinbutton, 2, 3, 2, 3,
 
451
                    (GtkAttachOptions) (GTK_FILL),
 
452
                    (GtkAttachOptions) (0), 0, 10);
 
453
  gtk_tooltips_set_tip (tooltips, lock_spinbutton, _("How long before the monitor goes completely black."), NULL);
 
454
  gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (lock_spinbutton), TRUE);
 
455
  gtk_spin_button_set_snap_to_ticks (GTK_SPIN_BUTTON (lock_spinbutton), TRUE);
 
456
 
 
457
  cycle_spinbutton_adj = gtk_adjustment_new (0, 1, 720, 1, 30, 30);
 
458
  cycle_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (cycle_spinbutton_adj), 15, 0);
 
459
  gtk_widget_set_name (cycle_spinbutton, "cycle_spinbutton");
 
460
  gtk_widget_ref (cycle_spinbutton);
 
461
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cycle_spinbutton", cycle_spinbutton,
 
462
                            (GtkDestroyNotify) gtk_widget_unref);
 
463
  gtk_widget_show (cycle_spinbutton);
 
464
  gtk_table_attach (GTK_TABLE (blanking_table), cycle_spinbutton, 2, 3, 1, 2,
 
465
                    (GtkAttachOptions) (GTK_FILL),
 
466
                    (GtkAttachOptions) (0), 0, 0);
 
467
  gtk_tooltips_set_tip (tooltips, cycle_spinbutton, _("How long before the monitor goes completely black."), NULL);
 
468
  gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (cycle_spinbutton), TRUE);
 
469
  gtk_spin_button_set_snap_to_ticks (GTK_SPIN_BUTTON (cycle_spinbutton), TRUE);
 
470
 
 
471
  demo_manual_hbbox = gtk_hbutton_box_new ();
 
472
  gtk_widget_set_name (demo_manual_hbbox, "demo_manual_hbbox");
 
473
  gtk_widget_ref (demo_manual_hbbox);
 
474
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "demo_manual_hbbox", demo_manual_hbbox,
 
475
                            (GtkDestroyNotify) gtk_widget_unref);
 
476
  gtk_widget_show (demo_manual_hbbox);
 
477
  gtk_table_attach (GTK_TABLE (demos_table), demo_manual_hbbox, 1, 2, 1, 2,
 
478
                    (GtkAttachOptions) (GTK_FILL),
 
479
                    (GtkAttachOptions) (GTK_FILL), 0, 0);
 
480
  gtk_button_box_set_layout (GTK_BUTTON_BOX (demo_manual_hbbox), GTK_BUTTONBOX_SPREAD);
 
481
 
 
482
  demo = gtk_button_new_with_label (_("Preview"));
 
483
  gtk_widget_set_name (demo, "demo");
 
484
  gtk_widget_ref (demo);
 
485
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "demo", demo,
 
486
                            (GtkDestroyNotify) gtk_widget_unref);
 
487
  gtk_widget_show (demo);
 
488
  gtk_container_add (GTK_CONTAINER (demo_manual_hbbox), demo);
 
489
  STFU GTK_WIDGET_SET_FLAGS (demo, GTK_CAN_DEFAULT);
 
490
  gtk_tooltips_set_tip (tooltips, demo, _("Demo the selected screen saver in full-screen mode (click the mouse to return.)"), NULL);
 
491
 
 
492
  settings = gtk_button_new_with_label (_("Settings..."));
 
493
  gtk_widget_set_name (settings, "settings");
 
494
  gtk_widget_ref (settings);
 
495
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "settings", settings,
 
496
                            (GtkDestroyNotify) gtk_widget_unref);
 
497
  gtk_widget_show (settings);
 
498
  gtk_container_add (GTK_CONTAINER (demo_manual_hbbox), settings);
 
499
  STFU GTK_WIDGET_SET_FLAGS (settings, GTK_CAN_DEFAULT);
 
500
  gtk_tooltips_set_tip (tooltips, settings, _("Customization and explanation of the selected screen saver."), NULL);
 
501
 
 
502
  list_vbox = gtk_vbox_new (FALSE, 0);
376
503
  gtk_widget_set_name (list_vbox, "list_vbox");
377
504
  gtk_widget_ref (list_vbox);
378
505
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "list_vbox", list_vbox,
379
506
                            (GtkDestroyNotify) gtk_widget_unref);
380
507
  gtk_widget_show (list_vbox);
381
 
  gtk_box_pack_start (GTK_BOX (demos_hbox), list_vbox, FALSE, FALSE, 0);
 
508
  gtk_table_attach (GTK_TABLE (demos_table), list_vbox, 0, 1, 0, 1,
 
509
                    (GtkAttachOptions) (GTK_FILL),
 
510
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0);
382
511
  gtk_container_set_border_width (GTK_CONTAINER (list_vbox), 10);
383
512
 
 
513
  mode_hbox = gtk_hbox_new (FALSE, 0);
 
514
  gtk_widget_set_name (mode_hbox, "mode_hbox");
 
515
  gtk_widget_ref (mode_hbox);
 
516
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "mode_hbox", mode_hbox,
 
517
                            (GtkDestroyNotify) gtk_widget_unref);
 
518
  gtk_widget_show (mode_hbox);
 
519
  gtk_box_pack_start (GTK_BOX (list_vbox), mode_hbox, FALSE, TRUE, 10);
 
520
 
 
521
  mode_label = gtk_label_new (_("Mode:"));
 
522
  gtk_widget_set_name (mode_label, "mode_label");
 
523
  gtk_widget_ref (mode_label);
 
524
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "mode_label", mode_label,
 
525
                            (GtkDestroyNotify) gtk_widget_unref);
 
526
  gtk_widget_show (mode_label);
 
527
  gtk_box_pack_start (GTK_BOX (mode_hbox), mode_label, FALSE, FALSE, 0);
 
528
  gtk_label_set_justify (GTK_LABEL (mode_label), GTK_JUSTIFY_LEFT);
 
529
  gtk_misc_set_alignment (GTK_MISC (mode_label), 0, 0.5);
 
530
 
 
531
  mode_menu = gtk_option_menu_new ();
 
532
  gtk_widget_set_name (mode_menu, "mode_menu");
 
533
  gtk_widget_ref (mode_menu);
 
534
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "mode_menu", mode_menu,
 
535
                            (GtkDestroyNotify) gtk_widget_unref);
 
536
  gtk_widget_show (mode_menu);
 
537
  gtk_box_pack_start (GTK_BOX (mode_hbox), mode_menu, FALSE, FALSE, 4);
 
538
  mode_menu_menu = gtk_menu_new ();
 
539
  glade_menuitem = gtk_menu_item_new_with_label (_("Disable Screen Saver"));
 
540
  gtk_widget_show (glade_menuitem);
 
541
  gtk_menu_append (GTK_MENU (mode_menu_menu), glade_menuitem);
 
542
  glade_menuitem = gtk_menu_item_new_with_label (_("Blank Screen Only"));
 
543
  gtk_widget_show (glade_menuitem);
 
544
  gtk_menu_append (GTK_MENU (mode_menu_menu), glade_menuitem);
 
545
  glade_menuitem = gtk_menu_item_new_with_label (_("Only One Screen Saver"));
 
546
  gtk_widget_show (glade_menuitem);
 
547
  gtk_menu_append (GTK_MENU (mode_menu_menu), glade_menuitem);
 
548
  glade_menuitem = gtk_menu_item_new_with_label (_("Random Screen Saver"));
 
549
  gtk_widget_show (glade_menuitem);
 
550
  gtk_menu_append (GTK_MENU (mode_menu_menu), glade_menuitem);
 
551
  gtk_option_menu_set_menu (GTK_OPTION_MENU (mode_menu), mode_menu_menu);
 
552
  gtk_option_menu_set_history (GTK_OPTION_MENU (mode_menu), 3);
 
553
 
 
554
  col_head_hbox = gtk_hbox_new (FALSE, 0);
 
555
  gtk_widget_set_name (col_head_hbox, "col_head_hbox");
 
556
  gtk_widget_ref (col_head_hbox);
 
557
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "col_head_hbox", col_head_hbox,
 
558
                            (GtkDestroyNotify) gtk_widget_unref);
 
559
  gtk_widget_show (col_head_hbox);
 
560
  gtk_box_pack_start (GTK_BOX (list_vbox), col_head_hbox, FALSE, TRUE, 0);
 
561
 
 
562
  use_col_frame = gtk_frame_new (NULL);
 
563
  gtk_widget_set_name (use_col_frame, "use_col_frame");
 
564
  gtk_widget_ref (use_col_frame);
 
565
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "use_col_frame", use_col_frame,
 
566
                            (GtkDestroyNotify) gtk_widget_unref);
 
567
  gtk_widget_show (use_col_frame);
 
568
  gtk_box_pack_start (GTK_BOX (col_head_hbox), use_col_frame, FALSE, FALSE, 0);
 
569
  gtk_frame_set_shadow_type (GTK_FRAME (use_col_frame), GTK_SHADOW_OUT);
 
570
 
 
571
  use_label = gtk_label_new (_("Use"));
 
572
  gtk_widget_set_name (use_label, "use_label");
 
573
  gtk_widget_ref (use_label);
 
574
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "use_label", use_label,
 
575
                            (GtkDestroyNotify) gtk_widget_unref);
 
576
  gtk_widget_show (use_label);
 
577
  gtk_container_add (GTK_CONTAINER (use_col_frame), use_label);
 
578
  gtk_label_set_justify (GTK_LABEL (use_label), GTK_JUSTIFY_LEFT);
 
579
  gtk_misc_set_alignment (GTK_MISC (use_label), 0, 0.5);
 
580
  gtk_misc_set_padding (GTK_MISC (use_label), 3, 0);
 
581
 
 
582
  saver_col_frame = gtk_frame_new (NULL);
 
583
  gtk_widget_set_name (saver_col_frame, "saver_col_frame");
 
584
  gtk_widget_ref (saver_col_frame);
 
585
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "saver_col_frame", saver_col_frame,
 
586
                            (GtkDestroyNotify) gtk_widget_unref);
 
587
  gtk_widget_show (saver_col_frame);
 
588
  gtk_box_pack_start (GTK_BOX (col_head_hbox), saver_col_frame, TRUE, TRUE, 0);
 
589
  gtk_frame_set_shadow_type (GTK_FRAME (saver_col_frame), GTK_SHADOW_OUT);
 
590
 
 
591
  saver_label = gtk_label_new (_("Screen Saver"));
 
592
  gtk_widget_set_name (saver_label, "saver_label");
 
593
  gtk_widget_ref (saver_label);
 
594
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "saver_label", saver_label,
 
595
                            (GtkDestroyNotify) gtk_widget_unref);
 
596
  gtk_widget_show (saver_label);
 
597
  gtk_container_add (GTK_CONTAINER (saver_col_frame), saver_label);
 
598
  gtk_label_set_justify (GTK_LABEL (saver_label), GTK_JUSTIFY_LEFT);
 
599
  gtk_misc_set_alignment (GTK_MISC (saver_label), 0, 0.5);
 
600
  gtk_misc_set_padding (GTK_MISC (saver_label), 6, 0);
 
601
 
384
602
  scroller = gtk_scrolled_window_new (NULL, NULL);
385
603
  gtk_widget_set_name (scroller, "scroller");
386
604
  gtk_widget_ref (scroller);
413
631
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "centering_hbox", centering_hbox,
414
632
                            (GtkDestroyNotify) gtk_widget_unref);
415
633
  gtk_widget_show (centering_hbox);
416
 
  gtk_box_pack_start (GTK_BOX (list_vbox), centering_hbox, FALSE, TRUE, 0);
 
634
  gtk_box_pack_end (GTK_BOX (list_vbox), centering_hbox, FALSE, TRUE, 0);
417
635
 
418
636
  next_prev_hbox = gtk_hbox_new (FALSE, 0);
419
637
  gtk_widget_set_name (next_prev_hbox, "next_prev_hbox");
423
641
  gtk_widget_show (next_prev_hbox);
424
642
  gtk_box_pack_start (GTK_BOX (centering_hbox), next_prev_hbox, FALSE, FALSE, 0);
425
643
 
426
 
  next = gtk_button_new_with_label ("\\/");
 
644
  next = gtk_button_new_with_label (_("\\/"));
427
645
  gtk_widget_set_name (next, "next");
428
646
  gtk_widget_ref (next);
429
647
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "next", next,
430
648
                            (GtkDestroyNotify) gtk_widget_unref);
431
649
  gtk_widget_show (next);
432
650
  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);
 
651
  STFU GTK_WIDGET_SET_FLAGS (next, GTK_CAN_DEFAULT);
 
652
  gtk_tooltips_set_tip (tooltips, next, _("Run the next screen saver in the list in full-screen mode (click the mouse to return.)"), NULL);
435
653
 
436
 
  prev = gtk_button_new_with_label ("/\\");
 
654
  prev = gtk_button_new_with_label (_("/\\"));
437
655
  gtk_widget_set_name (prev, "prev");
438
656
  gtk_widget_ref (prev);
439
657
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "prev", prev,
440
658
                            (GtkDestroyNotify) gtk_widget_unref);
441
659
  gtk_widget_show (prev);
442
660
  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);
445
 
 
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);
454
 
 
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);
462
 
 
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);
474
 
 
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);
482
 
 
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);
493
 
 
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);
501
 
 
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);
510
 
 
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);
519
 
 
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);
530
 
 
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);
553
 
 
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");
562
 
 
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);
570
 
 
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);
578
 
 
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);
588
 
 
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);
598
 
 
599
 
  demo_tab = gtk_label_new ("Graphics Demos");
 
661
  STFU GTK_WIDGET_SET_FLAGS (prev, GTK_CAN_DEFAULT);
 
662
  gtk_tooltips_set_tip (tooltips, prev, _("Run the previous screen saver in the list in full-screen mode (click the mouse to return.)"), NULL);
 
663
 
 
664
  preview_frame = gtk_frame_new (_("Description"));
 
665
  gtk_widget_set_name (preview_frame, "preview_frame");
 
666
  gtk_widget_ref (preview_frame);
 
667
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "preview_frame", preview_frame,
 
668
                            (GtkDestroyNotify) gtk_widget_unref);
 
669
  gtk_widget_show (preview_frame);
 
670
  gtk_table_attach (GTK_TABLE (demos_table), preview_frame, 1, 2, 0, 1,
 
671
                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
 
672
                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 0, 6);
 
673
 
 
674
  preview_aspectframe = gtk_aspect_frame_new (NULL, 0.5, 0.5, 1.33, FALSE);
 
675
  gtk_widget_set_name (preview_aspectframe, "preview_aspectframe");
 
676
  gtk_widget_ref (preview_aspectframe);
 
677
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "preview_aspectframe", preview_aspectframe,
 
678
                            (GtkDestroyNotify) gtk_widget_unref);
 
679
  gtk_widget_show (preview_aspectframe);
 
680
  gtk_container_add (GTK_CONTAINER (preview_frame), preview_aspectframe);
 
681
  gtk_container_set_border_width (GTK_CONTAINER (preview_aspectframe), 8);
 
682
 
 
683
  preview = gtk_drawing_area_new ();
 
684
  gtk_widget_set_name (preview, "preview");
 
685
  gtk_widget_ref (preview);
 
686
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "preview", preview,
 
687
                            (GtkDestroyNotify) gtk_widget_unref);
 
688
  gtk_widget_show (preview);
 
689
  gtk_container_add (GTK_CONTAINER (preview_aspectframe), preview);
 
690
 
 
691
  demo_tab = gtk_label_new (_("Display Modes"));
600
692
  gtk_widget_set_name (demo_tab, "demo_tab");
601
693
  gtk_widget_ref (demo_tab);
602
694
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "demo_tab", demo_tab,
604
696
  gtk_widget_show (demo_tab);
605
697
  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook), 0), demo_tab);
606
698
 
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);
614
 
 
615
 
  options_table = gtk_table_new (1, 2, TRUE);
 
699
  options_table = gtk_table_new (2, 2, TRUE);
616
700
  gtk_widget_set_name (options_table, "options_table");
617
701
  gtk_widget_ref (options_table);
618
702
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "options_table", options_table,
619
703
                            (GtkDestroyNotify) gtk_widget_unref);
620
704
  gtk_widget_show (options_table);
621
 
  gtk_box_pack_start (GTK_BOX (options_vbox), options_table, FALSE, FALSE, 0);
 
705
  gtk_container_add (GTK_CONTAINER (notebook), options_table);
622
706
 
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,
 
707
  diag_frame = gtk_frame_new (_("Diagnostics"));
 
708
  gtk_widget_set_name (diag_frame, "diag_frame");
 
709
  gtk_widget_ref (diag_frame);
 
710
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "diag_frame", diag_frame,
627
711
                            (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,
 
712
  gtk_widget_show (diag_frame);
 
713
  gtk_table_attach (GTK_TABLE (options_table), diag_frame, 0, 1, 1, 2,
630
714
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
631
715
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0);
632
 
 
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);
643
 
 
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);
654
 
 
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);
665
 
 
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);
676
 
 
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);
687
 
 
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);
699
 
 
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);
711
 
 
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);
723
 
 
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);
734
 
 
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);
745
 
 
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);
754
 
 
755
 
  cmap_frame = gtk_frame_new ("Colormaps:");
 
716
  gtk_container_set_border_width (GTK_CONTAINER (diag_frame), 10);
 
717
 
 
718
  diag_hbox = gtk_hbox_new (FALSE, 8);
 
719
  gtk_widget_set_name (diag_hbox, "diag_hbox");
 
720
  gtk_widget_ref (diag_hbox);
 
721
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "diag_hbox", diag_hbox,
 
722
                            (GtkDestroyNotify) gtk_widget_unref);
 
723
  gtk_widget_show (diag_hbox);
 
724
  gtk_container_add (GTK_CONTAINER (diag_frame), diag_hbox);
 
725
  gtk_container_set_border_width (GTK_CONTAINER (diag_hbox), 8);
 
726
 
 
727
  diag_logo = create_pixmap (xscreensaver_demo, "screensaver-diagnostic.png");
 
728
  gtk_widget_set_name (diag_logo, "diag_logo");
 
729
  gtk_widget_ref (diag_logo);
 
730
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "diag_logo", diag_logo,
 
731
                            (GtkDestroyNotify) gtk_widget_unref);
 
732
  gtk_widget_show (diag_logo);
 
733
  gtk_box_pack_start (GTK_BOX (diag_hbox), diag_logo, FALSE, FALSE, 0);
 
734
  gtk_misc_set_alignment (GTK_MISC (diag_logo), 0.5, 0);
 
735
 
 
736
  diag_vbox = gtk_vbox_new (FALSE, 0);
 
737
  gtk_widget_set_name (diag_vbox, "diag_vbox");
 
738
  gtk_widget_ref (diag_vbox);
 
739
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "diag_vbox", diag_vbox,
 
740
                            (GtkDestroyNotify) gtk_widget_unref);
 
741
  gtk_widget_show (diag_vbox);
 
742
  gtk_box_pack_start (GTK_BOX (diag_hbox), diag_vbox, TRUE, TRUE, 0);
 
743
 
 
744
  verbose_button_eventbox = gtk_event_box_new ();
 
745
  gtk_widget_set_name (verbose_button_eventbox, "verbose_button_eventbox");
 
746
  gtk_widget_ref (verbose_button_eventbox);
 
747
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "verbose_button_eventbox", verbose_button_eventbox,
 
748
                            (GtkDestroyNotify) gtk_widget_unref);
 
749
  gtk_widget_show (verbose_button_eventbox);
 
750
  gtk_box_pack_start (GTK_BOX (diag_vbox), verbose_button_eventbox, FALSE, FALSE, 0);
 
751
  gtk_tooltips_set_tip (tooltips, verbose_button_eventbox, _("Whether the daemon should print lots of debugging information."), NULL);
 
752
 
 
753
  verbose_button = gtk_check_button_new_with_label (_("Verbose Diagnostics"));
 
754
  gtk_widget_set_name (verbose_button, "verbose_button");
 
755
  gtk_widget_ref (verbose_button);
 
756
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "verbose_button", verbose_button,
 
757
                            (GtkDestroyNotify) gtk_widget_unref);
 
758
  gtk_widget_show (verbose_button);
 
759
  gtk_container_add (GTK_CONTAINER (verbose_button_eventbox), verbose_button);
 
760
 
 
761
  capture_button_eventbox = gtk_event_box_new ();
 
762
  gtk_widget_set_name (capture_button_eventbox, "capture_button_eventbox");
 
763
  gtk_widget_ref (capture_button_eventbox);
 
764
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "capture_button_eventbox", capture_button_eventbox,
 
765
                            (GtkDestroyNotify) gtk_widget_unref);
 
766
  gtk_widget_show (capture_button_eventbox);
 
767
  gtk_box_pack_start (GTK_BOX (diag_vbox), capture_button_eventbox, FALSE, FALSE, 0);
 
768
  gtk_tooltips_set_tip (tooltips, capture_button_eventbox, _("Whether any error output of the display modes should be redirected to the screen."), NULL);
 
769
 
 
770
  capture_button = gtk_check_button_new_with_label (_("Display Subprocess Errors"));
 
771
  gtk_widget_set_name (capture_button, "capture_button");
 
772
  gtk_widget_ref (capture_button);
 
773
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "capture_button", capture_button,
 
774
                            (GtkDestroyNotify) gtk_widget_unref);
 
775
  gtk_widget_show (capture_button);
 
776
  gtk_container_add (GTK_CONTAINER (capture_button_eventbox), capture_button);
 
777
 
 
778
  splash_button_eventbox = gtk_event_box_new ();
 
779
  gtk_widget_set_name (splash_button_eventbox, "splash_button_eventbox");
 
780
  gtk_widget_ref (splash_button_eventbox);
 
781
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "splash_button_eventbox", splash_button_eventbox,
 
782
                            (GtkDestroyNotify) gtk_widget_unref);
 
783
  gtk_widget_show (splash_button_eventbox);
 
784
  gtk_box_pack_start (GTK_BOX (diag_vbox), splash_button_eventbox, FALSE, FALSE, 0);
 
785
  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);
 
786
 
 
787
  splash_button = gtk_check_button_new_with_label (_("Display Splash Screen at Startup"));
 
788
  gtk_widget_set_name (splash_button, "splash_button");
 
789
  gtk_widget_ref (splash_button);
 
790
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "splash_button", splash_button,
 
791
                            (GtkDestroyNotify) gtk_widget_unref);
 
792
  gtk_widget_show (splash_button);
 
793
  gtk_container_add (GTK_CONTAINER (splash_button_eventbox), splash_button);
 
794
  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (splash_button), TRUE);
 
795
 
 
796
  cmap_frame = gtk_frame_new (_("Colormaps"));
756
797
  gtk_widget_set_name (cmap_frame, "cmap_frame");
757
798
  gtk_widget_ref (cmap_frame);
758
799
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cmap_frame", cmap_frame,
759
800
                            (GtkDestroyNotify) gtk_widget_unref);
760
801
  gtk_widget_show (cmap_frame);
761
 
  gtk_table_attach (GTK_TABLE (options_table_2), cmap_frame, 0, 1, 1, 2,
 
802
  gtk_table_attach (GTK_TABLE (options_table), cmap_frame, 1, 2, 1, 2,
762
803
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
763
804
                    (GtkAttachOptions) (GTK_FILL), 0, 0);
764
805
  gtk_container_set_border_width (GTK_CONTAINER (cmap_frame), 10);
765
806
 
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);
776
 
 
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);
787
 
 
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);
798
 
 
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);
 
807
  cmap_hbox = gtk_hbox_new (FALSE, 8);
 
808
  gtk_widget_set_name (cmap_hbox, "cmap_hbox");
 
809
  gtk_widget_ref (cmap_hbox);
 
810
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cmap_hbox", cmap_hbox,
 
811
                            (GtkDestroyNotify) gtk_widget_unref);
 
812
  gtk_widget_show (cmap_hbox);
 
813
  gtk_container_add (GTK_CONTAINER (cmap_frame), cmap_hbox);
 
814
  gtk_container_set_border_width (GTK_CONTAINER (cmap_hbox), 8);
 
815
 
 
816
  cmap_logo = create_pixmap (xscreensaver_demo, "screensaver-colorselector.png");
 
817
  gtk_widget_set_name (cmap_logo, "cmap_logo");
 
818
  gtk_widget_ref (cmap_logo);
 
819
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cmap_logo", cmap_logo,
 
820
                            (GtkDestroyNotify) gtk_widget_unref);
 
821
  gtk_widget_show (cmap_logo);
 
822
  gtk_box_pack_start (GTK_BOX (cmap_hbox), cmap_logo, FALSE, FALSE, 0);
 
823
  gtk_misc_set_alignment (GTK_MISC (cmap_logo), 0.5, 0);
 
824
 
 
825
  cmap_vbox = gtk_vbox_new (FALSE, 0);
 
826
  gtk_widget_set_name (cmap_vbox, "cmap_vbox");
 
827
  gtk_widget_ref (cmap_vbox);
 
828
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cmap_vbox", cmap_vbox,
 
829
                            (GtkDestroyNotify) gtk_widget_unref);
 
830
  gtk_widget_show (cmap_vbox);
 
831
  gtk_box_pack_start (GTK_BOX (cmap_hbox), cmap_vbox, TRUE, TRUE, 0);
810
832
 
811
833
  install_button_eventbox = gtk_event_box_new ();
812
834
  gtk_widget_set_name (install_button_eventbox, "install_button_eventbox");
814
836
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "install_button_eventbox", install_button_eventbox,
815
837
                            (GtkDestroyNotify) gtk_widget_unref);
816
838
  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);
 
839
  gtk_box_pack_start (GTK_BOX (cmap_vbox), install_button_eventbox, FALSE, FALSE, 0);
 
840
  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);
821
841
 
822
 
  install_button = gtk_check_button_new_with_label ("Install Colormap");
 
842
  install_button = gtk_check_button_new_with_label (_("Install Colormap"));
823
843
  gtk_widget_set_name (install_button, "install_button");
824
844
  gtk_widget_ref (install_button);
825
845
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "install_button", install_button,
827
847
  gtk_widget_show (install_button);
828
848
  gtk_container_add (GTK_CONTAINER (install_button_eventbox), install_button);
829
849
 
 
850
  cmap_hr = gtk_hseparator_new ();
 
851
  gtk_widget_set_name (cmap_hr, "cmap_hr");
 
852
  gtk_widget_ref (cmap_hr);
 
853
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "cmap_hr", cmap_hr,
 
854
                            (GtkDestroyNotify) gtk_widget_unref);
 
855
  gtk_widget_show (cmap_hr);
 
856
  gtk_box_pack_start (GTK_BOX (cmap_vbox), cmap_hr, FALSE, FALSE, 4);
 
857
 
830
858
  fade_button_eventbox = gtk_event_box_new ();
831
859
  gtk_widget_set_name (fade_button_eventbox, "fade_button_eventbox");
832
860
  gtk_widget_ref (fade_button_eventbox);
833
861
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "fade_button_eventbox", fade_button_eventbox,
834
862
                            (GtkDestroyNotify) gtk_widget_unref);
835
863
  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);
 
864
  gtk_box_pack_start (GTK_BOX (cmap_vbox), fade_button_eventbox, FALSE, FALSE, 0);
 
865
  gtk_tooltips_set_tip (tooltips, fade_button_eventbox, _("Whether the screen should slowly fade to black when the screen saver activates."), NULL);
840
866
 
841
 
  fade_button = gtk_check_button_new_with_label ("Fade To Black When Blanking");
 
867
  fade_button = gtk_check_button_new_with_label (_("Fade To Black When Blanking"));
842
868
  gtk_widget_set_name (fade_button, "fade_button");
843
869
  gtk_widget_ref (fade_button);
844
870
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "fade_button", fade_button,
852
878
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "unfade_button_eventbox", unfade_button_eventbox,
853
879
                            (GtkDestroyNotify) gtk_widget_unref);
854
880
  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);
 
881
  gtk_box_pack_start (GTK_BOX (cmap_vbox), unfade_button_eventbox, FALSE, FALSE, 0);
 
882
  gtk_tooltips_set_tip (tooltips, unfade_button_eventbox, _("Whether the screen should slowly fade in from black when the screen saver deactivates."), NULL);
859
883
 
860
 
  unfade_button = gtk_check_button_new_with_label ("Fade From Black When Unblanking");
 
884
  unfade_button = gtk_check_button_new_with_label (_("Fade From Black When Unblanking"));
861
885
  gtk_widget_set_name (unfade_button, "unfade_button");
862
886
  gtk_widget_ref (unfade_button);
863
887
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "unfade_button", unfade_button,
865
889
  gtk_widget_show (unfade_button);
866
890
  gtk_container_add (GTK_CONTAINER (unfade_button_eventbox), unfade_button);
867
891
 
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);
877
 
 
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);
887
 
 
888
 
  grab_frame = gtk_frame_new ("Image Manipulation:");
 
892
  fade_hbox = gtk_hbox_new (FALSE, 0);
 
893
  gtk_widget_set_name (fade_hbox, "fade_hbox");
 
894
  gtk_widget_ref (fade_hbox);
 
895
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "fade_hbox", fade_hbox,
 
896
                            (GtkDestroyNotify) gtk_widget_unref);
 
897
  gtk_widget_show (fade_hbox);
 
898
  gtk_box_pack_start (GTK_BOX (cmap_vbox), fade_hbox, FALSE, FALSE, 0);
 
899
 
 
900
  fade_dummy = gtk_label_new ("");
 
901
  gtk_widget_set_name (fade_dummy, "fade_dummy");
 
902
  gtk_widget_ref (fade_dummy);
 
903
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "fade_dummy", fade_dummy,
 
904
                            (GtkDestroyNotify) gtk_widget_unref);
 
905
  gtk_widget_show (fade_dummy);
 
906
  gtk_box_pack_start (GTK_BOX (fade_hbox), fade_dummy, FALSE, FALSE, 0);
 
907
  gtk_label_set_justify (GTK_LABEL (fade_dummy), GTK_JUSTIFY_LEFT);
 
908
  gtk_misc_set_padding (GTK_MISC (fade_dummy), 3, 0);
 
909
 
 
910
  fade_label = gtk_label_new (_("Fade Duration"));
 
911
  gtk_widget_set_name (fade_label, "fade_label");
 
912
  gtk_widget_ref (fade_label);
 
913
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "fade_label", fade_label,
 
914
                            (GtkDestroyNotify) gtk_widget_unref);
 
915
  gtk_widget_show (fade_label);
 
916
  gtk_box_pack_start (GTK_BOX (fade_hbox), fade_label, FALSE, FALSE, 10);
 
917
  gtk_label_set_justify (GTK_LABEL (fade_label), GTK_JUSTIFY_LEFT);
 
918
  gtk_misc_set_alignment (GTK_MISC (fade_label), 0, 0.5);
 
919
 
 
920
  fade_spinbutton_adj = gtk_adjustment_new (0, 0, 10, 1, 1, 1);
 
921
  fade_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (fade_spinbutton_adj), 1, 0);
 
922
  gtk_widget_set_name (fade_spinbutton, "fade_spinbutton");
 
923
  gtk_widget_ref (fade_spinbutton);
 
924
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "fade_spinbutton", fade_spinbutton,
 
925
                            (GtkDestroyNotify) gtk_widget_unref);
 
926
  gtk_widget_show (fade_spinbutton);
 
927
  gtk_box_pack_start (GTK_BOX (fade_hbox), fade_spinbutton, FALSE, FALSE, 0);
 
928
  gtk_tooltips_set_tip (tooltips, fade_spinbutton, _("How long it should take for the screen to fade in and out."), NULL);
 
929
  gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (fade_spinbutton), TRUE);
 
930
  gtk_spin_button_set_snap_to_ticks (GTK_SPIN_BUTTON (fade_spinbutton), TRUE);
 
931
 
 
932
  fade_sec_label = gtk_label_new (_("seconds"));
 
933
  gtk_widget_set_name (fade_sec_label, "fade_sec_label");
 
934
  gtk_widget_ref (fade_sec_label);
 
935
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "fade_sec_label", fade_sec_label,
 
936
                            (GtkDestroyNotify) gtk_widget_unref);
 
937
  gtk_widget_show (fade_sec_label);
 
938
  gtk_box_pack_start (GTK_BOX (fade_hbox), fade_sec_label, FALSE, FALSE, 0);
 
939
  gtk_label_set_justify (GTK_LABEL (fade_sec_label), GTK_JUSTIFY_LEFT);
 
940
  gtk_misc_set_alignment (GTK_MISC (fade_sec_label), 0, 0.5);
 
941
 
 
942
  dpms_frame = gtk_frame_new (_("Display Power Management"));
 
943
  gtk_widget_set_name (dpms_frame, "dpms_frame");
 
944
  gtk_widget_ref (dpms_frame);
 
945
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_frame", dpms_frame,
 
946
                            (GtkDestroyNotify) gtk_widget_unref);
 
947
  gtk_widget_show (dpms_frame);
 
948
  gtk_table_attach (GTK_TABLE (options_table), dpms_frame, 1, 2, 0, 1,
 
949
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
 
950
                    (GtkAttachOptions) (GTK_FILL), 0, 0);
 
951
  gtk_container_set_border_width (GTK_CONTAINER (dpms_frame), 10);
 
952
 
 
953
  dpms_hbox = gtk_hbox_new (FALSE, 8);
 
954
  gtk_widget_set_name (dpms_hbox, "dpms_hbox");
 
955
  gtk_widget_ref (dpms_hbox);
 
956
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_hbox", dpms_hbox,
 
957
                            (GtkDestroyNotify) gtk_widget_unref);
 
958
  gtk_widget_show (dpms_hbox);
 
959
  gtk_container_add (GTK_CONTAINER (dpms_frame), dpms_hbox);
 
960
  gtk_container_set_border_width (GTK_CONTAINER (dpms_hbox), 8);
 
961
 
 
962
  dpms_logo = create_pixmap (xscreensaver_demo, "screensaver-power.png");
 
963
  gtk_widget_set_name (dpms_logo, "dpms_logo");
 
964
  gtk_widget_ref (dpms_logo);
 
965
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_logo", dpms_logo,
 
966
                            (GtkDestroyNotify) gtk_widget_unref);
 
967
  gtk_widget_show (dpms_logo);
 
968
  gtk_box_pack_start (GTK_BOX (dpms_hbox), dpms_logo, FALSE, FALSE, 0);
 
969
  gtk_misc_set_alignment (GTK_MISC (dpms_logo), 0.5, 0);
 
970
 
 
971
  dpms_vbox = gtk_vbox_new (FALSE, 0);
 
972
  gtk_widget_set_name (dpms_vbox, "dpms_vbox");
 
973
  gtk_widget_ref (dpms_vbox);
 
974
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_vbox", dpms_vbox,
 
975
                            (GtkDestroyNotify) gtk_widget_unref);
 
976
  gtk_widget_show (dpms_vbox);
 
977
  gtk_box_pack_start (GTK_BOX (dpms_hbox), dpms_vbox, FALSE, FALSE, 0);
 
978
 
 
979
  dpms_button_eventbox = gtk_event_box_new ();
 
980
  gtk_widget_set_name (dpms_button_eventbox, "dpms_button_eventbox");
 
981
  gtk_widget_ref (dpms_button_eventbox);
 
982
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_button_eventbox", dpms_button_eventbox,
 
983
                            (GtkDestroyNotify) gtk_widget_unref);
 
984
  gtk_widget_show (dpms_button_eventbox);
 
985
  gtk_box_pack_start (GTK_BOX (dpms_vbox), dpms_button_eventbox, FALSE, FALSE, 0);
 
986
  gtk_tooltips_set_tip (tooltips, dpms_button_eventbox, _("Whether the monitor should be powered down after a while."), NULL);
 
987
 
 
988
  dpms_button = gtk_check_button_new_with_label (_("Power Management Enabled"));
 
989
  gtk_widget_set_name (dpms_button, "dpms_button");
 
990
  gtk_widget_ref (dpms_button);
 
991
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_button", dpms_button,
 
992
                            (GtkDestroyNotify) gtk_widget_unref);
 
993
  gtk_widget_show (dpms_button);
 
994
  gtk_container_add (GTK_CONTAINER (dpms_button_eventbox), dpms_button);
 
995
  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (dpms_button), TRUE);
 
996
 
 
997
  dpms_table = gtk_table_new (3, 3, FALSE);
 
998
  gtk_widget_set_name (dpms_table, "dpms_table");
 
999
  gtk_widget_ref (dpms_table);
 
1000
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_table", dpms_table,
 
1001
                            (GtkDestroyNotify) gtk_widget_unref);
 
1002
  gtk_widget_show (dpms_table);
 
1003
  gtk_box_pack_start (GTK_BOX (dpms_vbox), dpms_table, FALSE, FALSE, 0);
 
1004
  gtk_table_set_row_spacings (GTK_TABLE (dpms_table), 2);
 
1005
 
 
1006
  dpms_standby_spinbutton_adj = gtk_adjustment_new (0, 0, 1440, 1, 30, 30);
 
1007
  dpms_standby_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (dpms_standby_spinbutton_adj), 15, 0);
 
1008
  gtk_widget_set_name (dpms_standby_spinbutton, "dpms_standby_spinbutton");
 
1009
  gtk_widget_ref (dpms_standby_spinbutton);
 
1010
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_standby_spinbutton", dpms_standby_spinbutton,
 
1011
                            (GtkDestroyNotify) gtk_widget_unref);
 
1012
  gtk_widget_show (dpms_standby_spinbutton);
 
1013
  gtk_table_attach (GTK_TABLE (dpms_table), dpms_standby_spinbutton, 1, 2, 0, 1,
 
1014
                    (GtkAttachOptions) (GTK_FILL),
 
1015
                    (GtkAttachOptions) (0), 0, 0);
 
1016
  gtk_tooltips_set_tip (tooltips, dpms_standby_spinbutton, _("How long before the monitor goes completely black."), NULL);
 
1017
  gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (dpms_standby_spinbutton), TRUE);
 
1018
  gtk_spin_button_set_snap_to_ticks (GTK_SPIN_BUTTON (dpms_standby_spinbutton), TRUE);
 
1019
 
 
1020
  dpms_standby_mlabel = gtk_label_new (_("minutes"));
 
1021
  gtk_widget_set_name (dpms_standby_mlabel, "dpms_standby_mlabel");
 
1022
  gtk_widget_ref (dpms_standby_mlabel);
 
1023
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_standby_mlabel", dpms_standby_mlabel,
 
1024
                            (GtkDestroyNotify) gtk_widget_unref);
 
1025
  gtk_widget_show (dpms_standby_mlabel);
 
1026
  gtk_table_attach (GTK_TABLE (dpms_table), dpms_standby_mlabel, 2, 3, 0, 1,
 
1027
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
 
1028
                    (GtkAttachOptions) (0), 0, 0);
 
1029
  gtk_label_set_justify (GTK_LABEL (dpms_standby_mlabel), GTK_JUSTIFY_LEFT);
 
1030
  gtk_misc_set_alignment (GTK_MISC (dpms_standby_mlabel), 0, 0.5);
 
1031
 
 
1032
  dpms_suspend_mlabel = gtk_label_new (_("minutes"));
 
1033
  gtk_widget_set_name (dpms_suspend_mlabel, "dpms_suspend_mlabel");
 
1034
  gtk_widget_ref (dpms_suspend_mlabel);
 
1035
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_suspend_mlabel", dpms_suspend_mlabel,
 
1036
                            (GtkDestroyNotify) gtk_widget_unref);
 
1037
  gtk_widget_show (dpms_suspend_mlabel);
 
1038
  gtk_table_attach (GTK_TABLE (dpms_table), dpms_suspend_mlabel, 2, 3, 1, 2,
 
1039
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
 
1040
                    (GtkAttachOptions) (0), 0, 0);
 
1041
  gtk_label_set_justify (GTK_LABEL (dpms_suspend_mlabel), GTK_JUSTIFY_LEFT);
 
1042
  gtk_misc_set_alignment (GTK_MISC (dpms_suspend_mlabel), 0, 0.5);
 
1043
 
 
1044
  dpms_off_mlabel = gtk_label_new (_("minutes"));
 
1045
  gtk_widget_set_name (dpms_off_mlabel, "dpms_off_mlabel");
 
1046
  gtk_widget_ref (dpms_off_mlabel);
 
1047
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_off_mlabel", dpms_off_mlabel,
 
1048
                            (GtkDestroyNotify) gtk_widget_unref);
 
1049
  gtk_widget_show (dpms_off_mlabel);
 
1050
  gtk_table_attach (GTK_TABLE (dpms_table), dpms_off_mlabel, 2, 3, 2, 3,
 
1051
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
 
1052
                    (GtkAttachOptions) (0), 0, 0);
 
1053
  gtk_label_set_justify (GTK_LABEL (dpms_off_mlabel), GTK_JUSTIFY_LEFT);
 
1054
  gtk_misc_set_alignment (GTK_MISC (dpms_off_mlabel), 0, 0.5);
 
1055
 
 
1056
  dpms_off_label = gtk_label_new (_("Off After"));
 
1057
  gtk_widget_set_name (dpms_off_label, "dpms_off_label");
 
1058
  gtk_widget_ref (dpms_off_label);
 
1059
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_off_label", dpms_off_label,
 
1060
                            (GtkDestroyNotify) gtk_widget_unref);
 
1061
  gtk_widget_show (dpms_off_label);
 
1062
  gtk_table_attach (GTK_TABLE (dpms_table), dpms_off_label, 0, 1, 2, 3,
 
1063
                    (GtkAttachOptions) (GTK_FILL),
 
1064
                    (GtkAttachOptions) (0), 0, 0);
 
1065
  gtk_label_set_justify (GTK_LABEL (dpms_off_label), GTK_JUSTIFY_RIGHT);
 
1066
  gtk_misc_set_alignment (GTK_MISC (dpms_off_label), 1, 0.5);
 
1067
  gtk_misc_set_padding (GTK_MISC (dpms_off_label), 10, 0);
 
1068
 
 
1069
  dpms_suspend_label = gtk_label_new (_("Suspend After"));
 
1070
  gtk_widget_set_name (dpms_suspend_label, "dpms_suspend_label");
 
1071
  gtk_widget_ref (dpms_suspend_label);
 
1072
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_suspend_label", dpms_suspend_label,
 
1073
                            (GtkDestroyNotify) gtk_widget_unref);
 
1074
  gtk_widget_show (dpms_suspend_label);
 
1075
  gtk_table_attach (GTK_TABLE (dpms_table), dpms_suspend_label, 0, 1, 1, 2,
 
1076
                    (GtkAttachOptions) (GTK_FILL),
 
1077
                    (GtkAttachOptions) (0), 0, 0);
 
1078
  gtk_label_set_justify (GTK_LABEL (dpms_suspend_label), GTK_JUSTIFY_RIGHT);
 
1079
  gtk_misc_set_alignment (GTK_MISC (dpms_suspend_label), 1, 0.5);
 
1080
  gtk_misc_set_padding (GTK_MISC (dpms_suspend_label), 10, 0);
 
1081
 
 
1082
  dpms_standby_label = gtk_label_new (_("Standby After"));
 
1083
  gtk_widget_set_name (dpms_standby_label, "dpms_standby_label");
 
1084
  gtk_widget_ref (dpms_standby_label);
 
1085
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_standby_label", dpms_standby_label,
 
1086
                            (GtkDestroyNotify) gtk_widget_unref);
 
1087
  gtk_widget_show (dpms_standby_label);
 
1088
  gtk_table_attach (GTK_TABLE (dpms_table), dpms_standby_label, 0, 1, 0, 1,
 
1089
                    (GtkAttachOptions) (GTK_FILL),
 
1090
                    (GtkAttachOptions) (0), 0, 0);
 
1091
  gtk_label_set_justify (GTK_LABEL (dpms_standby_label), GTK_JUSTIFY_RIGHT);
 
1092
  gtk_misc_set_alignment (GTK_MISC (dpms_standby_label), 1, 0.5);
 
1093
  gtk_misc_set_padding (GTK_MISC (dpms_standby_label), 10, 0);
 
1094
 
 
1095
  dpms_suspend_spinbutton_adj = gtk_adjustment_new (0, 0, 1440, 1, 30, 30);
 
1096
  dpms_suspend_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (dpms_suspend_spinbutton_adj), 15, 0);
 
1097
  gtk_widget_set_name (dpms_suspend_spinbutton, "dpms_suspend_spinbutton");
 
1098
  gtk_widget_ref (dpms_suspend_spinbutton);
 
1099
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_suspend_spinbutton", dpms_suspend_spinbutton,
 
1100
                            (GtkDestroyNotify) gtk_widget_unref);
 
1101
  gtk_widget_show (dpms_suspend_spinbutton);
 
1102
  gtk_table_attach (GTK_TABLE (dpms_table), dpms_suspend_spinbutton, 1, 2, 1, 2,
 
1103
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
 
1104
                    (GtkAttachOptions) (0), 0, 0);
 
1105
  gtk_tooltips_set_tip (tooltips, dpms_suspend_spinbutton, _("How long until the monitor goes into power-saving mode."), NULL);
 
1106
  gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (dpms_suspend_spinbutton), TRUE);
 
1107
  gtk_spin_button_set_snap_to_ticks (GTK_SPIN_BUTTON (dpms_suspend_spinbutton), TRUE);
 
1108
 
 
1109
  dpms_off_spinbutton_adj = gtk_adjustment_new (0, 0, 1440, 1, 30, 30);
 
1110
  dpms_off_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (dpms_off_spinbutton_adj), 15, 0);
 
1111
  gtk_widget_set_name (dpms_off_spinbutton, "dpms_off_spinbutton");
 
1112
  gtk_widget_ref (dpms_off_spinbutton);
 
1113
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "dpms_off_spinbutton", dpms_off_spinbutton,
 
1114
                            (GtkDestroyNotify) gtk_widget_unref);
 
1115
  gtk_widget_show (dpms_off_spinbutton);
 
1116
  gtk_table_attach (GTK_TABLE (dpms_table), dpms_off_spinbutton, 1, 2, 2, 3,
 
1117
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
 
1118
                    (GtkAttachOptions) (0), 0, 0);
 
1119
  gtk_tooltips_set_tip (tooltips, dpms_off_spinbutton, _("How long until the monitor powers down."), NULL);
 
1120
  gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (dpms_off_spinbutton), TRUE);
 
1121
  gtk_spin_button_set_snap_to_ticks (GTK_SPIN_BUTTON (dpms_off_spinbutton), TRUE);
 
1122
 
 
1123
  grab_frame = gtk_frame_new (_("Image Manipulation"));
889
1124
  gtk_widget_set_name (grab_frame, "grab_frame");
890
1125
  gtk_widget_ref (grab_frame);
891
1126
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_frame", grab_frame,
892
1127
                            (GtkDestroyNotify) gtk_widget_unref);
893
1128
  gtk_widget_show (grab_frame);
894
 
  gtk_table_attach (GTK_TABLE (options_table_1), grab_frame, 0, 1, 1, 2,
 
1129
  gtk_table_attach (GTK_TABLE (options_table), grab_frame, 0, 1, 0, 1,
895
1130
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
896
1131
                    (GtkAttachOptions) (GTK_FILL), 0, 0);
897
1132
  gtk_container_set_border_width (GTK_CONTAINER (grab_frame), 10);
898
1133
 
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);
 
1134
  grab_hbox = gtk_hbox_new (FALSE, 8);
 
1135
  gtk_widget_set_name (grab_hbox, "grab_hbox");
 
1136
  gtk_widget_ref (grab_hbox);
 
1137
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_hbox", grab_hbox,
 
1138
                            (GtkDestroyNotify) gtk_widget_unref);
 
1139
  gtk_widget_show (grab_hbox);
 
1140
  gtk_container_add (GTK_CONTAINER (grab_frame), grab_hbox);
 
1141
  gtk_container_set_border_width (GTK_CONTAINER (grab_hbox), 8);
 
1142
 
 
1143
  img_logo = create_pixmap (xscreensaver_demo, "screensaver-snap.png");
 
1144
  gtk_widget_set_name (img_logo, "img_logo");
 
1145
  gtk_widget_ref (img_logo);
 
1146
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "img_logo", img_logo,
 
1147
                            (GtkDestroyNotify) gtk_widget_unref);
 
1148
  gtk_widget_show (img_logo);
 
1149
  gtk_box_pack_start (GTK_BOX (grab_hbox), img_logo, FALSE, FALSE, 0);
 
1150
  gtk_misc_set_alignment (GTK_MISC (img_logo), 0.5, 0);
 
1151
 
 
1152
  grab_vbox = gtk_vbox_new (FALSE, 0);
 
1153
  gtk_widget_set_name (grab_vbox, "grab_vbox");
 
1154
  gtk_widget_ref (grab_vbox);
 
1155
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_vbox", grab_vbox,
 
1156
                            (GtkDestroyNotify) gtk_widget_unref);
 
1157
  gtk_widget_show (grab_vbox);
 
1158
  gtk_box_pack_start (GTK_BOX (grab_hbox), grab_vbox, TRUE, TRUE, 0);
 
1159
 
 
1160
  grab_desk_eventbox = gtk_event_box_new ();
 
1161
  gtk_widget_set_name (grab_desk_eventbox, "grab_desk_eventbox");
 
1162
  gtk_widget_ref (grab_desk_eventbox);
 
1163
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_desk_eventbox", grab_desk_eventbox,
 
1164
                            (GtkDestroyNotify) gtk_widget_unref);
 
1165
  gtk_widget_show (grab_desk_eventbox);
 
1166
  gtk_box_pack_start (GTK_BOX (grab_vbox), grab_desk_eventbox, FALSE, FALSE, 0);
 
1167
  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);
 
1168
 
 
1169
  grab_desk_button = gtk_check_button_new_with_label (_("Grab Desktop Images"));
 
1170
  gtk_widget_set_name (grab_desk_button, "grab_desk_button");
 
1171
  gtk_widget_ref (grab_desk_button);
 
1172
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_desk_button", grab_desk_button,
 
1173
                            (GtkDestroyNotify) gtk_widget_unref);
 
1174
  gtk_widget_show (grab_desk_button);
 
1175
  gtk_container_add (GTK_CONTAINER (grab_desk_eventbox), grab_desk_button);
 
1176
 
 
1177
  grab_video_eventbox = gtk_event_box_new ();
 
1178
  gtk_widget_set_name (grab_video_eventbox, "grab_video_eventbox");
 
1179
  gtk_widget_ref (grab_video_eventbox);
 
1180
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_video_eventbox", grab_video_eventbox,
 
1181
                            (GtkDestroyNotify) gtk_widget_unref);
 
1182
  gtk_widget_show (grab_video_eventbox);
 
1183
  gtk_box_pack_start (GTK_BOX (grab_vbox), grab_video_eventbox, FALSE, FALSE, 0);
 
1184
  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);
 
1185
 
 
1186
  grab_video_button = gtk_check_button_new_with_label (_("Grab Video Frames"));
 
1187
  gtk_widget_set_name (grab_video_button, "grab_video_button");
 
1188
  gtk_widget_ref (grab_video_button);
 
1189
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_video_button", grab_video_button,
 
1190
                            (GtkDestroyNotify) gtk_widget_unref);
 
1191
  gtk_widget_show (grab_video_button);
 
1192
  gtk_container_add (GTK_CONTAINER (grab_video_eventbox), grab_video_button);
907
1193
 
908
1194
  grab_image_eventbox = gtk_event_box_new ();
909
1195
  gtk_widget_set_name (grab_image_eventbox, "grab_image_eventbox");
911
1197
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_image_eventbox", grab_image_eventbox,
912
1198
                            (GtkDestroyNotify) gtk_widget_unref);
913
1199
  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);
 
1200
  gtk_box_pack_start (GTK_BOX (grab_vbox), grab_image_eventbox, FALSE, FALSE, 0);
 
1201
  gtk_tooltips_set_tip (tooltips, grab_image_eventbox, _("Whether the image-manipulating modes should operate on random images loaded from disk."), NULL);
918
1202
 
919
 
  grab_image_button = gtk_check_button_new_with_label ("Choose Random Image:");
 
1203
  grab_image_button = gtk_check_button_new_with_label (_("Choose Random Image:"));
920
1204
  gtk_widget_set_name (grab_image_button, "grab_image_button");
921
1205
  gtk_widget_ref (grab_image_button);
922
1206
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_image_button", grab_image_button,
924
1208
  gtk_widget_show (grab_image_button);
925
1209
  gtk_container_add (GTK_CONTAINER (grab_image_eventbox), grab_image_button);
926
1210
 
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);
936
 
 
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);
947
 
 
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);
955
 
 
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);
966
 
 
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);
 
1211
  image_hbox = gtk_hbox_new (FALSE, 0);
 
1212
  gtk_widget_set_name (image_hbox, "image_hbox");
 
1213
  gtk_widget_ref (image_hbox);
 
1214
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "image_hbox", image_hbox,
 
1215
                            (GtkDestroyNotify) gtk_widget_unref);
 
1216
  gtk_widget_show (image_hbox);
 
1217
  gtk_box_pack_start (GTK_BOX (grab_vbox), image_hbox, FALSE, FALSE, 0);
974
1218
 
975
1219
  grab_dummy = gtk_label_new ("");
976
1220
  gtk_widget_set_name (grab_dummy, "grab_dummy");
978
1222
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "grab_dummy", grab_dummy,
979
1223
                            (GtkDestroyNotify) gtk_widget_unref);
980
1224
  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);
 
1225
  gtk_box_pack_start (GTK_BOX (image_hbox), grab_dummy, FALSE, FALSE, 0);
984
1226
  gtk_label_set_justify (GTK_LABEL (grab_dummy), GTK_JUSTIFY_LEFT);
985
1227
  gtk_misc_set_padding (GTK_MISC (grab_dummy), 8, 0);
986
1228
 
990
1232
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "image_text", image_text,
991
1233
                            (GtkDestroyNotify) gtk_widget_unref);
992
1234
  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);
997
 
 
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);
1008
 
 
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);
1019
 
 
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);
1030
 
 
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);
1041
 
 
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);
1052
 
 
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);
1064
 
 
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);
1076
 
 
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);
1088
 
 
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);
1099
 
 
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);
1110
 
 
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);
1118
 
 
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);
1128
 
 
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);
1139
 
 
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);
1150
 
 
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);
1161
 
 
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);
1170
 
 
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);
1181
 
 
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);
1189
 
 
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);
1200
 
 
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);
1208
 
 
1209
 
  options_tab = gtk_label_new ("Screensaver Options");
 
1235
  gtk_box_pack_start (GTK_BOX (image_hbox), image_text, TRUE, TRUE, 0);
 
1236
  gtk_tooltips_set_tip (tooltips, image_text, _("The directory from which images will be randomly chosen."), NULL);
 
1237
 
 
1238
  image_browse_button = gtk_button_new_with_label (_("Browse"));
 
1239
  gtk_widget_set_name (image_browse_button, "image_browse_button");
 
1240
  gtk_widget_ref (image_browse_button);
 
1241
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "image_browse_button", image_browse_button,
 
1242
                            (GtkDestroyNotify) gtk_widget_unref);
 
1243
  gtk_widget_show (image_browse_button);
 
1244
  gtk_box_pack_start (GTK_BOX (image_hbox), image_browse_button, FALSE, FALSE, 4);
 
1245
 
 
1246
  options_tab = gtk_label_new (_("Advanced"));
1210
1247
  gtk_widget_set_name (options_tab, "options_tab");
1211
1248
  gtk_widget_ref (options_tab);
1212
1249
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_demo), "options_tab", options_tab,
1229
1266
  gtk_signal_connect (GTK_OBJECT (exit_menu), "activate",
1230
1267
                      GTK_SIGNAL_FUNC (exit_menu_cb),
1231
1268
                      NULL);
1232
 
  gtk_signal_connect (GTK_OBJECT (cut_menu), "activate",
1233
 
                      GTK_SIGNAL_FUNC (cut_menu_cb),
1234
 
                      NULL);
1235
 
  gtk_signal_connect (GTK_OBJECT (copy_menu), "activate",
1236
 
                      GTK_SIGNAL_FUNC (copy_menu_cb),
1237
 
                      NULL);
1238
 
  gtk_signal_connect (GTK_OBJECT (paste_menu), "activate",
1239
 
                      GTK_SIGNAL_FUNC (paste_menu_cb),
1240
 
                      NULL);
1241
1269
  gtk_signal_connect (GTK_OBJECT (about_menu), "activate",
1242
1270
                      GTK_SIGNAL_FUNC (about_menu_cb),
1243
1271
                      NULL);
1245
1273
                      GTK_SIGNAL_FUNC (doc_menu_cb),
1246
1274
                      NULL);
1247
1275
  gtk_signal_connect (GTK_OBJECT (notebook), "switch_page",
1248
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1276
                      GTK_SIGNAL_FUNC (switch_page_cb),
 
1277
                      NULL);
 
1278
  gtk_signal_connect (GTK_OBJECT (lock_button), "toggled",
 
1279
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1280
                      NULL);
 
1281
  gtk_signal_connect (GTK_OBJECT (timeout_spinbutton), "activate",
 
1282
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1283
                      NULL);
 
1284
  gtk_signal_connect (GTK_OBJECT (timeout_spinbutton), "focus_out_event",
 
1285
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1286
                      NULL);
 
1287
  gtk_signal_connect (GTK_OBJECT (timeout_spinbutton), "changed",
 
1288
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1289
                      NULL);
 
1290
  gtk_signal_connect (GTK_OBJECT (lock_spinbutton), "activate",
 
1291
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1292
                      NULL);
 
1293
  gtk_signal_connect (GTK_OBJECT (lock_spinbutton), "focus_out_event",
 
1294
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1295
                      NULL);
 
1296
  gtk_signal_connect (GTK_OBJECT (lock_spinbutton), "changed",
 
1297
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1298
                      NULL);
 
1299
  gtk_signal_connect (GTK_OBJECT (cycle_spinbutton), "activate",
 
1300
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1301
                      NULL);
 
1302
  gtk_signal_connect (GTK_OBJECT (cycle_spinbutton), "focus_out_event",
 
1303
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1304
                      NULL);
 
1305
  gtk_signal_connect (GTK_OBJECT (cycle_spinbutton), "changed",
 
1306
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1307
                      NULL);
 
1308
  gtk_signal_connect (GTK_OBJECT (demo), "clicked",
 
1309
                      GTK_SIGNAL_FUNC (run_this_cb),
 
1310
                      NULL);
 
1311
  gtk_signal_connect (GTK_OBJECT (settings), "clicked",
 
1312
                      GTK_SIGNAL_FUNC (settings_cb),
1249
1313
                      NULL);
1250
1314
  gtk_signal_connect (GTK_OBJECT (next), "clicked",
1251
1315
                      GTK_SIGNAL_FUNC (run_next_cb),
1253
1317
  gtk_signal_connect (GTK_OBJECT (prev), "clicked",
1254
1318
                      GTK_SIGNAL_FUNC (run_prev_cb),
1255
1319
                      NULL);
1256
 
  gtk_signal_connect (GTK_OBJECT (enabled), "toggled",
1257
 
                      GTK_SIGNAL_FUNC (enabled_cb),
1258
 
                      NULL);
1259
 
  gtk_signal_connect (GTK_OBJECT (demo), "clicked",
1260
 
                      GTK_SIGNAL_FUNC (run_this_cb),
1261
 
                      NULL);
1262
 
  gtk_signal_connect (GTK_OBJECT (manual), "clicked",
1263
 
                      GTK_SIGNAL_FUNC (manual_cb),
1264
 
                      NULL);
1265
 
  gtk_signal_connect (GTK_OBJECT (dpms_off_text), "activate",
1266
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1267
 
                      NULL);
1268
 
  gtk_signal_connect (GTK_OBJECT (dpms_off_text), "focus_out_event",
1269
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1270
 
                      NULL);
1271
 
  gtk_signal_connect (GTK_OBJECT (dpms_suspend_text), "activate",
1272
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1273
 
                      NULL);
1274
 
  gtk_signal_connect (GTK_OBJECT (dpms_suspend_text), "focus_out_event",
1275
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1276
 
                      NULL);
1277
 
  gtk_signal_connect (GTK_OBJECT (dpms_standby_text), "activate",
1278
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1279
 
                      NULL);
1280
 
  gtk_signal_connect (GTK_OBJECT (dpms_standby_text), "focus_out_event",
1281
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1282
 
                      NULL);
1283
 
  gtk_signal_connect (GTK_OBJECT (dpms_button), "toggled",
1284
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1285
 
                      NULL);
1286
 
  gtk_signal_connect (GTK_OBJECT (fade_text), "activate",
1287
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1288
 
                      NULL);
1289
 
  gtk_signal_connect (GTK_OBJECT (fade_text), "focus_out_event",
 
1320
  gtk_signal_connect (GTK_OBJECT (verbose_button), "toggled",
 
1321
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1322
                      NULL);
 
1323
  gtk_signal_connect (GTK_OBJECT (capture_button), "toggled",
 
1324
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1325
                      NULL);
 
1326
  gtk_signal_connect (GTK_OBJECT (splash_button), "toggled",
1290
1327
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1291
1328
                      NULL);
1292
1329
  gtk_signal_connect (GTK_OBJECT (install_button), "toggled",
1298
1335
  gtk_signal_connect (GTK_OBJECT (unfade_button), "toggled",
1299
1336
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1300
1337
                      NULL);
 
1338
  gtk_signal_connect (GTK_OBJECT (fade_spinbutton), "activate",
 
1339
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1340
                      NULL);
 
1341
  gtk_signal_connect (GTK_OBJECT (fade_spinbutton), "focus_out_event",
 
1342
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1343
                      NULL);
 
1344
  gtk_signal_connect (GTK_OBJECT (fade_spinbutton), "changed",
 
1345
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1346
                      NULL);
 
1347
  gtk_signal_connect (GTK_OBJECT (dpms_button), "toggled",
 
1348
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1349
                      NULL);
 
1350
  gtk_signal_connect (GTK_OBJECT (dpms_standby_spinbutton), "activate",
 
1351
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1352
                      NULL);
 
1353
  gtk_signal_connect (GTK_OBJECT (dpms_standby_spinbutton), "focus_out_event",
 
1354
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1355
                      NULL);
 
1356
  gtk_signal_connect (GTK_OBJECT (dpms_standby_spinbutton), "changed",
 
1357
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1358
                      NULL);
 
1359
  gtk_signal_connect (GTK_OBJECT (dpms_suspend_spinbutton), "activate",
 
1360
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1361
                      NULL);
 
1362
  gtk_signal_connect (GTK_OBJECT (dpms_suspend_spinbutton), "focus_out_event",
 
1363
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1364
                      NULL);
 
1365
  gtk_signal_connect (GTK_OBJECT (dpms_suspend_spinbutton), "changed",
 
1366
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1367
                      NULL);
 
1368
  gtk_signal_connect (GTK_OBJECT (dpms_off_spinbutton), "activate",
 
1369
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1370
                      NULL);
 
1371
  gtk_signal_connect (GTK_OBJECT (dpms_off_spinbutton), "focus_out_event",
 
1372
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1373
                      NULL);
 
1374
  gtk_signal_connect (GTK_OBJECT (dpms_off_spinbutton), "changed",
 
1375
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1376
                      NULL);
 
1377
  gtk_signal_connect (GTK_OBJECT (grab_desk_button), "toggled",
 
1378
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1379
                      NULL);
 
1380
  gtk_signal_connect (GTK_OBJECT (grab_video_button), "toggled",
 
1381
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1382
                      NULL);
1301
1383
  gtk_signal_connect (GTK_OBJECT (grab_image_button), "toggled",
1302
1384
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1303
1385
                      NULL);
 
1386
  gtk_signal_connect (GTK_OBJECT (image_text), "activate",
 
1387
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1388
                      NULL);
 
1389
  gtk_signal_connect (GTK_OBJECT (image_text), "focus_out_event",
 
1390
                      GTK_SIGNAL_FUNC (pref_changed_cb),
 
1391
                      NULL);
1304
1392
  gtk_signal_connect (GTK_OBJECT (image_browse_button), "clicked",
1305
1393
                      GTK_SIGNAL_FUNC (browse_image_dir_cb),
1306
1394
                      NULL);
1307
 
  gtk_signal_connect (GTK_OBJECT (grab_video_button), "toggled",
1308
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1309
 
                      NULL);
1310
 
  gtk_signal_connect (GTK_OBJECT (grab_desk_button), "toggled",
1311
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1312
 
                      NULL);
1313
 
  gtk_signal_connect (GTK_OBJECT (image_text), "activate",
1314
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1315
 
                      NULL);
1316
 
  gtk_signal_connect (GTK_OBJECT (image_text), "focus_out_event",
1317
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1318
 
                      NULL);
1319
 
  gtk_signal_connect (GTK_OBJECT (lock_text), "activate",
1320
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1321
 
                      NULL);
1322
 
  gtk_signal_connect (GTK_OBJECT (lock_text), "focus_out_event",
1323
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1324
 
                      NULL);
1325
 
  gtk_signal_connect (GTK_OBJECT (cycle_text), "activate",
1326
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1327
 
                      NULL);
1328
 
  gtk_signal_connect (GTK_OBJECT (cycle_text), "focus_out_event",
1329
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1330
 
                      NULL);
1331
 
  gtk_signal_connect (GTK_OBJECT (timeout_text), "activate",
1332
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1333
 
                      NULL);
1334
 
  gtk_signal_connect (GTK_OBJECT (timeout_text), "focus_out_event",
1335
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1336
 
                      NULL);
1337
 
  gtk_signal_connect (GTK_OBJECT (lock_button), "toggled",
1338
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1339
 
                      NULL);
1340
 
  gtk_signal_connect (GTK_OBJECT (splash_button), "toggled",
1341
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1342
 
                      NULL);
1343
 
  gtk_signal_connect (GTK_OBJECT (capture_button), "toggled",
1344
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1345
 
                      NULL);
1346
 
  gtk_signal_connect (GTK_OBJECT (verbose_button), "toggled",
1347
 
                      GTK_SIGNAL_FUNC (pref_changed_cb),
1348
 
                      NULL);
1349
1395
 
1350
1396
  gtk_widget_grab_default (next);
1351
1397
  gtk_object_set_data (GTK_OBJECT (xscreensaver_demo), "tooltips", tooltips);
1355
1401
  return xscreensaver_demo;
1356
1402
}
1357
1403
 
 
1404
GtkWidget*
 
1405
create_xscreensaver_settings_dialog (void)
 
1406
{
 
1407
  GtkWidget *xscreensaver_settings_dialog;
 
1408
  GtkWidget *dialog_vbox;
 
1409
  GtkWidget *dialog_top_table;
 
1410
  GtkWidget *opt_frame;
 
1411
  GtkWidget *opt_notebook;
 
1412
  GtkWidget *settings_vbox;
 
1413
  GtkWidget *std_label;
 
1414
  GtkWidget *opt_table;
 
1415
  GtkWidget *cmd_logo;
 
1416
  GtkWidget *visual_hbox;
 
1417
  GtkWidget *visual;
 
1418
  GtkWidget *visual_combo;
 
1419
  GList *visual_combo_items = NULL;
 
1420
  GtkWidget *combo_entry1;
 
1421
  GtkWidget *cmd_label;
 
1422
  GtkWidget *cmd_text;
 
1423
  GtkWidget *adv_label;
 
1424
  GtkWidget *doc_frame;
 
1425
  GtkWidget *doc_vbox;
 
1426
  GtkWidget *doc;
 
1427
  GtkWidget *doc_hbuttonbox;
 
1428
  GtkWidget *manual;
 
1429
  GtkWidget *dialog_action_area;
 
1430
  GtkWidget *actionarea_hbox;
 
1431
  GtkWidget *dialog_hbuttonbox;
 
1432
  GtkWidget *adv_button;
 
1433
  GtkWidget *std_button;
 
1434
  GtkWidget *ok_cancel_hbuttonbox;
 
1435
  GtkWidget *ok_button;
 
1436
  GtkWidget *cancel_button;
 
1437
  GtkTooltips *tooltips;
 
1438
 
 
1439
  tooltips = gtk_tooltips_new ();
 
1440
 
 
1441
  xscreensaver_settings_dialog = gtk_dialog_new ();
 
1442
  gtk_widget_set_name (xscreensaver_settings_dialog, "xscreensaver_settings_dialog");
 
1443
  gtk_object_set_data (GTK_OBJECT (xscreensaver_settings_dialog), "xscreensaver_settings_dialog", xscreensaver_settings_dialog);
 
1444
  gtk_window_set_title (GTK_WINDOW (xscreensaver_settings_dialog), _("XScreenSaver: Mode-Specific Settings"));
 
1445
  GTK_WINDOW (xscreensaver_settings_dialog)->type = GTK_WINDOW_DIALOG;
 
1446
  gtk_window_set_modal (GTK_WINDOW (xscreensaver_settings_dialog), TRUE);
 
1447
  gtk_window_set_policy (GTK_WINDOW (xscreensaver_settings_dialog), TRUE, TRUE, FALSE);
 
1448
  gtk_window_set_wmclass (GTK_WINDOW (xscreensaver_settings_dialog), "settings", "XScreenSaver");
 
1449
 
 
1450
  dialog_vbox = GTK_DIALOG (xscreensaver_settings_dialog)->vbox;
 
1451
  gtk_widget_set_name (dialog_vbox, "dialog_vbox");
 
1452
  gtk_object_set_data (GTK_OBJECT (xscreensaver_settings_dialog), "dialog_vbox", dialog_vbox);
 
1453
  gtk_widget_show (dialog_vbox);
 
1454
 
 
1455
  dialog_top_table = gtk_table_new (1, 2, FALSE);
 
1456
  gtk_widget_set_name (dialog_top_table, "dialog_top_table");
 
1457
  gtk_widget_ref (dialog_top_table);
 
1458
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "dialog_top_table", dialog_top_table,
 
1459
                            (GtkDestroyNotify) gtk_widget_unref);
 
1460
  gtk_widget_show (dialog_top_table);
 
1461
  gtk_box_pack_start (GTK_BOX (dialog_vbox), dialog_top_table, TRUE, TRUE, 0);
 
1462
  gtk_container_set_border_width (GTK_CONTAINER (dialog_top_table), 8);
 
1463
  gtk_table_set_row_spacings (GTK_TABLE (dialog_top_table), 8);
 
1464
  gtk_table_set_col_spacings (GTK_TABLE (dialog_top_table), 8);
 
1465
 
 
1466
  opt_frame = gtk_frame_new (_("Settings"));
 
1467
  gtk_widget_set_name (opt_frame, "opt_frame");
 
1468
  gtk_widget_ref (opt_frame);
 
1469
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "opt_frame", opt_frame,
 
1470
                            (GtkDestroyNotify) gtk_widget_unref);
 
1471
  gtk_widget_show (opt_frame);
 
1472
  gtk_table_attach (GTK_TABLE (dialog_top_table), opt_frame, 0, 1, 0, 1,
 
1473
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
 
1474
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 4, 8);
 
1475
 
 
1476
  opt_notebook = gtk_notebook_new ();
 
1477
  gtk_widget_set_name (opt_notebook, "opt_notebook");
 
1478
  gtk_widget_ref (opt_notebook);
 
1479
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "opt_notebook", opt_notebook,
 
1480
                            (GtkDestroyNotify) gtk_widget_unref);
 
1481
  gtk_widget_show (opt_notebook);
 
1482
  gtk_container_add (GTK_CONTAINER (opt_frame), opt_notebook);
 
1483
  gtk_container_set_border_width (GTK_CONTAINER (opt_notebook), 12);
 
1484
  gtk_notebook_set_show_border (GTK_NOTEBOOK (opt_notebook), FALSE);
 
1485
  gtk_notebook_set_tab_pos (GTK_NOTEBOOK (opt_notebook), GTK_POS_BOTTOM);
 
1486
 
 
1487
  settings_vbox = gtk_vbox_new (FALSE, 0);
 
1488
  gtk_widget_set_name (settings_vbox, "settings_vbox");
 
1489
  gtk_widget_ref (settings_vbox);
 
1490
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "settings_vbox", settings_vbox,
 
1491
                            (GtkDestroyNotify) gtk_widget_unref);
 
1492
  gtk_widget_show (settings_vbox);
 
1493
  gtk_container_add (GTK_CONTAINER (opt_notebook), settings_vbox);
 
1494
 
 
1495
  std_label = gtk_label_new (_("Standard"));
 
1496
  gtk_widget_set_name (std_label, "std_label");
 
1497
  gtk_widget_ref (std_label);
 
1498
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "std_label", std_label,
 
1499
                            (GtkDestroyNotify) gtk_widget_unref);
 
1500
  gtk_widget_show (std_label);
 
1501
  gtk_notebook_set_tab_label (GTK_NOTEBOOK (opt_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (opt_notebook), 0), std_label);
 
1502
 
 
1503
  opt_table = gtk_table_new (4, 2, FALSE);
 
1504
  gtk_widget_set_name (opt_table, "opt_table");
 
1505
  gtk_widget_ref (opt_table);
 
1506
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "opt_table", opt_table,
 
1507
                            (GtkDestroyNotify) gtk_widget_unref);
 
1508
  gtk_widget_show (opt_table);
 
1509
  gtk_container_add (GTK_CONTAINER (opt_notebook), opt_table);
 
1510
 
 
1511
  cmd_logo = create_pixmap (xscreensaver_settings_dialog, "screensaver-cmndln.png");
 
1512
  gtk_widget_set_name (cmd_logo, "cmd_logo");
 
1513
  gtk_widget_ref (cmd_logo);
 
1514
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "cmd_logo", cmd_logo,
 
1515
                            (GtkDestroyNotify) gtk_widget_unref);
 
1516
  gtk_widget_show (cmd_logo);
 
1517
  gtk_table_attach (GTK_TABLE (opt_table), cmd_logo, 0, 1, 0, 1,
 
1518
                    (GtkAttachOptions) (GTK_FILL),
 
1519
                    (GtkAttachOptions) (GTK_FILL), 0, 0);
 
1520
  gtk_misc_set_padding (GTK_MISC (cmd_logo), 4, 8);
 
1521
 
 
1522
  visual_hbox = gtk_hbox_new (FALSE, 0);
 
1523
  gtk_widget_set_name (visual_hbox, "visual_hbox");
 
1524
  gtk_widget_ref (visual_hbox);
 
1525
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "visual_hbox", visual_hbox,
 
1526
                            (GtkDestroyNotify) gtk_widget_unref);
 
1527
  gtk_widget_show (visual_hbox);
 
1528
  gtk_table_attach (GTK_TABLE (opt_table), visual_hbox, 1, 2, 3, 4,
 
1529
                    (GtkAttachOptions) (GTK_FILL),
 
1530
                    (GtkAttachOptions) (GTK_FILL), 0, 0);
 
1531
 
 
1532
  visual = gtk_label_new (_("Visual:"));
 
1533
  gtk_widget_set_name (visual, "visual");
 
1534
  gtk_widget_ref (visual);
 
1535
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "visual", visual,
 
1536
                            (GtkDestroyNotify) gtk_widget_unref);
 
1537
  gtk_widget_show (visual);
 
1538
  gtk_box_pack_start (GTK_BOX (visual_hbox), visual, FALSE, FALSE, 0);
 
1539
  gtk_label_set_justify (GTK_LABEL (visual), GTK_JUSTIFY_RIGHT);
 
1540
  gtk_misc_set_alignment (GTK_MISC (visual), 1, 0.5);
 
1541
  gtk_misc_set_padding (GTK_MISC (visual), 4, 0);
 
1542
 
 
1543
  visual_combo = gtk_combo_new ();
 
1544
  gtk_widget_set_name (visual_combo, "visual_combo");
 
1545
  gtk_widget_ref (visual_combo);
 
1546
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "visual_combo", visual_combo,
 
1547
                            (GtkDestroyNotify) gtk_widget_unref);
 
1548
  gtk_widget_show (visual_combo);
 
1549
  gtk_box_pack_start (GTK_BOX (visual_hbox), visual_combo, FALSE, FALSE, 0);
 
1550
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("Any"));
 
1551
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("Best"));
 
1552
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("Default"));
 
1553
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("Default-N"));
 
1554
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("GL"));
 
1555
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("TrueColor"));
 
1556
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("PseudoColor"));
 
1557
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("StaticGray"));
 
1558
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("GrayScale"));
 
1559
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("DirectColor"));
 
1560
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("Color"));
 
1561
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("Gray"));
 
1562
  visual_combo_items = g_list_append (visual_combo_items, (gpointer) _("Mono"));
 
1563
  gtk_combo_set_popdown_strings (GTK_COMBO (visual_combo), visual_combo_items);
 
1564
  g_list_free (visual_combo_items);
 
1565
 
 
1566
  combo_entry1 = GTK_COMBO (visual_combo)->entry;
 
1567
  gtk_widget_set_name (combo_entry1, "combo_entry1");
 
1568
  gtk_widget_ref (combo_entry1);
 
1569
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "combo_entry1", combo_entry1,
 
1570
                            (GtkDestroyNotify) gtk_widget_unref);
 
1571
  gtk_widget_show (combo_entry1);
 
1572
  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);
 
1573
  gtk_entry_set_text (GTK_ENTRY (combo_entry1), _("Any"));
 
1574
 
 
1575
  cmd_label = gtk_label_new (_("Command Line:"));
 
1576
  gtk_widget_set_name (cmd_label, "cmd_label");
 
1577
  gtk_widget_ref (cmd_label);
 
1578
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "cmd_label", cmd_label,
 
1579
                            (GtkDestroyNotify) gtk_widget_unref);
 
1580
  gtk_widget_show (cmd_label);
 
1581
  gtk_table_attach (GTK_TABLE (opt_table), cmd_label, 1, 2, 1, 2,
 
1582
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
 
1583
                    (GtkAttachOptions) (0), 0, 0);
 
1584
  gtk_label_set_justify (GTK_LABEL (cmd_label), GTK_JUSTIFY_LEFT);
 
1585
  gtk_misc_set_alignment (GTK_MISC (cmd_label), 0, 1);
 
1586
  gtk_misc_set_padding (GTK_MISC (cmd_label), 0, 2);
 
1587
 
 
1588
  cmd_text = gtk_entry_new ();
 
1589
  gtk_widget_set_name (cmd_text, "cmd_text");
 
1590
  gtk_widget_ref (cmd_text);
 
1591
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "cmd_text", cmd_text,
 
1592
                            (GtkDestroyNotify) gtk_widget_unref);
 
1593
  gtk_widget_show (cmd_text);
 
1594
  gtk_table_attach (GTK_TABLE (opt_table), cmd_text, 1, 2, 2, 3,
 
1595
                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
 
1596
                    (GtkAttachOptions) (0), 0, 0);
 
1597
  gtk_widget_set_usize (cmd_text, 80, -2);
 
1598
 
 
1599
  adv_label = gtk_label_new (_("Advanced"));
 
1600
  gtk_widget_set_name (adv_label, "adv_label");
 
1601
  gtk_widget_ref (adv_label);
 
1602
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "adv_label", adv_label,
 
1603
                            (GtkDestroyNotify) gtk_widget_unref);
 
1604
  gtk_widget_show (adv_label);
 
1605
  gtk_notebook_set_tab_label (GTK_NOTEBOOK (opt_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (opt_notebook), 1), adv_label);
 
1606
 
 
1607
  doc_frame = gtk_frame_new (_("Description"));
 
1608
  gtk_widget_set_name (doc_frame, "doc_frame");
 
1609
  gtk_widget_ref (doc_frame);
 
1610
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "doc_frame", doc_frame,
 
1611
                            (GtkDestroyNotify) gtk_widget_unref);
 
1612
  gtk_widget_show (doc_frame);
 
1613
  gtk_table_attach (GTK_TABLE (dialog_top_table), doc_frame, 1, 2, 0, 1,
 
1614
                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
 
1615
                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 4, 8);
 
1616
 
 
1617
  doc_vbox = gtk_vbox_new (FALSE, 0);
 
1618
  gtk_widget_set_name (doc_vbox, "doc_vbox");
 
1619
  gtk_widget_ref (doc_vbox);
 
1620
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "doc_vbox", doc_vbox,
 
1621
                            (GtkDestroyNotify) gtk_widget_unref);
 
1622
  gtk_widget_show (doc_vbox);
 
1623
  gtk_container_add (GTK_CONTAINER (doc_frame), doc_vbox);
 
1624
 
 
1625
  doc = gtk_label_new ("");
 
1626
  gtk_widget_set_name (doc, "doc");
 
1627
  gtk_widget_ref (doc);
 
1628
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "doc", doc,
 
1629
                            (GtkDestroyNotify) gtk_widget_unref);
 
1630
  gtk_widget_show (doc);
 
1631
  gtk_box_pack_start (GTK_BOX (doc_vbox), doc, TRUE, TRUE, 0);
 
1632
  gtk_label_set_justify (GTK_LABEL (doc), GTK_JUSTIFY_LEFT);
 
1633
  gtk_label_set_line_wrap (GTK_LABEL (doc), TRUE);
 
1634
  gtk_misc_set_alignment (GTK_MISC (doc), 0, 0);
 
1635
  gtk_misc_set_padding (GTK_MISC (doc), 10, 10);
 
1636
 
 
1637
  doc_hbuttonbox = gtk_hbutton_box_new ();
 
1638
  gtk_widget_set_name (doc_hbuttonbox, "doc_hbuttonbox");
 
1639
  gtk_widget_ref (doc_hbuttonbox);
 
1640
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "doc_hbuttonbox", doc_hbuttonbox,
 
1641
                            (GtkDestroyNotify) gtk_widget_unref);
 
1642
  gtk_widget_show (doc_hbuttonbox);
 
1643
  gtk_box_pack_end (GTK_BOX (doc_vbox), doc_hbuttonbox, FALSE, FALSE, 0);
 
1644
  gtk_container_set_border_width (GTK_CONTAINER (doc_hbuttonbox), 4);
 
1645
  gtk_button_box_set_layout (GTK_BUTTON_BOX (doc_hbuttonbox), GTK_BUTTONBOX_END);
 
1646
 
 
1647
  manual = gtk_button_new_with_label (_("Documentation..."));
 
1648
  gtk_widget_set_name (manual, "manual");
 
1649
  gtk_widget_ref (manual);
 
1650
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "manual", manual,
 
1651
                            (GtkDestroyNotify) gtk_widget_unref);
 
1652
  gtk_widget_show (manual);
 
1653
  gtk_container_add (GTK_CONTAINER (doc_hbuttonbox), manual);
 
1654
  STFU GTK_WIDGET_SET_FLAGS (manual, GTK_CAN_DEFAULT);
 
1655
  gtk_tooltips_set_tip (tooltips, manual, _("Click here to read the manual for this display mode, if it has one."), NULL);
 
1656
 
 
1657
  dialog_action_area = GTK_DIALOG (xscreensaver_settings_dialog)->action_area;
 
1658
  gtk_widget_set_name (dialog_action_area, "dialog_action_area");
 
1659
  gtk_object_set_data (GTK_OBJECT (xscreensaver_settings_dialog), "dialog_action_area", dialog_action_area);
 
1660
  gtk_widget_show (dialog_action_area);
 
1661
  gtk_container_set_border_width (GTK_CONTAINER (dialog_action_area), 10);
 
1662
 
 
1663
  actionarea_hbox = gtk_hbox_new (FALSE, 0);
 
1664
  gtk_widget_set_name (actionarea_hbox, "actionarea_hbox");
 
1665
  gtk_widget_ref (actionarea_hbox);
 
1666
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "actionarea_hbox", actionarea_hbox,
 
1667
                            (GtkDestroyNotify) gtk_widget_unref);
 
1668
  gtk_widget_show (actionarea_hbox);
 
1669
  gtk_box_pack_start (GTK_BOX (dialog_action_area), actionarea_hbox, TRUE, TRUE, 0);
 
1670
 
 
1671
  dialog_hbuttonbox = gtk_hbutton_box_new ();
 
1672
  gtk_widget_set_name (dialog_hbuttonbox, "dialog_hbuttonbox");
 
1673
  gtk_widget_ref (dialog_hbuttonbox);
 
1674
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "dialog_hbuttonbox", dialog_hbuttonbox,
 
1675
                            (GtkDestroyNotify) gtk_widget_unref);
 
1676
  gtk_widget_show (dialog_hbuttonbox);
 
1677
  gtk_box_pack_start (GTK_BOX (actionarea_hbox), dialog_hbuttonbox, TRUE, TRUE, 0);
 
1678
  gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_hbuttonbox), GTK_BUTTONBOX_SPREAD);
 
1679
 
 
1680
  adv_button = gtk_button_new_with_label (_("Advanced >>"));
 
1681
  gtk_widget_set_name (adv_button, "adv_button");
 
1682
  gtk_widget_ref (adv_button);
 
1683
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "adv_button", adv_button,
 
1684
                            (GtkDestroyNotify) gtk_widget_unref);
 
1685
  gtk_widget_show (adv_button);
 
1686
  gtk_container_add (GTK_CONTAINER (dialog_hbuttonbox), adv_button);
 
1687
  STFU GTK_WIDGET_SET_FLAGS (adv_button, GTK_CAN_DEFAULT);
 
1688
  gtk_tooltips_set_tip (tooltips, adv_button, _("Edit the command line directly."), NULL);
 
1689
 
 
1690
  std_button = gtk_button_new_with_label (_("Standard <<"));
 
1691
  gtk_widget_set_name (std_button, "std_button");
 
1692
  gtk_widget_ref (std_button);
 
1693
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "std_button", std_button,
 
1694
                            (GtkDestroyNotify) gtk_widget_unref);
 
1695
  gtk_widget_show (std_button);
 
1696
  gtk_container_add (GTK_CONTAINER (dialog_hbuttonbox), std_button);
 
1697
  STFU GTK_WIDGET_SET_FLAGS (std_button, GTK_CAN_DEFAULT);
 
1698
  gtk_tooltips_set_tip (tooltips, std_button, _("Back to the graphical configuration options."), NULL);
 
1699
 
 
1700
  ok_cancel_hbuttonbox = gtk_hbutton_box_new ();
 
1701
  gtk_widget_set_name (ok_cancel_hbuttonbox, "ok_cancel_hbuttonbox");
 
1702
  gtk_widget_ref (ok_cancel_hbuttonbox);
 
1703
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "ok_cancel_hbuttonbox", ok_cancel_hbuttonbox,
 
1704
                            (GtkDestroyNotify) gtk_widget_unref);
 
1705
  gtk_widget_show (ok_cancel_hbuttonbox);
 
1706
  gtk_box_pack_start (GTK_BOX (actionarea_hbox), ok_cancel_hbuttonbox, TRUE, TRUE, 0);
 
1707
  gtk_button_box_set_layout (GTK_BUTTON_BOX (ok_cancel_hbuttonbox), GTK_BUTTONBOX_END);
 
1708
 
 
1709
  ok_button = gtk_button_new_with_label (_("OK"));
 
1710
  gtk_widget_set_name (ok_button, "ok_button");
 
1711
  gtk_widget_ref (ok_button);
 
1712
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "ok_button", ok_button,
 
1713
                            (GtkDestroyNotify) gtk_widget_unref);
 
1714
  gtk_widget_show (ok_button);
 
1715
  gtk_container_add (GTK_CONTAINER (ok_cancel_hbuttonbox), ok_button);
 
1716
  STFU GTK_WIDGET_SET_FLAGS (ok_button, GTK_CAN_DEFAULT);
 
1717
 
 
1718
  cancel_button = gtk_button_new_with_label (_("Cancel"));
 
1719
  gtk_widget_set_name (cancel_button, "cancel_button");
 
1720
  gtk_widget_ref (cancel_button);
 
1721
  gtk_object_set_data_full (GTK_OBJECT (xscreensaver_settings_dialog), "cancel_button", cancel_button,
 
1722
                            (GtkDestroyNotify) gtk_widget_unref);
 
1723
  gtk_widget_show (cancel_button);
 
1724
  gtk_container_add (GTK_CONTAINER (ok_cancel_hbuttonbox), cancel_button);
 
1725
  STFU GTK_WIDGET_SET_FLAGS (cancel_button, GTK_CAN_DEFAULT);
 
1726
 
 
1727
  gtk_signal_connect (GTK_OBJECT (opt_notebook), "switch_page",
 
1728
                      GTK_SIGNAL_FUNC (settings_switch_page_cb),
 
1729
                      NULL);
 
1730
  gtk_signal_connect (GTK_OBJECT (manual), "clicked",
 
1731
                      GTK_SIGNAL_FUNC (manual_cb),
 
1732
                      NULL);
 
1733
  gtk_signal_connect (GTK_OBJECT (adv_button), "clicked",
 
1734
                      GTK_SIGNAL_FUNC (settings_adv_cb),
 
1735
                      NULL);
 
1736
  gtk_signal_connect (GTK_OBJECT (std_button), "clicked",
 
1737
                      GTK_SIGNAL_FUNC (settings_std_cb),
 
1738
                      NULL);
 
1739
  gtk_signal_connect (GTK_OBJECT (ok_button), "clicked",
 
1740
                      GTK_SIGNAL_FUNC (settings_ok_cb),
 
1741
                      NULL);
 
1742
  gtk_signal_connect (GTK_OBJECT (cancel_button), "clicked",
 
1743
                      GTK_SIGNAL_FUNC (settings_cancel_cb),
 
1744
                      NULL);
 
1745
 
 
1746
  gtk_object_set_data (GTK_OBJECT (xscreensaver_settings_dialog), "tooltips", tooltips);
 
1747
 
 
1748
  return xscreensaver_settings_dialog;
 
1749
}
 
1750