1 /*
2  * DO NOT EDIT THIS FILE - it is generated by Glade.
3  */
4 
5 #ifdef HAVE_CONFIG_H
6 #  include <config.h>
7 #endif
8 
9 #include <sys/types.h>
10 #include <sys/stat.h>
11 #include <unistd.h>
12 #include <string.h>
13 
14 #include <gdk/gdkkeysyms.h>
15 #include <gtk/gtk.h>
16 
17 #include "callbacks.h"
18 #include "interface.h"
19 #include "support.h"
20 
21 GtkWidget*
create_window(void)22 create_window (void)
23 {
24   GtkWidget *window;
25   GtkWidget *vbox3;
26   GtkWidget *menu;
27   GtkWidget *file;
28   GtkWidget *file_menu;
29   GtkAccelGroup *file_menu_accels;
30   GtkWidget *load;
31   GtkWidget *save;
32   GtkWidget *build;
33   GtkWidget *trennlinie2;
34   GtkWidget *quit;
35   GtkWidget *hbox1;
36   GtkWidget *vbox4;
37   GtkWidget *scrolledwindow2;
38   GtkWidget *scenarios;
39   GtkWidget *label18;
40   GtkWidget *vbox5;
41   GtkWidget *vbox6;
42   GtkWidget *hbox2;
43   GtkWidget *vbox7;
44   GtkWidget *add_label;
45   GtkWidget *hbox3;
46   GtkWidget *vbox8;
47   GtkWidget *players;
48   GList *players_items = NULL;
49   GtkWidget *players_entry;
50   GtkWidget *classes;
51   GList *classes_items = NULL;
52   GtkWidget *classes_entry;
53   GtkWidget *scrolledwindow4;
54   GtkWidget *units;
55   GtkWidget *label21;
56   GtkWidget *scrolledwindow5;
57   GtkWidget *transporters;
58   GtkWidget *label22;
59   GtkWidget *vbox9;
60   GtkWidget *table1;
61   GtkWidget *label23;
62   GtkWidget *label24;
63   GtkWidget *label25;
64   GtkWidget *exp;
65   GList *exp_items = NULL;
66   GtkWidget *exp_entry;
67   GtkWidget *strength;
68   GList *strength_items = NULL;
69   GtkWidget *strength_entry;
70   GtkObject *delay_adj;
71   GtkWidget *delay;
72   GtkWidget *add;
73   GtkWidget *replace;
74   GtkWidget *remove;
75   GtkWidget *reinforcements;
76   GtkWidget *label19;
77 
78   window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
79   gtk_object_set_data (GTK_OBJECT (window), "window", window);
80   gtk_window_set_title (GTK_WINDOW (window), "Reinforcements Editor");
81   gtk_window_set_default_size (GTK_WINDOW (window), 400, 300);
82 
83   vbox3 = gtk_vbox_new (FALSE, 0);
84   gtk_widget_ref (vbox3);
85   gtk_object_set_data_full (GTK_OBJECT (window), "vbox3", vbox3,
86                             (GtkDestroyNotify) gtk_widget_unref);
87   gtk_widget_show (vbox3);
88   gtk_container_add (GTK_CONTAINER (window), vbox3);
89 
90   menu = gtk_menu_bar_new ();
91   gtk_widget_ref (menu);
92   gtk_object_set_data_full (GTK_OBJECT (window), "menu", menu,
93                             (GtkDestroyNotify) gtk_widget_unref);
94   gtk_widget_show (menu);
95   gtk_box_pack_start (GTK_BOX (vbox3), menu, FALSE, FALSE, 0);
96 
97   file = gtk_menu_item_new_with_label ("File");
98   gtk_widget_ref (file);
99   gtk_object_set_data_full (GTK_OBJECT (window), "file", file,
100                             (GtkDestroyNotify) gtk_widget_unref);
101   gtk_widget_show (file);
102   gtk_container_add (GTK_CONTAINER (menu), file);
103 
104   file_menu = gtk_menu_new ();
105   gtk_widget_ref (file_menu);
106   gtk_object_set_data_full (GTK_OBJECT (window), "file_menu", file_menu,
107                             (GtkDestroyNotify) gtk_widget_unref);
108   gtk_menu_item_set_submenu (GTK_MENU_ITEM (file), file_menu);
109   file_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (file_menu));
110 
111   load = gtk_menu_item_new_with_label ("Load");
112   gtk_widget_ref (load);
113   gtk_object_set_data_full (GTK_OBJECT (window), "load", load,
114                             (GtkDestroyNotify) gtk_widget_unref);
115   gtk_widget_show (load);
116   gtk_container_add (GTK_CONTAINER (file_menu), load);
117 
118   save = gtk_menu_item_new_with_label ("Save");
119   gtk_widget_ref (save);
120   gtk_object_set_data_full (GTK_OBJECT (window), "save", save,
121                             (GtkDestroyNotify) gtk_widget_unref);
122   gtk_widget_show (save);
123   gtk_container_add (GTK_CONTAINER (file_menu), save);
124 
125   build = gtk_menu_item_new_with_label ("Build");
126   gtk_widget_ref (build);
127   gtk_object_set_data_full (GTK_OBJECT (window), "build", build,
128                             (GtkDestroyNotify) gtk_widget_unref);
129   gtk_widget_show (build);
130   gtk_container_add (GTK_CONTAINER (file_menu), build);
131 
132   trennlinie2 = gtk_menu_item_new ();
133   gtk_widget_ref (trennlinie2);
134   gtk_object_set_data_full (GTK_OBJECT (window), "trennlinie2", trennlinie2,
135                             (GtkDestroyNotify) gtk_widget_unref);
136   gtk_widget_show (trennlinie2);
137   gtk_container_add (GTK_CONTAINER (file_menu), trennlinie2);
138   gtk_widget_set_sensitive (trennlinie2, FALSE);
139 
140   quit = gtk_menu_item_new_with_label ("Quit");
141   gtk_widget_ref (quit);
142   gtk_object_set_data_full (GTK_OBJECT (window), "quit", quit,
143                             (GtkDestroyNotify) gtk_widget_unref);
144   gtk_widget_show (quit);
145   gtk_container_add (GTK_CONTAINER (file_menu), quit);
146 
147   hbox1 = gtk_hbox_new (FALSE, 5);
148   gtk_widget_ref (hbox1);
149   gtk_object_set_data_full (GTK_OBJECT (window), "hbox1", hbox1,
150                             (GtkDestroyNotify) gtk_widget_unref);
151   gtk_widget_show (hbox1);
152   gtk_box_pack_start (GTK_BOX (vbox3), hbox1, TRUE, TRUE, 0);
153   gtk_container_set_border_width (GTK_CONTAINER (hbox1), 4);
154 
155   vbox4 = gtk_vbox_new (FALSE, 0);
156   gtk_widget_ref (vbox4);
157   gtk_object_set_data_full (GTK_OBJECT (window), "vbox4", vbox4,
158                             (GtkDestroyNotify) gtk_widget_unref);
159   gtk_widget_show (vbox4);
160   gtk_box_pack_start (GTK_BOX (hbox1), vbox4, TRUE, TRUE, 0);
161 
162   scrolledwindow2 = gtk_scrolled_window_new (NULL, NULL);
163   gtk_widget_ref (scrolledwindow2);
164   gtk_object_set_data_full (GTK_OBJECT (window), "scrolledwindow2", scrolledwindow2,
165                             (GtkDestroyNotify) gtk_widget_unref);
166   gtk_widget_show (scrolledwindow2);
167   gtk_box_pack_start (GTK_BOX (vbox4), scrolledwindow2, TRUE, TRUE, 0);
168   gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow2), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
169 
170   scenarios = gtk_clist_new (1);
171   gtk_widget_ref (scenarios);
172   gtk_object_set_data_full (GTK_OBJECT (window), "scenarios", scenarios,
173                             (GtkDestroyNotify) gtk_widget_unref);
174   gtk_widget_show (scenarios);
175   gtk_container_add (GTK_CONTAINER (scrolledwindow2), scenarios);
176   gtk_widget_set_usize (scenarios, 130, -2);
177   gtk_container_set_border_width (GTK_CONTAINER (scenarios), 2);
178   gtk_clist_set_column_width (GTK_CLIST (scenarios), 0, 80);
179   gtk_clist_column_titles_show (GTK_CLIST (scenarios));
180 
181   label18 = gtk_label_new ("Scenario");
182   gtk_widget_ref (label18);
183   gtk_object_set_data_full (GTK_OBJECT (window), "label18", label18,
184                             (GtkDestroyNotify) gtk_widget_unref);
185   gtk_widget_show (label18);
186   gtk_clist_set_column_widget (GTK_CLIST (scenarios), 0, label18);
187 
188   vbox5 = gtk_vbox_new (FALSE, 0);
189   gtk_widget_ref (vbox5);
190   gtk_object_set_data_full (GTK_OBJECT (window), "vbox5", vbox5,
191                             (GtkDestroyNotify) gtk_widget_unref);
192   gtk_widget_show (vbox5);
193   gtk_box_pack_start (GTK_BOX (hbox1), vbox5, TRUE, TRUE, 0);
194 
195   vbox6 = gtk_vbox_new (FALSE, 0);
196   gtk_widget_ref (vbox6);
197   gtk_object_set_data_full (GTK_OBJECT (window), "vbox6", vbox6,
198                             (GtkDestroyNotify) gtk_widget_unref);
199   gtk_widget_show (vbox6);
200   gtk_box_pack_start (GTK_BOX (vbox5), vbox6, TRUE, TRUE, 0);
201 
202   hbox2 = gtk_hbox_new (FALSE, 0);
203   gtk_widget_ref (hbox2);
204   gtk_object_set_data_full (GTK_OBJECT (window), "hbox2", hbox2,
205                             (GtkDestroyNotify) gtk_widget_unref);
206   gtk_widget_show (hbox2);
207   gtk_box_pack_start (GTK_BOX (vbox6), hbox2, TRUE, TRUE, 0);
208 
209   vbox7 = gtk_vbox_new (FALSE, 0);
210   gtk_widget_ref (vbox7);
211   gtk_object_set_data_full (GTK_OBJECT (window), "vbox7", vbox7,
212                             (GtkDestroyNotify) gtk_widget_unref);
213   gtk_widget_show (vbox7);
214   gtk_box_pack_start (GTK_BOX (hbox2), vbox7, TRUE, TRUE, 0);
215 
216   add_label = gtk_label_new ("Add Unit For Poland");
217   gtk_widget_ref (add_label);
218   gtk_object_set_data_full (GTK_OBJECT (window), "add_label", add_label,
219                             (GtkDestroyNotify) gtk_widget_unref);
220   gtk_widget_show (add_label);
221   gtk_box_pack_start (GTK_BOX (vbox7), add_label, FALSE, FALSE, 0);
222 
223   hbox3 = gtk_hbox_new (FALSE, 2);
224   gtk_widget_ref (hbox3);
225   gtk_object_set_data_full (GTK_OBJECT (window), "hbox3", hbox3,
226                             (GtkDestroyNotify) gtk_widget_unref);
227   gtk_widget_show (hbox3);
228   gtk_box_pack_start (GTK_BOX (vbox7), hbox3, TRUE, TRUE, 0);
229   gtk_container_set_border_width (GTK_CONTAINER (hbox3), 2);
230 
231   vbox8 = gtk_vbox_new (FALSE, 0);
232   gtk_widget_ref (vbox8);
233   gtk_object_set_data_full (GTK_OBJECT (window), "vbox8", vbox8,
234                             (GtkDestroyNotify) gtk_widget_unref);
235   gtk_widget_show (vbox8);
236   gtk_box_pack_start (GTK_BOX (hbox3), vbox8, TRUE, TRUE, 0);
237 
238   players = gtk_combo_new ();
239   gtk_widget_ref (players);
240   gtk_object_set_data_full (GTK_OBJECT (window), "players", players,
241                             (GtkDestroyNotify) gtk_widget_unref);
242   gtk_widget_show (players);
243   gtk_box_pack_start (GTK_BOX (vbox8), players, FALSE, FALSE, 0);
244   players_items = g_list_append (players_items, (gpointer) "Axis");
245   players_items = g_list_append (players_items, (gpointer) "Allies");
246   gtk_combo_set_popdown_strings (GTK_COMBO (players), players_items);
247   g_list_free (players_items);
248 
249   players_entry = GTK_COMBO (players)->entry;
250   gtk_widget_ref (players_entry);
251   gtk_object_set_data_full (GTK_OBJECT (window), "players_entry", players_entry,
252                             (GtkDestroyNotify) gtk_widget_unref);
253   gtk_widget_show (players_entry);
254   gtk_entry_set_editable (GTK_ENTRY (players_entry), FALSE);
255   gtk_entry_set_text (GTK_ENTRY (players_entry), "Axis");
256 
257   classes = gtk_combo_new ();
258   gtk_widget_ref (classes);
259   gtk_object_set_data_full (GTK_OBJECT (window), "classes", classes,
260                             (GtkDestroyNotify) gtk_widget_unref);
261   gtk_widget_show (classes);
262   gtk_box_pack_start (GTK_BOX (vbox8), classes, FALSE, FALSE, 0);
263   classes_items = g_list_append (classes_items, (gpointer) "Infantry");
264   classes_items = g_list_append (classes_items, (gpointer) "Tank");
265   classes_items = g_list_append (classes_items, (gpointer) "Recon");
266   classes_items = g_list_append (classes_items, (gpointer) "Anti-Tank");
267   classes_items = g_list_append (classes_items, (gpointer) "Artillery");
268   classes_items = g_list_append (classes_items, (gpointer) "Anti-Aircraft");
269   classes_items = g_list_append (classes_items, (gpointer) "Air-Defense");
270   classes_items = g_list_append (classes_items, (gpointer) "Fighter");
271   classes_items = g_list_append (classes_items, (gpointer) "Tactical Bomber");
272   classes_items = g_list_append (classes_items, (gpointer) "Level Bomber");
273   classes_items = g_list_append (classes_items, (gpointer) "Submarine");
274   classes_items = g_list_append (classes_items, (gpointer) "Destroyer");
275   classes_items = g_list_append (classes_items, (gpointer) "Capital Ship");
276   classes_items = g_list_append (classes_items, (gpointer) "Aircraft Carrier");
277   gtk_combo_set_popdown_strings (GTK_COMBO (classes), classes_items);
278   g_list_free (classes_items);
279 
280   classes_entry = GTK_COMBO (classes)->entry;
281   gtk_widget_ref (classes_entry);
282   gtk_object_set_data_full (GTK_OBJECT (window), "classes_entry", classes_entry,
283                             (GtkDestroyNotify) gtk_widget_unref);
284   gtk_widget_show (classes_entry);
285   gtk_entry_set_editable (GTK_ENTRY (classes_entry), FALSE);
286   gtk_entry_set_text (GTK_ENTRY (classes_entry), "Infantry");
287 
288   scrolledwindow4 = gtk_scrolled_window_new (NULL, NULL);
289   gtk_widget_ref (scrolledwindow4);
290   gtk_object_set_data_full (GTK_OBJECT (window), "scrolledwindow4", scrolledwindow4,
291                             (GtkDestroyNotify) gtk_widget_unref);
292   gtk_widget_show (scrolledwindow4);
293   gtk_box_pack_start (GTK_BOX (vbox8), scrolledwindow4, TRUE, TRUE, 0);
294   gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow4), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
295 
296   units = gtk_clist_new (1);
297   gtk_widget_ref (units);
298   gtk_object_set_data_full (GTK_OBJECT (window), "units", units,
299                             (GtkDestroyNotify) gtk_widget_unref);
300   gtk_widget_show (units);
301   gtk_container_add (GTK_CONTAINER (scrolledwindow4), units);
302   gtk_widget_set_usize (units, 140, 160);
303   gtk_container_set_border_width (GTK_CONTAINER (units), 2);
304   gtk_clist_set_column_width (GTK_CLIST (units), 0, 80);
305   gtk_clist_column_titles_show (GTK_CLIST (units));
306 
307   label21 = gtk_label_new ("Unit");
308   gtk_widget_ref (label21);
309   gtk_object_set_data_full (GTK_OBJECT (window), "label21", label21,
310                             (GtkDestroyNotify) gtk_widget_unref);
311   gtk_widget_show (label21);
312   gtk_clist_set_column_widget (GTK_CLIST (units), 0, label21);
313 
314   scrolledwindow5 = gtk_scrolled_window_new (NULL, NULL);
315   gtk_widget_ref (scrolledwindow5);
316   gtk_object_set_data_full (GTK_OBJECT (window), "scrolledwindow5", scrolledwindow5,
317                             (GtkDestroyNotify) gtk_widget_unref);
318   gtk_widget_show (scrolledwindow5);
319   gtk_box_pack_start (GTK_BOX (vbox8), scrolledwindow5, TRUE, TRUE, 0);
320   gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow5), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
321 
322   transporters = gtk_clist_new (1);
323   gtk_widget_ref (transporters);
324   gtk_object_set_data_full (GTK_OBJECT (window), "transporters", transporters,
325                             (GtkDestroyNotify) gtk_widget_unref);
326   gtk_widget_show (transporters);
327   gtk_container_add (GTK_CONTAINER (scrolledwindow5), transporters);
328   gtk_widget_set_usize (transporters, 140, 130);
329   gtk_container_set_border_width (GTK_CONTAINER (transporters), 2);
330   gtk_clist_set_column_width (GTK_CLIST (transporters), 0, 80);
331   gtk_clist_column_titles_show (GTK_CLIST (transporters));
332 
333   label22 = gtk_label_new ("Transporter");
334   gtk_widget_ref (label22);
335   gtk_object_set_data_full (GTK_OBJECT (window), "label22", label22,
336                             (GtkDestroyNotify) gtk_widget_unref);
337   gtk_widget_show (label22);
338   gtk_clist_set_column_widget (GTK_CLIST (transporters), 0, label22);
339 
340   vbox9 = gtk_vbox_new (FALSE, 0);
341   gtk_widget_ref (vbox9);
342   gtk_object_set_data_full (GTK_OBJECT (window), "vbox9", vbox9,
343                             (GtkDestroyNotify) gtk_widget_unref);
344   gtk_widget_show (vbox9);
345   gtk_box_pack_start (GTK_BOX (hbox3), vbox9, TRUE, TRUE, 0);
346 
347   table1 = gtk_table_new (3, 2, TRUE);
348   gtk_widget_ref (table1);
349   gtk_object_set_data_full (GTK_OBJECT (window), "table1", table1,
350                             (GtkDestroyNotify) gtk_widget_unref);
351   gtk_widget_show (table1);
352   gtk_box_pack_start (GTK_BOX (vbox9), table1, TRUE, TRUE, 0);
353   gtk_container_set_border_width (GTK_CONTAINER (table1), 2);
354   gtk_table_set_row_spacings (GTK_TABLE (table1), 2);
355   gtk_table_set_col_spacings (GTK_TABLE (table1), 2);
356 
357   label23 = gtk_label_new ("Delay:");
358   gtk_widget_ref (label23);
359   gtk_object_set_data_full (GTK_OBJECT (window), "label23", label23,
360                             (GtkDestroyNotify) gtk_widget_unref);
361   gtk_widget_show (label23);
362   gtk_table_attach (GTK_TABLE (table1), label23, 0, 1, 0, 1,
363                     (GtkAttachOptions) (GTK_FILL),
364                     (GtkAttachOptions) (0), 0, 0);
365   gtk_misc_set_alignment (GTK_MISC (label23), 0, 0.5);
366 
367   label24 = gtk_label_new ("Strength:");
368   gtk_widget_ref (label24);
369   gtk_object_set_data_full (GTK_OBJECT (window), "label24", label24,
370                             (GtkDestroyNotify) gtk_widget_unref);
371   gtk_widget_show (label24);
372   gtk_table_attach (GTK_TABLE (table1), label24, 0, 1, 1, 2,
373                     (GtkAttachOptions) (GTK_FILL),
374                     (GtkAttachOptions) (0), 0, 0);
375   gtk_misc_set_alignment (GTK_MISC (label24), 0, 0.5);
376 
377   label25 = gtk_label_new ("Experience:");
378   gtk_widget_ref (label25);
379   gtk_object_set_data_full (GTK_OBJECT (window), "label25", label25,
380                             (GtkDestroyNotify) gtk_widget_unref);
381   gtk_widget_show (label25);
382   gtk_table_attach (GTK_TABLE (table1), label25, 0, 1, 2, 3,
383                     (GtkAttachOptions) (GTK_FILL),
384                     (GtkAttachOptions) (0), 0, 0);
385   gtk_misc_set_alignment (GTK_MISC (label25), 0, 0.5);
386 
387   exp = gtk_combo_new ();
388   gtk_widget_ref (exp);
389   gtk_object_set_data_full (GTK_OBJECT (window), "exp", exp,
390                             (GtkDestroyNotify) gtk_widget_unref);
391   gtk_widget_show (exp);
392   gtk_table_attach (GTK_TABLE (table1), exp, 1, 2, 2, 3,
393                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
394                     (GtkAttachOptions) (0), 0, 0);
395   exp_items = g_list_append (exp_items, (gpointer) "0");
396   exp_items = g_list_append (exp_items, (gpointer) "1");
397   exp_items = g_list_append (exp_items, (gpointer) "2");
398   exp_items = g_list_append (exp_items, (gpointer) "3");
399   exp_items = g_list_append (exp_items, (gpointer) "4");
400   exp_items = g_list_append (exp_items, (gpointer) "5");
401   gtk_combo_set_popdown_strings (GTK_COMBO (exp), exp_items);
402   g_list_free (exp_items);
403 
404   exp_entry = GTK_COMBO (exp)->entry;
405   gtk_widget_ref (exp_entry);
406   gtk_object_set_data_full (GTK_OBJECT (window), "exp_entry", exp_entry,
407                             (GtkDestroyNotify) gtk_widget_unref);
408   gtk_widget_show (exp_entry);
409   gtk_entry_set_editable (GTK_ENTRY (exp_entry), FALSE);
410   gtk_entry_set_text (GTK_ENTRY (exp_entry), "0");
411 
412   strength = gtk_combo_new ();
413   gtk_widget_ref (strength);
414   gtk_object_set_data_full (GTK_OBJECT (window), "strength", strength,
415                             (GtkDestroyNotify) gtk_widget_unref);
416   gtk_widget_show (strength);
417   gtk_table_attach (GTK_TABLE (table1), strength, 1, 2, 1, 2,
418                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
419                     (GtkAttachOptions) (0), 0, 0);
420   strength_items = g_list_append (strength_items, (gpointer) "5");
421   strength_items = g_list_append (strength_items, (gpointer) "8");
422   strength_items = g_list_append (strength_items, (gpointer) "10");
423   strength_items = g_list_append (strength_items, (gpointer) "12");
424   strength_items = g_list_append (strength_items, (gpointer) "15");
425   gtk_combo_set_popdown_strings (GTK_COMBO (strength), strength_items);
426   g_list_free (strength_items);
427 
428   strength_entry = GTK_COMBO (strength)->entry;
429   gtk_widget_ref (strength_entry);
430   gtk_object_set_data_full (GTK_OBJECT (window), "strength_entry", strength_entry,
431                             (GtkDestroyNotify) gtk_widget_unref);
432   gtk_widget_show (strength_entry);
433   gtk_entry_set_text (GTK_ENTRY (strength_entry), "10");
434 
435   delay_adj = gtk_adjustment_new (1, 1, 100, 1, 10, 10);
436   delay = gtk_spin_button_new (GTK_ADJUSTMENT (delay_adj), 1, 0);
437   gtk_widget_ref (delay);
438   gtk_object_set_data_full (GTK_OBJECT (window), "delay", delay,
439                             (GtkDestroyNotify) gtk_widget_unref);
440   gtk_widget_show (delay);
441   gtk_table_attach (GTK_TABLE (table1), delay, 1, 2, 0, 1,
442                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
443                     (GtkAttachOptions) (0), 0, 0);
444   gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (delay), TRUE);
445 
446   add = gtk_button_new_with_label ("Add Unit");
447   gtk_widget_ref (add);
448   gtk_object_set_data_full (GTK_OBJECT (window), "add", add,
449                             (GtkDestroyNotify) gtk_widget_unref);
450   gtk_widget_show (add);
451   gtk_box_pack_start (GTK_BOX (vbox9), add, FALSE, FALSE, 0);
452   gtk_container_set_border_width (GTK_CONTAINER (add), 5);
453 
454   replace = gtk_button_new_with_label ("ReplaceUnit");
455   gtk_widget_ref (replace);
456   gtk_object_set_data_full (GTK_OBJECT (window), "replace", replace,
457                             (GtkDestroyNotify) gtk_widget_unref);
458   gtk_widget_show (replace);
459   gtk_box_pack_start (GTK_BOX (vbox9), replace, FALSE, FALSE, 0);
460   gtk_container_set_border_width (GTK_CONTAINER (replace), 5);
461 
462   remove = gtk_button_new_with_label ("Remove Unit");
463   gtk_widget_ref (remove);
464   gtk_object_set_data_full (GTK_OBJECT (window), "remove", remove,
465                             (GtkDestroyNotify) gtk_widget_unref);
466   gtk_widget_show (remove);
467   gtk_box_pack_start (GTK_BOX (vbox9), remove, FALSE, FALSE, 0);
468   gtk_container_set_border_width (GTK_CONTAINER (remove), 5);
469 
470   reinforcements = gtk_clist_new (1);
471   gtk_widget_ref (reinforcements);
472   gtk_object_set_data_full (GTK_OBJECT (window), "reinforcements", reinforcements,
473                             (GtkDestroyNotify) gtk_widget_unref);
474   gtk_widget_show (reinforcements);
475   gtk_box_pack_start (GTK_BOX (vbox9), reinforcements, TRUE, TRUE, 0);
476   gtk_widget_set_usize (reinforcements, -2, 150);
477   gtk_clist_set_column_width (GTK_CLIST (reinforcements), 0, 80);
478   gtk_clist_column_titles_show (GTK_CLIST (reinforcements));
479 
480   label19 = gtk_label_new ("Reinforcements");
481   gtk_widget_ref (label19);
482   gtk_object_set_data_full (GTK_OBJECT (window), "label19", label19,
483                             (GtkDestroyNotify) gtk_widget_unref);
484   gtk_widget_show (label19);
485   gtk_clist_set_column_widget (GTK_CLIST (reinforcements), 0, label19);
486 
487   gtk_signal_connect (GTK_OBJECT (window), "destroy",
488                       GTK_SIGNAL_FUNC (on_window_destroy),
489                       NULL);
490   gtk_signal_connect (GTK_OBJECT (file), "activate",
491                       GTK_SIGNAL_FUNC (on_file_activate),
492                       NULL);
493   gtk_signal_connect (GTK_OBJECT (load), "activate",
494                       GTK_SIGNAL_FUNC (on_load_activate),
495                       NULL);
496   gtk_signal_connect (GTK_OBJECT (save), "activate",
497                       GTK_SIGNAL_FUNC (on_save_activate),
498                       NULL);
499   gtk_signal_connect (GTK_OBJECT (build), "activate",
500                       GTK_SIGNAL_FUNC (on_build_activate),
501                       NULL);
502   gtk_signal_connect (GTK_OBJECT (quit), "activate",
503                       GTK_SIGNAL_FUNC (on_quit_activate),
504                       NULL);
505   gtk_signal_connect (GTK_OBJECT (scenarios), "select_row",
506                       GTK_SIGNAL_FUNC (on_scenarios_select_row),
507                       NULL);
508   gtk_signal_connect (GTK_OBJECT (players_entry), "changed",
509                       GTK_SIGNAL_FUNC (on_players_changed),
510                       NULL);
511   gtk_signal_connect (GTK_OBJECT (classes_entry), "changed",
512                       GTK_SIGNAL_FUNC (on_classes_changed),
513                       NULL);
514   gtk_signal_connect (GTK_OBJECT (units), "select_row",
515                       GTK_SIGNAL_FUNC (on_units_select_row),
516                       NULL);
517   gtk_signal_connect (GTK_OBJECT (transporters), "select_row",
518                       GTK_SIGNAL_FUNC (on_transporters_select_row),
519                       NULL);
520   gtk_signal_connect (GTK_OBJECT (add), "clicked",
521                       GTK_SIGNAL_FUNC (on_add_clicked),
522                       NULL);
523   gtk_signal_connect (GTK_OBJECT (replace), "clicked",
524                       GTK_SIGNAL_FUNC (on_replace_clicked),
525                       NULL);
526   gtk_signal_connect (GTK_OBJECT (remove), "clicked",
527                       GTK_SIGNAL_FUNC (on_remove_clicked),
528                       NULL);
529   gtk_signal_connect (GTK_OBJECT (reinforcements), "select_row",
530                       GTK_SIGNAL_FUNC (on_reinforcements_select_row),
531                       NULL);
532   gtk_signal_connect (GTK_OBJECT (reinforcements), "key_press_event",
533                       GTK_SIGNAL_FUNC (on_reinforcements_key_press_event),
534                       NULL);
535 
536   return window;
537 }
538 
539