~ubuntu-branches/ubuntu/dapper/cappuccino/dapper

« back to all changes in this revision

Viewing changes to src/interface.c

  • Committer: Bazaar Package Importer
  • Author(s): Lars Wirzenius
  • Date: 2005-04-28 16:32:00 UTC
  • mfrom: (2.1.1 warty)
  • Revision ID: james.westby@ubuntu.com-20050428163200-6ktj118672tak662
Tags: 0.4-2.1
* Non-maintainer upload.
* Rebuilt since linc no longer in archive. Closes: #306151
  (the bug is release critical, hence the urgency).
* debian/menu: Quoted values that weren't quoted, since that's what the
  menu file syntax requires.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* interface.c
2
 
 * Copyright (C) 2000-2001 Christopher R. Gabriel <cgabriel@softwarelibero.org>
3
 
 * This program is free software; you can redistribute it and/or
4
 
 * modify it under the terms of the GNU General Public License as
5
 
 * published by the Free Software Foundation; either version 2 of the
6
 
 * License, or (at your option) any later version.
7
 
 *
8
 
 * This program is distributed in the hope that it will be useful,
9
 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11
 
 * General Public License for more details.
12
 
 *
13
 
 * You should have received a copy of the GNU General Public
14
 
 * License along with this library; if not, write to the
15
 
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
16
 
 * Boston, MA 02111-1307, USA.
17
 
 */
18
 
 
19
 
#ifdef HAVE_CONFIG_H
20
 
#include <config.h>
21
 
#endif
22
 
 
23
 
#include <sys/types.h>
24
 
#include <sys/stat.h>
25
 
#include <unistd.h>
26
 
#include <string.h>
27
 
 
28
 
#include <gnome.h>
29
 
 
30
 
#include "interface.h"
31
 
#include "callbacks.h"
32
 
#include "cappuccino.h"
33
 
 
34
 
static void 
35
 
exit_cb(GtkWidget *widget, gpointer data)
36
 
{
37
 
  gtk_timeout_remove(timeout);
38
 
  gtk_main_quit();
39
 
}
40
 
 
41
 
 
42
 
GtkWidget*
43
 
create_window ()
44
 
