X-Git-Url: http://gitweb.hugovil.com/?a=blobdiff_plain;f=src%2Femugtk.c;h=f84ab0b0fa1964dba746449e1a919596800f25f5;hb=9cddfd237c6aff9a7a05c637ef7eac3b57580c31;hp=3a111cbcb4dc997686f4938530bf21e3ff017ded;hpb=43cc485237ad6fab2ca1506ff3d3f4b1dfb904d5;p=emu8051.git diff --git a/src/emugtk.c b/src/emugtk.c index 3a111cb..f84ab0b 100644 --- a/src/emugtk.c +++ b/src/emugtk.c @@ -253,25 +253,18 @@ emugtk_window_init(void) GtkWidget *main_vbox; GtkWidget *menu_bar; GtkWidget *buttons_bar; - GtkWidget *emufixed; - GtkWidget *fixed_frame; + GtkWidget *scrollwin; + GtkWidget *hpaned; + GtkWidget *vpaned; mainwin = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(mainwin), PACKAGE); - gtk_widget_set_usize(GTK_WIDGET(mainwin), - MAIN_WIN_WIDTH, MAIN_WIN_HEIGHT); gtk_container_set_border_width(GTK_CONTAINER(mainwin), 0); /* Window DESTROY event. */ g_signal_connect(mainwin, "destroy", G_CALLBACK(WindowDestroyEvent), NULL); - /* - * Setting main window geometry based on command line options - * (if specified). - */ - /*MainWindowSetGeometry();*/ - /* * main_vbox contains the menu bar and body_vbox (for all remaining * items). @@ -288,25 +281,32 @@ emugtk_window_init(void) /* Adding buttons bar to main_vbox */ gtk_box_pack_start(GTK_BOX(main_vbox), buttons_bar, FALSE, FALSE, 1); - /* Emulator fixed window. */ - emufixed = gtk_fixed_new(); - gtk_widget_set_usize(GTK_WIDGET(emufixed), MAIN_WIN_WIDTH, - REG_WIN_HEIGHT + MEM_WIN_HEIGHT + 10); + /* + * vpaned will contain: + * Top: registers and disassembly windows. + * Bottom: memory window + */ + vpaned = gtk_vpaned_new(); + + /* hpaned will contain registers and disassembly windows. */ + hpaned = gtk_hpaned_new(); /* 8051 registers frame. */ - fixed_frame = regwin_init(REG_WIN_WIDTH, REG_WIN_HEIGHT); - gtk_fixed_put(GTK_FIXED(emufixed), fixed_frame, 0, 0); + scrollwin = regwin_init(); + gtk_paned_pack1(GTK_PANED(hpaned), scrollwin, FALSE, FALSE); /* Program disassembly frame. */ - fixed_frame = pgmwin_init(PGM_WIN_WIDTH, PGM_WIN_HEIGHT); - gtk_fixed_put(GTK_FIXED(emufixed), fixed_frame, REG_WIN_WIDTH + 10, 0); + scrollwin = pgmwin_init(); + gtk_paned_pack2(GTK_PANED(hpaned), scrollwin, TRUE, FALSE); + + gtk_paned_pack1(GTK_PANED(vpaned), hpaned, FALSE, FALSE); /* Memory dump frame. */ - fixed_frame = memwin_init(MEM_WIN_WIDTH, MEM_WIN_HEIGHT); - gtk_fixed_put(GTK_FIXED(emufixed), fixed_frame, 0, REG_WIN_HEIGHT); + scrollwin = memwin_init(); + gtk_paned_pack2(GTK_PANED(vpaned), scrollwin, TRUE, FALSE); - /* Adding fixed window to main_vbox */ - gtk_box_pack_start(GTK_BOX(main_vbox), emufixed, FALSE, FALSE, 1); + /* Adding vpaned window to main_vbox */ + gtk_box_pack_start(GTK_BOX(main_vbox), vpaned, true, true, 1); /* Adding the main_vbox to the main window. */ gtk_container_add(GTK_CONTAINER(mainwin), main_vbox);