+ GtkWidget *main_vbox;
+ GtkWidget *menu_bar;
+ GtkWidget *buttons_bar;
+ GtkWidget *emufixed;
+ GtkWidget *fixed_frame;
+
+ 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).
+ */
+ main_vbox = gtk_vbox_new(FALSE, 1);
+
+ /* Creating the menu bar. */
+ menu_bar = AddMenu();
+ /* Adding menu bar to main_vbox */
+ gtk_box_pack_start(GTK_BOX(main_vbox), menu_bar, FALSE, FALSE, 1);
+
+ /* Creating the buttons bar. */
+ buttons_bar = AddButtons();
+ /* 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);
+
+ /* 8051 registers frame. */
+ fixed_frame = regwin_init(REG_WIN_WIDTH, REG_WIN_HEIGHT);
+ gtk_fixed_put(GTK_FIXED(emufixed), fixed_frame, 0, 0);
+
+ /* 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);
+
+ /* 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);
+
+ /* Adding fixed window to main_vbox */
+ gtk_box_pack_start(GTK_BOX(main_vbox), emufixed, FALSE, FALSE, 1);
+
+ /* Adding the main_vbox to the main window. */
+ gtk_container_add(GTK_CONTAINER(mainwin), main_vbox);
+
+ gtk_widget_show_all(mainwin);