{
45
 
  GtkWidget *intwindow2;
46
 
  GtkWidget *vbox2;
47
 
  GtkWidget *canvas;
48
 
  GtkWidget *animator1;
49
 
  GnomeCanvasGroup *root;
50
 
  GnomeCanvasGroup *group;
51
 
  GtkStyle *style, *style2;
52
 
  gchar *imgloc;
53
 
 
54
 
  intwindow2 = gtk_window_new (GTK_WINDOW_TOPLEVEL);
55
 
  gtk_object_set_data (GTK_OBJECT (intwindow2), "window2", intwindow2);
56
 
  gtk_window_set_title (GTK_WINDOW (intwindow2), _("Attention!"));
57
 
  gtk_window_set_position(GTK_WINDOW(intwindow2), GTK_WIN_POS_CENTER_ALWAYS);  
58
 
  gtk_signal_connect(GTK_OBJECT(intwindow2), "delete_event",
59
 
         GTK_SIGNAL_FUNC(exit_cb), NULL);
60
 
 
61
 
  style2 = gtk_style_copy (GTK_WIDGET(intwindow2)->style);
62
 
  style2->bg[GTK_STATE_NORMAL] = style2->white;
63
 
  gtk_widget_set_style (GTK_WIDGET(intwindow2), style2);
64
 
 
65
 
  vbox2 = gtk_vbox_new (FALSE, 0);
66
 
  gtk_widget_ref (vbox2);
67
 
  gtk_object_set_data_full (GTK_OBJECT (intwindow2), "vbox2", vbox2,
68
 
                            (GtkDestroyNotify) gtk_widget_unref);
69
 
 
70
 
 
71
 
  gtk_widget_show (vbox2);
72
 
  gtk_container_add (GTK_CONTAINER (intwindow2), vbox2);
73
 
 
74
 
  gtk_widget_push_visual (gdk_imlib_get_visual ());
75
 
  gtk_widget_push_colormap (gdk_imlib_get_colormap ());
76
 
  canvas = gnome_canvas_new ();
77
 
  gtk_widget_pop_colormap ();
78
 
  gtk_widget_pop_visual ();
79
 
 
80
 
  gtk_widget_set_usize (canvas, 400,170);
81
 
  gnome_canvas_set_scroll_region (GNOME_CANVAS (canvas), 0, 0, 
82
 
          400,
83
 
          170);
84
 
 
85
 
  style = gtk_style_copy (GTK_WIDGET(canvas)->style);
86
 
  style->bg[GTK_STATE_NORMAL] = style->white;
87
 
  gtk_widget_set_style (GTK_WIDGET(canvas), style);
88
 
 
89
 
  root = gnome_canvas_root(GNOME_CANVAS(canvas));  
90
 
  group = GNOME_CANVAS_GROUP (gnome_canvas_item_new (root,
91
 
                 gnome_canvas_group_get_type (),
92
 
                 "x", 10.0,
93
 
                 "y", 10.0,
94
 
                 NULL));
95
 
  gnoca = gnome_canvas_item_new (group,
96
 
         gnome_canvas_text_get_type (),
97
 
         "text", " ",
98
 
         "x", 180.0, 
99
 
         "y", 10.0,
100
 
         "font", "-adobe-helvetica-bold-r-normal--24-240-75-75-p-138-iso8859-1",
101
 
         "anchor", GTK_ANCHOR_CENTER, 
102
 
         "fill_color_rgba", 0x000000ff,
103
 
         NULL);
104
 
  
105
 
 
106
 
  gnoca2 = gnome_canvas_item_new (group,
107
 
         gnome_canvas_text_get_type (),
108
 
         "text", " ",
109
 
         "x", 180.0,
110
 
         "y", 100.0,
111
 
         "font", "-adobe-helvetica-bold-r-normal--24-240-75-75-p-138-iso8859-1",
112
 
         "anchor", GTK_ANCHOR_CENTER,
113
 
         "justification", GTK_JUSTIFY_CENTER,
114
 
         "fill_color_rgba", 0x000000ff,
115
 
         NULL);
116
 
 
117
 
  gtk_box_pack_start (GTK_BOX (vbox2), canvas, TRUE, TRUE, 0);
118
 
  gtk_widget_show(canvas);
119
 
 
120
 
  animator1 = gnome_animator_new_with_size (45, 34);
121
 
 
122
 
  if (g_file_exists(IMAGESDIR "/pleasewait.png"))
123
 
    imgloc = IMAGESDIR "/pleasewait.png";
124
 
  else
125
 
    imgloc = "../pixmaps/pleasewait.png";
126
 
 
127
 
  gnome_animator_append_frames_from_file_at_size (GNOME_ANIMATOR (animator1),
128
 
              imgloc,
129
 
              0, 0,
130
 
              50,
131
 
              45, 
132
 
              45, 34);
133
 
  gtk_widget_ref (animator1);
134
 
  gtk_object_set_data_full (GTK_OBJECT (intwindow2), "animator1", animator1,
135
 
                            (GtkDestroyNotify) gtk_widget_unref);
136
 
  gtk_widget_show (animator1);
137
 
  gtk_box_pack_start (GTK_BOX (vbox2), animator1, TRUE, TRUE, 0);
138
 
  gtk_widget_set_usize (animator1, 0, 0);
139
 
  gnome_animator_start(GNOME_ANIMATOR(animator1));
140
 
  gnome_animator_set_loop_type (GNOME_ANIMATOR (animator1), GNOME_ANIMATOR_LOOP_RESTART);
141
 
 
142
 
  progressbar1 = gtk_progress_bar_new ();
143
 
  gtk_widget_ref (progressbar1);
144
 
  gtk_object_set_data_full (GTK_OBJECT (intwindow2), "progressbar1", progressbar1,
145
 
                            (GtkDestroyNotify) gtk_widget_unref);
146
 
  
147
 
  gtk_widget_show (progressbar1);
148
 
  gtk_box_pack_start (GTK_BOX (vbox2), progressbar1, FALSE, FALSE, 0);
149
 
  gtk_progress_set_activity_mode (GTK_PROGRESS (progressbar1), TRUE);
150
 
 
151
 
 
152
 
  gtk_signal_connect(GTK_OBJECT(canvas),"event",
153
 
                     GTK_SIGNAL_FUNC(canvas_event),
154
 
                     NULL);
155
 
 
156
 
  return intwindow2;
157
 
}
158
 
 
159
 
GtkWidget*
160
 
create_config (void)
161
 
