filename | src/gui/debugif.c |
changeset | 435:7a5d71e8560b |
next | 455:3080881d00d4 |
author | nkeynes |
date | Wed Oct 17 11:26:45 2007 +0000 (16 years ago) |
permissions | -rw-r--r-- |
last change | Split config management out to config.[ch] Manage config filename Check home dir + sysconfdir for conf file Initial work on a path settings dialog |
view | annotate | diff | log | raw |
1 /*
2 * DO NOT EDIT THIS FILE - it is generated by Glade.
3 */
5 #ifdef HAVE_CONFIG_H
6 # include <config.h>
7 #endif
9 #include <sys/types.h>
10 #include <sys/stat.h>
11 #include <unistd.h>
12 #include <string.h>
13 #include <stdio.h>
15 #include <bonobo.h>
16 #include <gnome.h>
18 #include "debugcb.h"
19 #include "debugif.h"
20 #include "support.h"
22 #define GLADE_HOOKUP_OBJECT(component,widget,name) \
23 g_object_set_data_full (G_OBJECT (component), name, \
24 gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref)
26 #define GLADE_HOOKUP_OBJECT_NO_REF(component,widget,name) \
27 g_object_set_data (G_OBJECT (component), name, widget)
29 static GnomeUIInfo file1_menu_uiinfo[] =
30 {
31 GNOMEUIINFO_MENU_NEW_ITEM (N_("_New"), NULL, on_new_file1_activate, NULL),
32 GNOMEUIINFO_MENU_OPEN_ITEM (on_open1_activate, NULL),
33 GNOMEUIINFO_MENU_SAVE_ITEM (on_save1_activate, NULL),
34 GNOMEUIINFO_MENU_SAVE_AS_ITEM (on_save_as1_activate, NULL),
35 {
36 GNOME_APP_UI_ITEM, N_("Save next scene..."),
37 NULL,
38 (gpointer) on_save_next_scene_activate, NULL, NULL,
39 GNOME_APP_PIXMAP_NONE, NULL,
40 0, (GdkModifierType) 0, NULL
41 },
42 GNOMEUIINFO_SEPARATOR,
43 GNOMEUIINFO_MENU_EXIT_ITEM (on_exit1_activate, NULL),
44 GNOMEUIINFO_END
45 };
47 static GnomeUIInfo view1_menu_uiinfo[] =
48 {
49 {
50 GNOME_APP_UI_ITEM, N_("Memory..."),
51 NULL,
52 (gpointer) on_view_memory_activate, NULL, NULL,
53 GNOME_APP_PIXMAP_NONE, NULL,
54 0, (GdkModifierType) 0, NULL
55 },
56 {
57 GNOME_APP_UI_ITEM, N_("Mem mapped Regs..."),
58 NULL,
59 (gpointer) on_mem_mapped_regs1_activate, NULL, NULL,
60 GNOME_APP_PIXMAP_NONE, NULL,
61 0, (GdkModifierType) 0, NULL
62 },
63 GNOMEUIINFO_END
64 };
66 static GnomeUIInfo settings1_menu_uiinfo[] =
67 {
68 GNOMEUIINFO_MENU_PREFERENCES_ITEM (on_preferences1_activate, NULL),
69 GNOMEUIINFO_END
70 };
72 static GnomeUIInfo help1_menu_uiinfo[] =
73 {
74 GNOMEUIINFO_MENU_ABOUT_ITEM (on_about1_activate, NULL),
75 GNOMEUIINFO_END
76 };
78 static GnomeUIInfo menubar1_uiinfo[] =
79 {
80 {
81 GNOME_APP_UI_SUBTREE, N_("_File"),
82 NULL,
83 file1_menu_uiinfo, NULL, NULL,
84 GNOME_APP_PIXMAP_NONE, NULL,
85 0, (GdkModifierType) 0, NULL
86 },
87 {
88 GNOME_APP_UI_SUBTREE, N_("_View"),
89 NULL,
90 view1_menu_uiinfo, NULL, NULL,
91 GNOME_APP_PIXMAP_NONE, NULL,
92 0, (GdkModifierType) 0, NULL
93 },
94 {
95 GNOME_APP_UI_SUBTREE, N_("_Settings"),
96 NULL,
97 settings1_menu_uiinfo, NULL, NULL,
98 GNOME_APP_PIXMAP_NONE, NULL,
99 0, (GdkModifierType) 0, NULL
100 },
101 {
102 GNOME_APP_UI_SUBTREE, N_("_Help"),
103 NULL,
104 help1_menu_uiinfo, NULL, NULL,
105 GNOME_APP_PIXMAP_NONE, NULL,
106 0, (GdkModifierType) 0, NULL
107 },
108 GNOMEUIINFO_END
109 };
111 GtkWidget*
112 create_debug_win (void)
113 {
114 GtkWidget *debug_win;
115 GtkWidget *dock1;
116 GtkWidget *toolbar1;
117 GtkIconSize tmp_toolbar_icon_size;
118 GtkWidget *tmp_image;
119 GtkWidget *load_btn;
120 GtkWidget *reset_btn;
121 GtkWidget *stop_btn;
122 GtkWidget *step_btn;
123 GtkWidget *run_btn;
124 GtkWidget *runto_btn;
125 GtkWidget *break_btn;
126 GtkWidget *loadstate_button;
127 GtkWidget *savestate_button;
128 GtkWidget *vpaned1;
129 GtkWidget *hpaned1;
130 GtkWidget *vbox2;
131 GtkWidget *hbox1;
132 GtkWidget *label21;
133 GtkWidget *page_field;
134 GtkWidget *page_locked_btn;
135 GtkWidget *jump_pc_btn;
136 GtkWidget *label22;
137 GtkWidget *mode_box;
138 GList *mode_box_items = NULL;
139 GtkWidget *mode_field;
140 GtkWidget *label23;
141 GtkWidget *scrolledwindow7;
142 GtkWidget *disasm_list;
143 GtkWidget *label24;
144 GtkWidget *label27;
145 GtkWidget *label28;
146 GtkWidget *label29;
147 GtkWidget *scrolledwindow4;
148 GtkWidget *reg_list;
149 GtkWidget *label25;
150 GtkWidget *label30;
151 GtkWidget *scrolledwindow8;
152 GtkWidget *output_list;
153 GtkWidget *label26;
154 GtkWidget *label31;
155 GtkWidget *label32;
156 GtkWidget *debug_appbar;
157 GtkTooltips *tooltips;
159 tooltips = gtk_tooltips_new ();
161 debug_win = gnome_app_new ("Dream", _("lxDream! Debugger"));
162 gtk_window_set_default_size (GTK_WINDOW (debug_win), 1000, 700);
164 dock1 = GNOME_APP (debug_win)->dock;
165 gtk_widget_show (dock1);
167 gnome_app_create_menus (GNOME_APP (debug_win), menubar1_uiinfo);
169 toolbar1 = gtk_toolbar_new ();
170 gtk_widget_show (toolbar1);
171 gnome_app_add_toolbar (GNOME_APP (debug_win), GTK_TOOLBAR (toolbar1), "toolbar1",
172 BONOBO_DOCK_ITEM_BEH_EXCLUSIVE,
173 BONOBO_DOCK_TOP, 1, 0, 0);
174 gtk_container_set_border_width (GTK_CONTAINER (toolbar1), 1);
175 gtk_toolbar_set_style (GTK_TOOLBAR (toolbar1), GTK_TOOLBAR_BOTH);
176 tmp_toolbar_icon_size = gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1));
178 tmp_image = gtk_image_new_from_stock ("gtk-cdrom", tmp_toolbar_icon_size);
179 gtk_widget_show (tmp_image);
180 load_btn = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Mount"));
181 gtk_widget_show (load_btn);
182 gtk_container_add (GTK_CONTAINER (toolbar1), load_btn);
183 gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (load_btn), tooltips, _("Mount CD-Rom"), NULL);
185 tmp_image = gtk_image_new_from_stock ("gtk-refresh", tmp_toolbar_icon_size);
186 gtk_widget_show (tmp_image);
187 reset_btn = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Reset"));
188 gtk_widget_show (reset_btn);
189 gtk_container_add (GTK_CONTAINER (toolbar1), reset_btn);
190 gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (reset_btn), tooltips, _("Reset emulator"), NULL);
192 tmp_image = gtk_image_new_from_stock ("gtk-stop", tmp_toolbar_icon_size);
193 gtk_widget_show (tmp_image);
194 stop_btn = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Stop"));
195 gtk_widget_show (stop_btn);
196 gtk_container_add (GTK_CONTAINER (toolbar1), stop_btn);
197 gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (stop_btn), tooltips, _("Stop"), NULL);
199 tmp_image = gtk_image_new_from_stock ("gtk-redo", tmp_toolbar_icon_size);
200 gtk_widget_show (tmp_image);
201 step_btn = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Step"));
202 gtk_widget_show (step_btn);
203 gtk_container_add (GTK_CONTAINER (toolbar1), step_btn);
204 gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (step_btn), tooltips, _("Single step"), NULL);
206 tmp_image = gtk_image_new_from_stock ("gtk-go-forward", tmp_toolbar_icon_size);
207 gtk_widget_show (tmp_image);
208 run_btn = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Run"));
209 gtk_widget_show (run_btn);
210 gtk_container_add (GTK_CONTAINER (toolbar1), run_btn);
211 gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (run_btn), tooltips, _("Run"), NULL);
213 tmp_image = gtk_image_new_from_stock ("gtk-goto-last", tmp_toolbar_icon_size);
214 gtk_widget_show (tmp_image);
215 runto_btn = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Run to"));
216 gtk_widget_show (runto_btn);
217 gtk_container_add (GTK_CONTAINER (toolbar1), runto_btn);
218 gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (runto_btn), tooltips, _("Run to current selection"), NULL);
220 tmp_image = gtk_image_new_from_stock ("gtk-close", tmp_toolbar_icon_size);
221 gtk_widget_show (tmp_image);
222 break_btn = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Break"));
223 gtk_widget_show (break_btn);
224 gtk_container_add (GTK_CONTAINER (toolbar1), break_btn);
225 gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (break_btn), tooltips, _("Set breakpoint"), NULL);
227 tmp_image = gtk_image_new_from_stock ("gtk-open", tmp_toolbar_icon_size);
228 gtk_widget_show (tmp_image);
229 loadstate_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Load"));
230 gtk_widget_show (loadstate_button);
231 gtk_container_add (GTK_CONTAINER (toolbar1), loadstate_button);
232 gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (loadstate_button), tooltips, _("Load save-state file"), NULL);
234 tmp_image = gtk_image_new_from_stock ("gtk-save", tmp_toolbar_icon_size);
235 gtk_widget_show (tmp_image);
236 savestate_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Save"));
237 gtk_widget_show (savestate_button);
238 gtk_container_add (GTK_CONTAINER (toolbar1), savestate_button);
239 gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (savestate_button), tooltips, _("Save save-state file"), NULL);
241 vpaned1 = gtk_vpaned_new ();
242 gtk_widget_show (vpaned1);
243 gnome_app_set_contents (GNOME_APP (debug_win), vpaned1);
244 gtk_paned_set_position (GTK_PANED (vpaned1), 430);
246 hpaned1 = gtk_hpaned_new ();
247 gtk_widget_show (hpaned1);
248 gtk_paned_pack1 (GTK_PANED (vpaned1), hpaned1, TRUE, TRUE);
249 gtk_paned_set_position (GTK_PANED (hpaned1), 800);
251 vbox2 = gtk_vbox_new (FALSE, 0);
252 gtk_widget_show (vbox2);
253 gtk_paned_pack1 (GTK_PANED (hpaned1), vbox2, FALSE, TRUE);
255 hbox1 = gtk_hbox_new (FALSE, 0);
256 gtk_widget_show (hbox1);
257 gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, FALSE, 3);
259 label21 = gtk_label_new (_("Page"));
260 gtk_widget_show (label21);
261 gtk_box_pack_start (GTK_BOX (hbox1), label21, FALSE, FALSE, 4);
262 gtk_label_set_justify (GTK_LABEL (label21), GTK_JUSTIFY_CENTER);
264 page_field = gtk_entry_new ();
265 gtk_widget_show (page_field);
266 gtk_box_pack_start (GTK_BOX (hbox1), page_field, FALSE, TRUE, 0);
268 page_locked_btn = gtk_check_button_new_with_mnemonic (_("Locked"));
269 gtk_widget_show (page_locked_btn);
270 gtk_box_pack_start (GTK_BOX (hbox1), page_locked_btn, FALSE, FALSE, 5);
272 jump_pc_btn = gtk_button_new_with_mnemonic (_(" Jump to PC "));
273 gtk_widget_show (jump_pc_btn);
274 gtk_box_pack_start (GTK_BOX (hbox1), jump_pc_btn, FALSE, FALSE, 4);
276 label22 = gtk_label_new (_("Mode"));
277 gtk_widget_show (label22);
278 gtk_box_pack_start (GTK_BOX (hbox1), label22, FALSE, FALSE, 5);
279 gtk_label_set_justify (GTK_LABEL (label22), GTK_JUSTIFY_RIGHT);
280 gtk_misc_set_alignment (GTK_MISC (label22), 1, 0.5);
282 mode_box = gtk_combo_new ();
283 g_object_set_data (G_OBJECT (GTK_COMBO (mode_box)->popwin),
284 "GladeParentKey", mode_box);
285 gtk_widget_show (mode_box);
286 gtk_box_pack_start (GTK_BOX (hbox1), mode_box, FALSE, FALSE, 0);
287 mode_box_items = g_list_append (mode_box_items, (gpointer) _("SH4"));
288 mode_box_items = g_list_append (mode_box_items, (gpointer) _("ARM7"));
289 mode_box_items = g_list_append (mode_box_items, (gpointer) _("ARM7T"));
290 gtk_combo_set_popdown_strings (GTK_COMBO (mode_box), mode_box_items);
291 g_list_free (mode_box_items);
293 mode_field = GTK_COMBO (mode_box)->entry;
294 gtk_widget_show (mode_field);
295 gtk_editable_set_editable (GTK_EDITABLE (mode_field), FALSE);
297 label23 = gtk_label_new ("");
298 gtk_widget_show (label23);
299 gtk_box_pack_start (GTK_BOX (hbox1), label23, TRUE, TRUE, 4);
300 gtk_label_set_justify (GTK_LABEL (label23), GTK_JUSTIFY_CENTER);
302 scrolledwindow7 = gtk_scrolled_window_new (NULL, NULL);
303 gtk_widget_show (scrolledwindow7);
304 gtk_box_pack_start (GTK_BOX (vbox2), scrolledwindow7, TRUE, TRUE, 0);
305 GTK_WIDGET_UNSET_FLAGS (scrolledwindow7, GTK_CAN_FOCUS);
306 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow7), GTK_SHADOW_IN);
308 disasm_list = gtk_clist_new (4);
309 gtk_widget_show (disasm_list);
310 gtk_container_add (GTK_CONTAINER (scrolledwindow7), disasm_list);
311 gtk_clist_set_column_width (GTK_CLIST (disasm_list), 0, 80);
312 gtk_clist_set_column_width (GTK_CLIST (disasm_list), 1, 80);
313 gtk_clist_set_column_width (GTK_CLIST (disasm_list), 2, 80);
314 gtk_clist_set_column_width (GTK_CLIST (disasm_list), 3, 80);
315 gtk_clist_column_titles_hide (GTK_CLIST (disasm_list));
317 label24 = gtk_label_new ("");
318 gtk_widget_show (label24);
319 gtk_clist_set_column_widget (GTK_CLIST (disasm_list), 0, label24);
321 label27 = gtk_label_new ("");
322 gtk_widget_show (label27);
323 gtk_clist_set_column_widget (GTK_CLIST (disasm_list), 1, label27);
325 label28 = gtk_label_new ("");
326 gtk_widget_show (label28);
327 gtk_clist_set_column_widget (GTK_CLIST (disasm_list), 2, label28);
329 label29 = gtk_label_new ("");
330 gtk_widget_show (label29);
331 gtk_clist_set_column_widget (GTK_CLIST (disasm_list), 3, label29);
333 scrolledwindow4 = gtk_scrolled_window_new (NULL, NULL);
334 gtk_widget_show (scrolledwindow4);
335 gtk_paned_pack2 (GTK_PANED (hpaned1), scrolledwindow4, FALSE, TRUE);
336 GTK_WIDGET_UNSET_FLAGS (scrolledwindow4, GTK_CAN_FOCUS);
337 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow4), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
338 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow4), GTK_SHADOW_IN);
340 reg_list = gtk_clist_new (2);
341 gtk_widget_show (reg_list);
342 gtk_container_add (GTK_CONTAINER (scrolledwindow4), reg_list);
343 gtk_clist_set_column_width (GTK_CLIST (reg_list), 0, 80);
344 gtk_clist_set_column_width (GTK_CLIST (reg_list), 1, 80);
345 gtk_clist_column_titles_hide (GTK_CLIST (reg_list));
347 label25 = gtk_label_new ("");
348 gtk_widget_show (label25);
349 gtk_clist_set_column_widget (GTK_CLIST (reg_list), 0, label25);
351 label30 = gtk_label_new ("");
352 gtk_widget_show (label30);
353 gtk_clist_set_column_widget (GTK_CLIST (reg_list), 1, label30);
355 scrolledwindow8 = gtk_scrolled_window_new (NULL, NULL);
356 gtk_widget_show (scrolledwindow8);
357 gtk_paned_pack2 (GTK_PANED (vpaned1), scrolledwindow8, FALSE, TRUE);
358 GTK_WIDGET_UNSET_FLAGS (scrolledwindow8, GTK_CAN_FOCUS);
359 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow8), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
360 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow8), GTK_SHADOW_IN);
362 output_list = gtk_clist_new (4);
363 gtk_widget_show (output_list);
364 gtk_container_add (GTK_CONTAINER (scrolledwindow8), output_list);
365 gtk_clist_set_column_width (GTK_CLIST (output_list), 0, 80);
366 gtk_clist_set_column_width (GTK_CLIST (output_list), 1, 80);
367 gtk_clist_set_column_width (GTK_CLIST (output_list), 2, 80);
368 gtk_clist_set_column_width (GTK_CLIST (output_list), 3, 80);
369 gtk_clist_column_titles_hide (GTK_CLIST (output_list));
371 label26 = gtk_label_new ("");
372 gtk_widget_show (label26);
373 gtk_clist_set_column_widget (GTK_CLIST (output_list), 0, label26);
375 label31 = gtk_label_new ("");
376 gtk_widget_show (label31);
377 gtk_clist_set_column_widget (GTK_CLIST (output_list), 1, label31);
379 label32 = gtk_label_new ("");
380 gtk_widget_show (label32);
381 gtk_clist_set_column_widget (GTK_CLIST (output_list), 2, label32);
383 debug_appbar = gnome_appbar_new (TRUE, TRUE, GNOME_PREFERENCES_NEVER);
384 gtk_widget_show (debug_appbar);
385 gnome_app_set_statusbar (GNOME_APP (debug_win), debug_appbar);
387 g_signal_connect ((gpointer) debug_win, "delete_event",
388 G_CALLBACK (on_debug_win_delete_event),
389 NULL);
390 gnome_app_install_menu_hints (GNOME_APP (debug_win), menubar1_uiinfo);
391 g_signal_connect ((gpointer) load_btn, "clicked",
392 G_CALLBACK (on_load_btn_clicked),
393 NULL);
394 g_signal_connect ((gpointer) reset_btn, "clicked",
395 G_CALLBACK (on_reset_btn_clicked),
396 NULL);
397 g_signal_connect ((gpointer) stop_btn, "clicked",
398 G_CALLBACK (on_stop_btn_clicked),
399 NULL);
400 g_signal_connect ((gpointer) step_btn, "clicked",
401 G_CALLBACK (on_step_btn_clicked),
402 NULL);
403 g_signal_connect ((gpointer) run_btn, "clicked",
404 G_CALLBACK (on_run_btn_clicked),
405 NULL);
406 g_signal_connect ((gpointer) runto_btn, "clicked",
407 G_CALLBACK (on_runto_btn_clicked),
408 NULL);
409 g_signal_connect ((gpointer) break_btn, "clicked",
410 G_CALLBACK (on_break_btn_clicked),
411 NULL);
412 g_signal_connect ((gpointer) loadstate_button, "clicked",
413 G_CALLBACK (on_loadstate_button_clicked),
414 NULL);
415 g_signal_connect ((gpointer) savestate_button, "clicked",
416 G_CALLBACK (on_savestate_button_clicked),
417 NULL);
418 g_signal_connect ((gpointer) page_field, "key_press_event",
419 G_CALLBACK (on_page_field_key_press_event),
420 NULL);
421 g_signal_connect ((gpointer) page_locked_btn, "toggled",
422 G_CALLBACK (on_page_locked_btn_toggled),
423 NULL);
424 g_signal_connect ((gpointer) jump_pc_btn, "clicked",
425 G_CALLBACK (on_jump_pc_btn_clicked),
426 NULL);
427 g_signal_connect ((gpointer) mode_field, "changed",
428 G_CALLBACK (on_mode_field_changed),
429 NULL);
430 g_signal_connect ((gpointer) disasm_list, "select_row",
431 G_CALLBACK (on_disasm_list_select_row),
432 NULL);
433 g_signal_connect ((gpointer) disasm_list, "unselect_row",
434 G_CALLBACK (on_disasm_list_unselect_row),
435 NULL);
436 g_signal_connect ((gpointer) output_list, "select_row",
437 G_CALLBACK (on_output_list_select_row),
438 NULL);
440 /* Store pointers to all widgets, for use by lookup_widget(). */
441 GLADE_HOOKUP_OBJECT_NO_REF (debug_win, debug_win, "debug_win");
442 GLADE_HOOKUP_OBJECT (debug_win, dock1, "dock1");
443 GLADE_HOOKUP_OBJECT (debug_win, menubar1_uiinfo[0].widget, "file1");
444 GLADE_HOOKUP_OBJECT (debug_win, file1_menu_uiinfo[0].widget, "new_file1");
445 GLADE_HOOKUP_OBJECT (debug_win, file1_menu_uiinfo[1].widget, "open1");
446 GLADE_HOOKUP_OBJECT (debug_win, file1_menu_uiinfo[2].widget, "save1");
447 GLADE_HOOKUP_OBJECT (debug_win, file1_menu_uiinfo[3].widget, "save_as1");
448 GLADE_HOOKUP_OBJECT (debug_win, file1_menu_uiinfo[4].widget, "separator1");
449 GLADE_HOOKUP_OBJECT (debug_win, file1_menu_uiinfo[5].widget, "exit1");
450 GLADE_HOOKUP_OBJECT (debug_win, menubar1_uiinfo[1].widget, "view1");
451 GLADE_HOOKUP_OBJECT (debug_win, view1_menu_uiinfo[0].widget, "view_memory");
452 GLADE_HOOKUP_OBJECT (debug_win, view1_menu_uiinfo[1].widget, "mem_mapped_regs1");
453 GLADE_HOOKUP_OBJECT (debug_win, menubar1_uiinfo[2].widget, "settings1");
454 GLADE_HOOKUP_OBJECT (debug_win, settings1_menu_uiinfo[0].widget, "preferences1");
455 GLADE_HOOKUP_OBJECT (debug_win, menubar1_uiinfo[3].widget, "help1");
456 GLADE_HOOKUP_OBJECT (debug_win, help1_menu_uiinfo[0].widget, "about1");
457 GLADE_HOOKUP_OBJECT (debug_win, toolbar1, "toolbar1");
458 GLADE_HOOKUP_OBJECT (debug_win, load_btn, "load_btn");
459 GLADE_HOOKUP_OBJECT (debug_win, reset_btn, "reset_btn");
460 GLADE_HOOKUP_OBJECT (debug_win, stop_btn, "stop_btn");
461 GLADE_HOOKUP_OBJECT (debug_win, step_btn, "step_btn");
462 GLADE_HOOKUP_OBJECT (debug_win, run_btn, "run_btn");
463 GLADE_HOOKUP_OBJECT (debug_win, runto_btn, "runto_btn");
464 GLADE_HOOKUP_OBJECT (debug_win, break_btn, "break_btn");
465 GLADE_HOOKUP_OBJECT (debug_win, loadstate_button, "loadstate_button");
466 GLADE_HOOKUP_OBJECT (debug_win, savestate_button, "savestate_button");
467 GLADE_HOOKUP_OBJECT (debug_win, vpaned1, "vpaned1");
468 GLADE_HOOKUP_OBJECT (debug_win, hpaned1, "hpaned1");
469 GLADE_HOOKUP_OBJECT (debug_win, vbox2, "vbox2");
470 GLADE_HOOKUP_OBJECT (debug_win, hbox1, "hbox1");
471 GLADE_HOOKUP_OBJECT (debug_win, label21, "label21");
472 GLADE_HOOKUP_OBJECT (debug_win, page_field, "page_field");
473 GLADE_HOOKUP_OBJECT (debug_win, page_locked_btn, "page_locked_btn");
474 GLADE_HOOKUP_OBJECT (debug_win, jump_pc_btn, "jump_pc_btn");
475 GLADE_HOOKUP_OBJECT (debug_win, label22, "label22");
476 GLADE_HOOKUP_OBJECT (debug_win, mode_box, "mode_box");
477 GLADE_HOOKUP_OBJECT (debug_win, mode_field, "mode_field");
478 GLADE_HOOKUP_OBJECT (debug_win, label23, "label23");
479 GLADE_HOOKUP_OBJECT (debug_win, scrolledwindow7, "scrolledwindow7");
480 GLADE_HOOKUP_OBJECT (debug_win, disasm_list, "disasm_list");
481 GLADE_HOOKUP_OBJECT (debug_win, label24, "label24");
482 GLADE_HOOKUP_OBJECT (debug_win, label27, "label27");
483 GLADE_HOOKUP_OBJECT (debug_win, label28, "label28");
484 GLADE_HOOKUP_OBJECT (debug_win, label29, "label29");
485 GLADE_HOOKUP_OBJECT (debug_win, scrolledwindow4, "scrolledwindow4");
486 GLADE_HOOKUP_OBJECT (debug_win, reg_list, "reg_list");
487 GLADE_HOOKUP_OBJECT (debug_win, label25, "label25");
488 GLADE_HOOKUP_OBJECT (debug_win, label30, "label30");
489 GLADE_HOOKUP_OBJECT (debug_win, scrolledwindow8, "scrolledwindow8");
490 GLADE_HOOKUP_OBJECT (debug_win, output_list, "output_list");
491 GLADE_HOOKUP_OBJECT (debug_win, label26, "label26");
492 GLADE_HOOKUP_OBJECT (debug_win, label31, "label31");
493 GLADE_HOOKUP_OBJECT (debug_win, label32, "label32");
494 GLADE_HOOKUP_OBJECT (debug_win, debug_appbar, "debug_appbar");
495 GLADE_HOOKUP_OBJECT_NO_REF (debug_win, tooltips, "tooltips");
497 return debug_win;
498 }
500 GtkWidget*
501 create_mmr_win (void)
502 {
503 GtkWidget *mmr_win;
504 GtkWidget *vbox1;
505 GtkWidget *mmr_notebook;
506 GtkWidget *empty_notebook_page;
507 GtkWidget *label16;
508 GtkWidget *hbuttonbox1;
509 GtkWidget *mmr_close;
511 mmr_win = gtk_window_new (GTK_WINDOW_TOPLEVEL);
512 gtk_window_set_title (GTK_WINDOW (mmr_win), _("lxDream! - Memory-Mapped Registers"));
513 gtk_window_set_default_size (GTK_WINDOW (mmr_win), 600, 600);
515 vbox1 = gtk_vbox_new (FALSE, 0);
516 gtk_widget_show (vbox1);
517 gtk_container_add (GTK_CONTAINER (mmr_win), vbox1);
519 mmr_notebook = gtk_notebook_new ();
520 gtk_widget_show (mmr_notebook);
521 gtk_box_pack_start (GTK_BOX (vbox1), mmr_notebook, TRUE, TRUE, 0);
522 gtk_notebook_set_tab_pos (GTK_NOTEBOOK (mmr_notebook), GTK_POS_LEFT);
524 empty_notebook_page = gtk_vbox_new (FALSE, 0);
525 gtk_widget_show (empty_notebook_page);
526 gtk_container_add (GTK_CONTAINER (mmr_notebook), empty_notebook_page);
528 label16 = gtk_label_new (_("label16"));
529 gtk_widget_show (label16);
530 gtk_notebook_set_tab_label (GTK_NOTEBOOK (mmr_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (mmr_notebook), 0), label16);
531 gtk_label_set_justify (GTK_LABEL (label16), GTK_JUSTIFY_CENTER);
533 hbuttonbox1 = gtk_hbutton_box_new ();
534 gtk_widget_show (hbuttonbox1);
535 gtk_box_pack_start (GTK_BOX (vbox1), hbuttonbox1, FALSE, TRUE, 0);
536 gtk_box_set_spacing (GTK_BOX (hbuttonbox1), 30);
538 mmr_close = gtk_button_new_with_mnemonic (_("Close"));
539 gtk_widget_show (mmr_close);
540 gtk_container_add (GTK_CONTAINER (hbuttonbox1), mmr_close);
541 GTK_WIDGET_SET_FLAGS (mmr_close, GTK_CAN_DEFAULT);
543 g_signal_connect ((gpointer) mmr_win, "delete_event",
544 G_CALLBACK (on_mmr_win_delete_event),
545 NULL);
546 g_signal_connect ((gpointer) mmr_close, "clicked",
547 G_CALLBACK (on_mmr_close_clicked),
548 NULL);
550 /* Store pointers to all widgets, for use by lookup_widget(). */
551 GLADE_HOOKUP_OBJECT_NO_REF (mmr_win, mmr_win, "mmr_win");
552 GLADE_HOOKUP_OBJECT (mmr_win, vbox1, "vbox1");
553 GLADE_HOOKUP_OBJECT (mmr_win, mmr_notebook, "mmr_notebook");
554 GLADE_HOOKUP_OBJECT (mmr_win, label16, "label16");
555 GLADE_HOOKUP_OBJECT (mmr_win, hbuttonbox1, "hbuttonbox1");
556 GLADE_HOOKUP_OBJECT (mmr_win, mmr_close, "mmr_close");
558 return mmr_win;
559 }
561 GtkWidget*
562 create_about_win (void)
563 {
564 const gchar *authors[] = {
565 "Nathan Keynes",
566 NULL
567 };
568 const gchar *documenters[] = { NULL };
569 /* TRANSLATORS: Replace this string with your names, one name per line. */
570 gchar *translators = _("translator_credits");
571 GdkPixbuf *about_win_logo_pixbuf;
572 GtkWidget *about_win;
574 if (!strcmp (translators, "translator_credits"))
575 translators = NULL;
576 about_win_logo_pixbuf = create_pixbuf ("dream/dcemu.gif");
577 about_win = gnome_about_new ("Dream", VERSION,
578 _("Copyright(c) 2002 Nathan Keynes"),
579 "",
580 authors,
581 documenters,
582 translators,
583 about_win_logo_pixbuf);
584 gtk_container_set_border_width (GTK_CONTAINER (about_win), 1);
585 gtk_window_set_type_hint (GTK_WINDOW (about_win), GDK_WINDOW_TYPE_HINT_DIALOG);
587 /* Store pointers to all widgets, for use by lookup_widget(). */
588 GLADE_HOOKUP_OBJECT_NO_REF (about_win, about_win, "about_win");
590 return about_win;
591 }
593 GtkWidget*
594 create_dump_win (void)
595 {
596 GtkWidget *dump_win;
597 GtkWidget *vbox3;
598 GtkWidget *hbox2;
599 GtkWidget *label34;
600 GtkWidget *dump_from;
601 GtkWidget *label35;
602 GtkWidget *dump_to;
603 GtkWidget *dump_view_button;
604 GtkWidget *label36;
605 GtkWidget *scrolledwindow9;
606 GtkWidget *dump_text;
608 dump_win = gtk_window_new (GTK_WINDOW_TOPLEVEL);
609 gtk_window_set_title (GTK_WINDOW (dump_win), _("Memory dump"));
611 vbox3 = gtk_vbox_new (FALSE, 0);
612 gtk_widget_show (vbox3);
613 gtk_container_add (GTK_CONTAINER (dump_win), vbox3);
615 hbox2 = gtk_hbox_new (FALSE, 0);
616 gtk_widget_show (hbox2);
617 gtk_box_pack_start (GTK_BOX (vbox3), hbox2, FALSE, TRUE, 3);
619 label34 = gtk_label_new (_(" From "));
620 gtk_widget_show (label34);
621 gtk_box_pack_start (GTK_BOX (hbox2), label34, FALSE, FALSE, 0);
623 dump_from = gtk_entry_new ();
624 gtk_widget_show (dump_from);
625 gtk_box_pack_start (GTK_BOX (hbox2), dump_from, FALSE, TRUE, 0);
627 label35 = gtk_label_new (_(" To "));
628 gtk_widget_show (label35);
629 gtk_box_pack_start (GTK_BOX (hbox2), label35, FALSE, FALSE, 0);
631 dump_to = gtk_entry_new ();
632 gtk_widget_show (dump_to);
633 gtk_box_pack_start (GTK_BOX (hbox2), dump_to, FALSE, TRUE, 0);
635 dump_view_button = gtk_button_new_with_mnemonic (_("View"));
636 gtk_widget_show (dump_view_button);
637 gtk_box_pack_start (GTK_BOX (hbox2), dump_view_button, FALSE, FALSE, 0);
639 label36 = gtk_label_new (_(" "));
640 gtk_widget_show (label36);
641 gtk_box_pack_start (GTK_BOX (hbox2), label36, TRUE, TRUE, 0);
643 scrolledwindow9 = gtk_scrolled_window_new (NULL, NULL);
644 gtk_widget_show (scrolledwindow9);
645 gtk_box_pack_start (GTK_BOX (vbox3), scrolledwindow9, TRUE, TRUE, 0);
646 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow9), GTK_SHADOW_IN);
648 dump_text = gtk_text_view_new ();
649 gtk_widget_show (dump_text);
650 gtk_container_add (GTK_CONTAINER (scrolledwindow9), dump_text);
652 /* Store pointers to all widgets, for use by lookup_widget(). */
653 GLADE_HOOKUP_OBJECT_NO_REF (dump_win, dump_win, "dump_win");
654 GLADE_HOOKUP_OBJECT (dump_win, vbox3, "vbox3");
655 GLADE_HOOKUP_OBJECT (dump_win, hbox2, "hbox2");
656 GLADE_HOOKUP_OBJECT (dump_win, label34, "label34");
657 GLADE_HOOKUP_OBJECT (dump_win, dump_from, "dump_from");
658 GLADE_HOOKUP_OBJECT (dump_win, label35, "label35");
659 GLADE_HOOKUP_OBJECT (dump_win, dump_to, "dump_to");
660 GLADE_HOOKUP_OBJECT (dump_win, dump_view_button, "dump_view_button");
661 GLADE_HOOKUP_OBJECT (dump_win, label36, "label36");
662 GLADE_HOOKUP_OBJECT (dump_win, scrolledwindow9, "scrolledwindow9");
663 GLADE_HOOKUP_OBJECT (dump_win, dump_text, "dump_text");
665 return dump_win;
666 }
668 GtkWidget*
669 create_watch_win (void)
670 {
671 GtkWidget *watch_win;
672 GtkWidget *vbox4;
673 GtkWidget *hbox4;
674 GtkWidget *label37;
675 GtkWidget *watch_start_addr;
676 GtkWidget *label38;
677 GtkWidget *watch_end_addr;
678 GtkWidget *label39;
679 GtkWidget *combo1;
680 GtkWidget *watch_type;
681 GtkWidget *button_add_watch;
682 GtkWidget *scrolledwindow10;
683 GtkWidget *treeview1;
684 GtkWidget *hbox5;
685 GtkWidget *label40;
686 GtkWidget *button_clear_all;
687 GtkWidget *button_close;
689 watch_win = gtk_window_new (GTK_WINDOW_TOPLEVEL);
690 gtk_window_set_title (GTK_WINDOW (watch_win), _("Watchpoints"));
692 vbox4 = gtk_vbox_new (FALSE, 0);
693 gtk_widget_show (vbox4);
694 gtk_container_add (GTK_CONTAINER (watch_win), vbox4);
696 hbox4 = gtk_hbox_new (FALSE, 0);
697 gtk_widget_show (hbox4);
698 gtk_box_pack_start (GTK_BOX (vbox4), hbox4, FALSE, TRUE, 3);
700 label37 = gtk_label_new (_("Start addr "));
701 gtk_widget_show (label37);
702 gtk_box_pack_start (GTK_BOX (hbox4), label37, FALSE, FALSE, 3);
704 watch_start_addr = gtk_entry_new ();
705 gtk_widget_show (watch_start_addr);
706 gtk_box_pack_start (GTK_BOX (hbox4), watch_start_addr, FALSE, TRUE, 0);
708 label38 = gtk_label_new (_("End addr"));
709 gtk_widget_show (label38);
710 gtk_box_pack_start (GTK_BOX (hbox4), label38, FALSE, FALSE, 3);
712 watch_end_addr = gtk_entry_new ();
713 gtk_widget_show (watch_end_addr);
714 gtk_box_pack_start (GTK_BOX (hbox4), watch_end_addr, FALSE, TRUE, 0);
716 label39 = gtk_label_new (_("Type"));
717 gtk_widget_show (label39);
718 gtk_box_pack_start (GTK_BOX (hbox4), label39, FALSE, FALSE, 3);
720 combo1 = gtk_combo_new ();
721 g_object_set_data (G_OBJECT (GTK_COMBO (combo1)->popwin),
722 "GladeParentKey", combo1);
723 gtk_widget_show (combo1);
724 gtk_box_pack_start (GTK_BOX (hbox4), combo1, TRUE, TRUE, 0);
726 watch_type = GTK_COMBO (combo1)->entry;
727 gtk_widget_show (watch_type);
729 button_add_watch = gtk_button_new_with_mnemonic (_("Add Watch"));
730 gtk_widget_show (button_add_watch);
731 gtk_box_pack_start (GTK_BOX (hbox4), button_add_watch, FALSE, FALSE, 3);
733 scrolledwindow10 = gtk_scrolled_window_new (NULL, NULL);
734 gtk_widget_show (scrolledwindow10);
735 gtk_box_pack_start (GTK_BOX (vbox4), scrolledwindow10, TRUE, TRUE, 0);
737 treeview1 = gtk_tree_view_new ();
738 gtk_widget_show (treeview1);
739 gtk_container_add (GTK_CONTAINER (scrolledwindow10), treeview1);
740 gtk_tree_view_set_enable_search (GTK_TREE_VIEW (treeview1), FALSE);
742 hbox5 = gtk_hbox_new (FALSE, 0);
743 gtk_widget_show (hbox5);
744 gtk_box_pack_start (GTK_BOX (vbox4), hbox5, FALSE, TRUE, 3);
746 label40 = gtk_label_new ("");
747 gtk_widget_show (label40);
748 gtk_box_pack_start (GTK_BOX (hbox5), label40, TRUE, TRUE, 0);
750 button_clear_all = gtk_button_new_with_mnemonic (_("Clear all"));
751 gtk_widget_show (button_clear_all);
752 gtk_box_pack_start (GTK_BOX (hbox5), button_clear_all, FALSE, FALSE, 3);
754 button_close = gtk_button_new_with_mnemonic (_("Close"));
755 gtk_widget_show (button_close);
756 gtk_box_pack_start (GTK_BOX (hbox5), button_close, FALSE, FALSE, 5);
758 g_signal_connect ((gpointer) button_add_watch, "clicked",
759 G_CALLBACK (on_button_add_watch_clicked),
760 NULL);
761 g_signal_connect ((gpointer) button_clear_all, "clicked",
762 G_CALLBACK (on_button_clear_all_clicked),
763 NULL);
764 g_signal_connect ((gpointer) button_close, "clicked",
765 G_CALLBACK (on_button_close_clicked),
766 NULL);
768 /* Store pointers to all widgets, for use by lookup_widget(). */
769 GLADE_HOOKUP_OBJECT_NO_REF (watch_win, watch_win, "watch_win");
770 GLADE_HOOKUP_OBJECT (watch_win, vbox4, "vbox4");
771 GLADE_HOOKUP_OBJECT (watch_win, hbox4, "hbox4");
772 GLADE_HOOKUP_OBJECT (watch_win, label37, "label37");
773 GLADE_HOOKUP_OBJECT (watch_win, watch_start_addr, "watch_start_addr");
774 GLADE_HOOKUP_OBJECT (watch_win, label38, "label38");
775 GLADE_HOOKUP_OBJECT (watch_win, watch_end_addr, "watch_end_addr");
776 GLADE_HOOKUP_OBJECT (watch_win, label39, "label39");
777 GLADE_HOOKUP_OBJECT (watch_win, combo1, "combo1");
778 GLADE_HOOKUP_OBJECT (watch_win, watch_type, "watch_type");
779 GLADE_HOOKUP_OBJECT (watch_win, button_add_watch, "button_add_watch");
780 GLADE_HOOKUP_OBJECT (watch_win, scrolledwindow10, "scrolledwindow10");
781 GLADE_HOOKUP_OBJECT (watch_win, treeview1, "treeview1");
782 GLADE_HOOKUP_OBJECT (watch_win, hbox5, "hbox5");
783 GLADE_HOOKUP_OBJECT (watch_win, label40, "label40");
784 GLADE_HOOKUP_OBJECT (watch_win, button_clear_all, "button_clear_all");
785 GLADE_HOOKUP_OBJECT (watch_win, button_close, "button_close");
787 return watch_win;
788 }
.