{
162
 
  GtkWidget *config;
163
 
  GtkWidget *dialog_vbox1;
164
 
  GtkWidget *vbox4;
165
 
  GtkWidget *hbox18;
166
 
  GtkWidget *label34;
167
 
  GtkWidget *cptitle;
168
 
  GtkWidget *hbox20;
169
 
  GtkWidget *label36;
170
 
  GtkWidget *sent1;
171
 
  GtkObject *sentc1_adj;
172
 
  GtkWidget *sentc1;
173
 
  GtkWidget *hbox22;
174
 
  GtkWidget *label38;
175
 
  GtkWidget *sent2;
176
 
  GtkObject *sentc2_adj;
177
 
  GtkWidget *sentc2;
178
 
  GtkWidget *hbox24;
179
 
  GtkWidget *label40;
180
 
  GtkWidget *sent3;
181
 
  GtkObject *sentc3_adj;
182
 
  GtkWidget *sentc3;
183
 
  GtkWidget *hbox26;
184
 
  GtkWidget *label41;
185
 
  GtkWidget *sent4;
186
 
  GtkObject *sentc4_adj;
187
 
  GtkWidget *sentc4;
188
 
  GtkWidget *hbox28;
189
 
  GtkWidget *label43;
190
 
  GtkWidget *sent5;
191
 
  GtkObject *sentc5_adj;
192
 
  GtkWidget *sentc5;
193
 
  GtkWidget *hbox30;
194
 
  GtkWidget *label45;
195
 
  GtkWidget *sent6;
196
 
  GtkObject *sentc6_adj;
197
 
  GtkWidget *sentc6;
198
 
  GtkWidget *hbox32;
199
 
  GtkWidget *label48;
200
 
  GtkObject *ncycles_adj;
201
 
  GtkWidget *ncycles;
202
 
  GtkWidget *hbox33;
203
 
  GtkWidget *label52;
204
 
  GtkWidget *lastone;
205
 
  GtkWidget *dialog_action_area1;
206
 
  GtkWidget *buttok;
207
 
  GtkWidget *buttapp;
208
 
  GtkWidget *buttcan;
209
 
  GtkWidget *hbox35;
210
 
  GtkWidget *label54;
211
 
  GSList *hbox35_group = NULL;
212
 
  GtkWidget *remyes;
213
 
  GtkWidget *remno;
214
 
 
215
 
  config = gnome_dialog_new (_("Cappuccino configuration"), NULL);
216
 
  gtk_object_set_data (GTK_OBJECT (config), "config", config);
217
 
  gtk_window_set_policy (GTK_WINDOW (config), FALSE, FALSE, FALSE);
218
 
 
219
 
  dialog_vbox1 = GNOME_DIALOG (config)->vbox;
220
 
  gtk_object_set_data (GTK_OBJECT (config), "dialog_vbox1", dialog_vbox1);
221
 
  gtk_widget_show (dialog_vbox1);
222
 
 
223
 
  vbox4 = gtk_vbox_new (FALSE, 0);
224
 
  gtk_widget_ref (vbox4);
225
 
  gtk_object_set_data_full (GTK_OBJECT (config), "vbox4", vbox4,
226
 
                            (GtkDestroyNotify) gtk_widget_unref);
227
 
  gtk_widget_show (vbox4);
228
 
  gtk_box_pack_start (GTK_BOX (dialog_vbox1), vbox4, TRUE, TRUE, 0);
229
 
 
230
 
  hbox18 = gtk_hbox_new (FALSE, 0);
231
 
  gtk_widget_ref (hbox18);
232
 
  gtk_object_set_data_full (GTK_OBJECT (config), "hbox18", hbox18,
233
 
                            (GtkDestroyNotify) gtk_widget_unref);
234
 
  gtk_widget_show (hbox18);
235
 
  gtk_box_pack_start (GTK_BOX (vbox4), hbox18, TRUE, TRUE, 0);
236
 
 
237
 
  label34 = gtk_label_new (_("First  row:  "));
238
 
  gtk_widget_ref (label34);
239
 
  gtk_object_set_data_full (GTK_OBJECT (config), "label34", label34,
240
 
                            (GtkDestroyNotify) gtk_widget_unref);
241
 
  gtk_widget_show (label34);
242
 
  gtk_box_pack_start (GTK_BOX (hbox18), label34, FALSE, FALSE, 0);
243
 
  gtk_label_set_justify (GTK_LABEL (label34), GTK_JUSTIFY_LEFT);
244
 
 
245
 
  cptitle = gtk_entry_new_with_max_length (35);
246
 
  gtk_widget_ref (cptitle);
247
 
  gtk_object_set_data_full (GTK_OBJECT (config), "cptitle", cptitle,
248
 
                            (GtkDestroyNotify) gtk_widget_unref);
249
 
  gtk_widget_show (cptitle);
250
 
  gtk_box_pack_start (GTK_BOX (hbox18), cptitle, FALSE, TRUE, 0);
251
 
  gtk_widget_set_usize (cptitle, 240, -2);
252
 
  gtk_entry_set_text (GTK_ENTRY (cptitle), title);
253
 
 
254
 
  hbox20 = gtk_hbox_new (FALSE, 0);
255
 
  gtk_widget_ref (hbox20);
256
 
  gtk_object_set_data_full (GTK_OBJECT (config), "hbox20", hbox20,
257
 
                            (GtkDestroyNotify) gtk_widget_unref);
258
 
  gtk_widget_show (hbox20);
259
 
  gtk_box_pack_start (GTK_BOX (vbox4), hbox20, TRUE, TRUE, 0);
260
 
 
261
 
  label36 = gtk_label_new (_("1st sentence:  "));
262
 
  gtk_widget_ref (label36);
263
 
  gtk_object_set_data_full (GTK_OBJECT (config), "label36", label36,
264
 
                            (GtkDestroyNotify) gtk_widget_unref);
265
 
  gtk_widget_show (label36);
266
 
  gtk_box_pack_start (GTK_BOX (hbox20), label36, FALSE, FALSE, 0);
267
 
  gtk_label_set_justify (GTK_LABEL (label36), GTK_JUSTIFY_LEFT);
268
 
 
269
 
  sent1 = gtk_entry_new_with_max_length (25);
270
 
  gtk_widget_ref (sent1);
271
 
  gtk_object_set_data_full (GTK_OBJECT (config), "sent1", sent1,
272
 
                            (GtkDestroyNotify) gtk_widget_unref);
273
 
  gtk_widget_show (sent1);
274
 
  gtk_box_pack_start (GTK_BOX (hbox20), sent1, FALSE, TRUE, 0);
275
 
  gtk_entry_set_text (GTK_ENTRY (sent1), rows[0]);
276
 
 
277
 
  sentc1_adj = gtk_adjustment_new ((gfloat) cycles[0], 0, 100, 1, 10, 10);
278
 
  sentc1 = gtk_spin_button_new (GTK_ADJUSTMENT (sentc1_adj), 1, 0);
279
 
  gtk_widget_ref (sentc1);
280
 
  gtk_object_set_data_full (GTK_OBJECT (config), "sentc1", sentc1,
281
 
                            (GtkDestroyNotify) gtk_widget_unref);
282
 
  gtk_widget_show (sentc1);
283
 
  gtk_box_pack_start (GTK_BOX (hbox20), sentc1, FALSE, TRUE, 0);
284
 
  
285
 
  hbox22 = gtk_hbox_new (FALSE, 0);
286
 
  gtk_widget_ref (hbox22);
287
 
  gtk_object_set_data_full (GTK_OBJECT (config), "hbox22", hbox22,
288
 
                            (GtkDestroyNotify) gtk_widget_unref);
289
 
  gtk_widget_show (hbox22);
290
 
  gtk_box_pack_start (GTK_BOX (vbox4), hbox22, TRUE, TRUE, 0);
291
 
 
292
 
  label38 = gtk_label_new (_("2nd sentence:  "));
293
 
  gtk_widget_ref (label38);
294
 
  gtk_object_set_data_full (GTK_OBJECT (config), "label38", label38,
295
 
                            (GtkDestroyNotify) gtk_widget_unref);
296
 
  gtk_widget_show (label38);
297
 
  gtk_box_pack_start (GTK_BOX (hbox22), label38, FALSE, FALSE, 0);
298
 
  gtk_label_set_justify (GTK_LABEL (label38), GTK_JUSTIFY_LEFT);
299
 
 
300
 
  sent2 = gtk_entry_new_with_max_length (25);
301
 
  gtk_widget_ref (sent2);
302
 
  gtk_object_set_data_full (GTK_OBJECT (config), "sent2", sent2,
303
 
                            (GtkDestroyNotify) gtk_widget_unref);
304
 
  gtk_widget_show (sent2);
305
 
  gtk_box_pack_start (GTK_BOX (hbox22), sent2, FALSE, TRUE, 0);
306
 
  gtk_entry_set_text (GTK_ENTRY (sent2), rows[1]);
307
 
 
308
 
  sentc2_adj = gtk_adjustment_new ((gfloat) cycles[1], 0, 100, 1, 10, 10);
309
 
  sentc2 = gtk_spin_button_new (GTK_ADJUSTMENT (sentc2_adj), 1, 0);
310
 
  gtk_widget_ref (sentc2);
311
 
  gtk_object_set_data_full (GTK_OBJECT (config), "sentc2", sentc2,
312
 
                            (GtkDestroyNotify) gtk_widget_unref);
313
 
  gtk_widget_show (sentc2);
314
 
  gtk_box_pack_start (GTK_BOX (hbox22), sentc2, FALSE, TRUE, 0);
315
 
 
316
 
  hbox24 = gtk_hbox_new (FALSE, 0);
317
 
  gtk_widget_ref (hbox24);
318
 
  gtk_object_set_data_full (GTK_OBJECT (config), "hbox24", hbox24,
319
 
                            (GtkDestroyNotify) gtk_widget_unref);
320
 
  gtk_widget_show (hbox24);
321
 
  gtk_box_pack_start (GTK_BOX (vbox4), hbox24, TRUE, TRUE, 0);
322
 
 
323
 
  label40 = gtk_label_new (_("3rd sentence:  "));
324
 
  gtk_widget_ref (label40);
325
 
  gtk_object_set_data_full (GTK_OBJECT (config), "label40", label40,
326
 
                            (GtkDestroyNotify) gtk_widget_unref);
327
 
  gtk_widget_show (label40);
328
 
  gtk_box_pack_start (GTK_BOX (hbox24), label40, FALSE, FALSE, 0);
329
 
  gtk_label_set_justify (GTK_LABEL (label40), GTK_JUSTIFY_LEFT);
330
 
 
331
 
  sent3 = gtk_entry_new_with_max_length (25);
332
 
  gtk_widget_ref (sent3);
333
 
  gtk_object_set_data_full (GTK_OBJECT (config), "sent3", sent3,
334
 
                            (GtkDestroyNotify) gtk_widget_unref);
335
 
  gtk_widget_show (sent3);
336
 
  gtk_box_pack_start (GTK_BOX (hbox24), sent3, FALSE, TRUE, 0);
337
 
  gtk_entry_set_text (GTK_ENTRY (sent3), rows[2]);
338
 
  
339
 
  sentc3_adj = gtk_adjustment_new ((gfloat) cycles[2], 0, 100, 1, 10, 10);
340
 
  sentc3 = gtk_spin_button_new (GTK_ADJUSTMENT (sentc3_adj), 1, 0);
341
 
  gtk_widget_ref (sentc3);
342
 
  gtk_object_set_data_full (GTK_OBJECT (config), "sentc3", sentc3,
343
 
                            (GtkDestroyNotify) gtk_widget_unref);
344
 
  gtk_widget_show (sentc3);
345
 
  gtk_box_pack_start (GTK_BOX (hbox24), sentc3, FALSE, TRUE, 0);
346
 
 
347
 
  hbox26 = gtk_hbox_new (FALSE, 0);
348
 
  gtk_widget_ref (hbox26);
349
 
  gtk_object_set_data_full (GTK_OBJECT (config), "hbox26", hbox26,
350
 
                            (GtkDestroyNotify) gtk_widget_unref);
351
 
  gtk_widget_show (hbox26);
352
 
  gtk_box_pack_start (GTK_BOX (vbox4), hbox26, TRUE, TRUE, 0);
353
 
 
354
 
  label41 = gtk_label_new (_("4th sentence:  "));
355
 
  gtk_widget_ref (label41);
356
 
  gtk_object_set_data_full (GTK_OBJECT (config), "label41", label41,
357
 
                            (GtkDestroyNotify) gtk_widget_unref);
358
 
  gtk_widget_show (label41);
359
 
  gtk_box_pack_start (GTK_BOX (hbox26), label41, FALSE, FALSE, 0);
360
 
  gtk_label_set_justify (GTK_LABEL (label41), GTK_JUSTIFY_LEFT);
361
 
 
362
 
  sent4 = gtk_entry_new_with_max_length (25);
363
 
  gtk_widget_ref (sent4);
364
 
  gtk_object_set_data_full (GTK_OBJECT (config), "sent4", sent4,
365
 
                            (GtkDestroyNotify) gtk_widget_unref);
366
 
  gtk_widget_show (sent4);
367
 
  gtk_box_pack_start (GTK_BOX (hbox26), sent4, FALSE, TRUE, 0);
368
 
  gtk_entry_set_text (GTK_ENTRY (sent4), rows[3]);
369
 
 
370
 
   sentc4_adj = gtk_adjustment_new ((gfloat) cycles[3], 0, 100, 1, 10, 10);
371
 
  sentc4 = gtk_spin_button_new (GTK_ADJUSTMENT (sentc4_adj), 1, 0);
372
 
  gtk_widget_ref (sentc4);
373
 
  gtk_object_set_data_full (GTK_OBJECT (config), "sentc4", sentc4,
374
 
                            (GtkDestroyNotify) gtk_widget_unref);
375
 
  gtk_widget_show (sentc4);
376
 
  gtk_box_pack_start (GTK_BOX (hbox26), sentc4, FALSE, TRUE, 0);
377
 
 
378
 
  hbox28 = gtk_hbox_new (FALSE, 0);
379
 
  gtk_widget_ref (hbox28);
380
 
  gtk_object_set_data_full (GTK_OBJECT (config), "hbox28", hbox28,
381
 
                            (GtkDestroyNotify) gtk_widget_unref);
382
 
  gtk_widget_show (hbox28);
383
 
  gtk_box_pack_start (GTK_BOX (vbox4), hbox28, TRUE, TRUE, 0);
384
 
 
385
 
  label43 = gtk_label_new (_("5th sentence:  "));
386
 
  gtk_widget_ref (label43);
387
 
  gtk_object_set_data_full (GTK_OBJECT (config), "label43", label43,
388
 
                            (GtkDestroyNotify) gtk_widget_unref);
389
 
  gtk_widget_show (label43);
390
 
  gtk_box_pack_start (GTK_BOX (hbox28), label43, FALSE, FALSE, 0);
391
 
  gtk_label_set_justify (GTK_LABEL (label43), GTK_JUSTIFY_LEFT);
392
 
 
393
 
  sent5 = gtk_entry_new_with_max_length (25);
394
 
  gtk_widget_ref (sent5);
395
 
  gtk_object_set_data_full (GTK_OBJECT (config), "sent5", sent5,
396
 
                            (GtkDestroyNotify) gtk_widget_unref);
397
 
  gtk_widget_show (sent5);
398
 
  gtk_box_pack_start (GTK_BOX (hbox28), sent5, FALSE, TRUE, 0);
399
 
  gtk_entry_set_text (GTK_ENTRY (sent5), rows[4]);
400
 
 
401
 
  sentc5_adj = gtk_adjustment_new ((gfloat) cycles[4], 0, 100, 1, 10, 10);
402
 
  sentc5 = gtk_spin_button_new (GTK_ADJUSTMENT (sentc5_adj), 1, 0);
403
 
  gtk_widget_ref (sentc5);
404
 
  gtk_object_set_data_full (GTK_OBJECT (config), "sentc5", sentc5,
405
 
                            (GtkDestroyNotify) gtk_widget_unref);
406
 
  gtk_widget_show (sentc5);
407
 
  gtk_box_pack_start (GTK_BOX (hbox28), sentc5, FALSE, TRUE, 0);
408
 
 
409
 
  hbox30 = gtk_hbox_new (FALSE, 0);
410
 
  gtk_widget_ref (hbox30);
411
 
  gtk_object_set_data_full (GTK_OBJECT (config), "hbox30", hbox30,
412
 
                            (GtkDestroyNotify) gtk_widget_unref);
413
 
  gtk_widget_show (hbox30);
414
 
  gtk_box_pack_start (GTK_BOX (vbox4), hbox30, TRUE, TRUE, 0);
415
 
 
416
 
  label45 = gtk_label_new (_("6th sentence:  "));
417
 
  gtk_widget_ref (label45);
418
 
  gtk_object_set_data_full (GTK_OBJECT (config), "label45", label45,
419
 
                            (GtkDestroyNotify) gtk_widget_unref);
420
 
  gtk_widget_show (label45);
421
 
  gtk_box_pack_start (GTK_BOX (hbox30), label45, FALSE, FALSE, 0);
422
 
  gtk_label_set_justify (GTK_LABEL (label45), GTK_JUSTIFY_LEFT);
423
 
 
424
 
  sent6 = gtk_entry_new_with_max_length (25);
425
 
  gtk_widget_ref (sent6);
426
 
  gtk_object_set_data_full (GTK_OBJECT (config), "sent6", sent6,
427
 
                            (GtkDestroyNotify) gtk_widget_unref);
428
 
  gtk_widget_show (sent6);
429
 
  gtk_box_pack_start (GTK_BOX (hbox30), sent6, FALSE, TRUE, 0);
430
 
  gtk_entry_set_text (GTK_ENTRY (sent6), rows[5]);
431
 
 
432
 
  sentc6_adj = gtk_adjustment_new ((gfloat) cycles[5], 0, 100, 1, 10, 10);
433
 
  sentc6 = gtk_spin_button_new (GTK_ADJUSTMENT (sentc6_adj), 1, 0);
434
 
  gtk_widget_ref (sentc6);
435
 
  gtk_object_set_data_full (GTK_OBJECT (config), "sentc6", sentc6,
436
 
                            (GtkDestroyNotify) gtk_widget_unref);
437
 
  gtk_widget_show (sentc6);
438
 
  gtk_box_pack_start (GTK_BOX (hbox30), sentc6, FALSE, TRUE, 0);
439
 
 
440
 
  hbox32 = gtk_hbox_new (FALSE, 0);
441
 
  gtk_widget_ref (hbox32);
442
 
  gtk_object_set_data_full (GTK_OBJECT (config), "hbox32", hbox32,
443
 
                            (GtkDestroyNotify) gtk_widget_unref);
444
 
  gtk_widget_show (hbox32);
445
 
  gtk_box_pack_start (GTK_BOX (vbox4), hbox32, TRUE, TRUE, 0);
446
 
 
447
 
  label48 = gtk_label_new (_("# of loop cycles:  "));
448
 
  gtk_widget_ref (label48);
449
 
  gtk_object_set_data_full (GTK_OBJECT (config), "label48", label48,
450
 
                            (GtkDestroyNotify) gtk_widget_unref);
451
 
  gtk_widget_show (label48);
452
 
  gtk_box_pack_start (GTK_BOX (hbox32), label48, FALSE, FALSE, 0);
453
 
 
454
 
  ncycles_adj = gtk_adjustment_new ((gfloat) loops, 0, 100, 1, 10, 10);
455
 
  ncycles = gtk_spin_button_new (GTK_ADJUSTMENT (ncycles_adj), 1, 0);
456
 
  gtk_widget_ref (ncycles);
457
 
  gtk_object_set_data_full (GTK_OBJECT (config), "ncycles", ncycles,
458
 
                            (GtkDestroyNotify) gtk_widget_unref);
459
 
  gtk_widget_show (ncycles);
460
 
  gtk_box_pack_start (GTK_BOX (hbox32), ncycles, FALSE, TRUE, 0);
461
 
 
462
 
  hbox33 = gtk_hbox_new (FALSE, 0);
463
 
  gtk_widget_ref (hbox33);
464
 
  gtk_object_set_data_full (GTK_OBJECT (config), "hbox33", hbox33,
465
 
                            (GtkDestroyNotify) gtk_widget_unref);
466
 
  gtk_widget_show (hbox33);
467
 
  gtk_box_pack_start (GTK_BOX (vbox4), hbox33, TRUE, TRUE, 0);
468
 
 
469
 
  label52 = gtk_label_new (_("Final sentence:"));
470
 
  gtk_widget_ref (label52);
471
 
  gtk_object_set_data_full (GTK_OBJECT (config), "label52", label52,
472
 
                            (GtkDestroyNotify) gtk_widget_unref);
473
 
  gtk_widget_show (label52);
474
 
  gtk_box_pack_start (GTK_BOX (hbox33), label52, FALSE, FALSE, 0);
475
 
  gtk_label_set_justify (GTK_LABEL (label52), GTK_JUSTIFY_LEFT);
476
 
 
477
 
  lastone = gtk_entry_new_with_max_length (35);
478
 
  gtk_widget_ref (lastone);
479
 
  gtk_object_set_data_full (GTK_OBJECT (config), "lastone", lastone,
480
 
                            (GtkDestroyNotify) gtk_widget_unref);
481
 
  gtk_widget_show (lastone);
482
 
  gtk_box_pack_start (GTK_BOX (hbox33), lastone, FALSE, TRUE, 0);
483
 
  gtk_widget_set_usize (lastone, 240, -2);
484
 
  gtk_entry_set_text (GTK_ENTRY (lastone), final);
485
 
 
486
 
  dialog_action_area1 = GNOME_DIALOG (config)->action_area;
487
 
  gtk_object_set_data (GTK_OBJECT (config), "dialog_action_area1", dialog_action_area1);
488
 
  gtk_widget_show (dialog_action_area1);
489
 
  gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area1), GTK_BUTTONBOX_END);
490
 
  gtk_button_box_set_spacing (GTK_BUTTON_BOX (dialog_action_area1), 8);
491
 
 
492
 
  gnome_dialog_append_button (GNOME_DIALOG (config), GNOME_STOCK_BUTTON_OK);
493
 
  buttok = GTK_WIDGET (g_list_last (GNOME_DIALOG (config)->buttons)->data);
494
 
  gtk_widget_ref (buttok);
495
 
  gtk_object_set_data_full (GTK_OBJECT (config), "buttok", buttok,
496
 
                            (GtkDestroyNotify) gtk_widget_unref);
497
 
  gtk_widget_show (buttok);
498
 
  GTK_WIDGET_SET_FLAGS (buttok, GTK_CAN_DEFAULT);
499
 
 
500
 
  gnome_dialog_append_button (GNOME_DIALOG (config), GNOME_STOCK_BUTTON_APPLY);
501
 
  buttapp = GTK_WIDGET (g_list_last (GNOME_DIALOG (config)->buttons)->data);
502
 
  gtk_widget_ref (buttapp);
503
 
  gtk_object_set_data_full (GTK_OBJECT (config), "buttapp", buttapp,
504
 
                            (GtkDestroyNotify) gtk_widget_unref);
505
 
  gtk_widget_show (buttapp);
506
 
  GTK_WIDGET_SET_FLAGS (buttapp, GTK_CAN_DEFAULT);
507
 
 
508
 
  gnome_dialog_append_button (GNOME_DIALOG (config), GNOME_STOCK_BUTTON_CANCEL);
509
 
  buttcan = GTK_WIDGET (g_list_last (GNOME_DIALOG (config)->buttons)->data);
510
 
  gtk_widget_ref (buttcan);
511
 
  gtk_object_set_data_full (GTK_OBJECT (config), "buttcan", buttcan,
512
 
                            (GtkDestroyNotify) gtk_widget_unref);
513
 
  gtk_widget_show (buttcan);
514
 
  GTK_WIDGET_SET_FLAGS (buttcan, GTK_CAN_DEFAULT);
515
 
 
516
 
  hbox35 = gtk_hbox_new (FALSE, 0);
517
 
  gtk_widget_ref (hbox35);
518
 
  gtk_object_set_data_full (GTK_OBJECT (config), "hbox35", hbox35,
519
 
                            (GtkDestroyNotify) gtk_widget_unref);
520
 
  gtk_widget_show (hbox35);
521
 
  gtk_box_pack_start (GTK_BOX (vbox4), hbox35, TRUE, TRUE, 0);
522
 
 
523
 
  label54 = gtk_label_new (_("Remember this changes:  "));
524
 
  gtk_widget_ref (label54);
525
 
  gtk_object_set_data_full (GTK_OBJECT (config), "label54", label54,
526
 
                            (GtkDestroyNotify) gtk_widget_unref);
527
 
  gtk_widget_show (label54);
528
 
  gtk_box_pack_start (GTK_BOX (hbox35), label54, FALSE, FALSE, 0);
529
 
 
530
 
  remyes = gtk_radio_button_new_with_label (hbox35_group, _("yes"));
531
 
  hbox35_group = gtk_radio_button_group (GTK_RADIO_BUTTON (remyes));
532
 
  gtk_widget_ref (remyes);
533
 
  gtk_object_set_data_full (GTK_OBJECT (config), "remyes", remyes,
534
 
                            (GtkDestroyNotify) gtk_widget_unref);
535
 
  gtk_widget_show (remyes);
536
 
  gtk_box_pack_start (GTK_BOX (hbox35), remyes, FALSE, FALSE, 0);
537
 
 
538
 
  remno = gtk_radio_button_new_with_label (hbox35_group, _("no"));
539
 
  hbox35_group = gtk_radio_button_group (GTK_RADIO_BUTTON (remno));
540
 
  gtk_widget_ref (remno);
541
 
  gtk_object_set_data_full (GTK_OBJECT (config), "remno", remno,
542
 
                            (GtkDestroyNotify) gtk_widget_unref);
543
 
  gtk_widget_show (remno);
544
 
  gtk_box_pack_start (GTK_BOX (hbox35), remno, FALSE, FALSE, 0);
545
 
  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (remyes), TRUE);
546
 
 
547
 
  gtk_signal_connect (GTK_OBJECT (buttok), "clicked",
548
 
                      GTK_SIGNAL_FUNC (on_buttok_clicked),
549
 
                      NULL);
550
 
  gtk_signal_connect (GTK_OBJECT (buttapp), "clicked",
551
 
                      GTK_SIGNAL_FUNC (on_buttapp_clicked),
552
 
                      NULL);
553
 
  gtk_signal_connect (GTK_OBJECT (buttcan), "clicked",
554
 
                      GTK_SIGNAL_FUNC (on_buttcan_clicked),
555
 
                      NULL);
556
 
  gtk_signal_connect(GTK_OBJECT(config), "destroy",
557
 
                     GTK_SIGNAL_FUNC(on_config_destroyed),
558
 
                     &config);
559
 
  gtk_signal_connect (GTK_OBJECT (remyes), "toggled",
560
 
                      GTK_SIGNAL_FUNC (on_remyes_toggled),
561
 
                      NULL);
562
 
  gtk_signal_connect (GTK_OBJECT (remno), "toggled",
563
 
                      GTK_SIGNAL_FUNC (on_remno_toggled),
564
 
                      NULL);
565
 
 
566
 
  return config;
567
 
}
568
 
 
569