static int create_register_display( GtkBox *parent, gtkui_font font ) { size_t i; #if GTK_CHECK_VERSION( 3, 0, 0 ) register_display = gtk_grid_new(); gtk_grid_set_row_spacing( GTK_GRID( register_display ), 4 ); gtk_container_set_border_width( GTK_CONTAINER( register_display ), 6 ); #else /* #if GTK_CHECK_VERSION( 3, 0, 0 ) */ register_display = gtk_table_new( 9, 2, FALSE ); #endif gtk_box_pack_start( parent, register_display, FALSE, FALSE, 0 ); for( i = 0; i < 18; i++ ) { registers[i] = gtk_label_new( "" ); gtkui_set_font( registers[i], font ); #if GTK_CHECK_VERSION( 3, 0, 0 ) gtk_grid_attach( GTK_GRID( register_display ), registers[i], i%2, i/2, 1, 1 ); #else gtk_table_attach( GTK_TABLE( register_display ), registers[i], i%2, i%2+1, i/2, i/2+1, 0, 0, 2, 2 ); #endif } return 0; }
static int create_disassembly( GtkBox *parent, gtkui_font font ) { size_t i; GtkWidget *scrollbar; gchar *disassembly_titles[] = { "Address", "Instruction" }; /* A box to hold the disassembly listing and the scrollbar */ disassembly_box = gtk_hbox_new( FALSE, 0 ); gtk_box_pack_start_defaults( parent, disassembly_box ); /* The disassembly CList itself */ disassembly = gtk_clist_new_with_titles( 2, disassembly_titles ); gtkui_set_font( disassembly, font ); gtk_clist_column_titles_passive( GTK_CLIST( disassembly ) ); for( i = 0; i < 2; i++ ) gtk_clist_set_column_auto_resize( GTK_CLIST( disassembly ), i, TRUE ); gtk_box_pack_start_defaults( GTK_BOX( disassembly_box ), disassembly ); /* The disassembly scrollbar */ disassembly_scrollbar_adjustment = gtk_adjustment_new( 0, 0x0000, 0xffff, 0.5, 20, 20 ); gtk_signal_connect( GTK_OBJECT( disassembly_scrollbar_adjustment ), "value-changed", GTK_SIGNAL_FUNC( move_disassembly ), NULL ); scrollbar = gtk_vscrollbar_new( GTK_ADJUSTMENT( disassembly_scrollbar_adjustment ) ); gtk_box_pack_start( GTK_BOX( disassembly_box ), scrollbar, FALSE, FALSE, 0 ); gtkui_scroll_connect( GTK_CLIST( disassembly ), GTK_ADJUSTMENT( disassembly_scrollbar_adjustment ) ); return 0; }
static int create_register_display( GtkBox *parent, gtkui_font font ) { size_t i; register_display = gtk_table_new( 9, 2, FALSE ); gtk_box_pack_start( parent, register_display, FALSE, FALSE, 0 ); for( i = 0; i < 18; i++ ) { registers[i] = gtk_label_new( "" ); gtkui_set_font( registers[i], font ); gtk_table_attach( GTK_TABLE( register_display ), registers[i], i%2, i%2+1, i/2, i/2+1, 0, 0, 2, 2 ); } return 0; }
static int create_stack_display( GtkBox *parent, gtkui_font font ) { size_t i; gchar *stack_titles[] = { "Address", "Value" }; stack = gtk_clist_new_with_titles( 2, stack_titles ); gtkui_set_font( stack, font ); gtk_clist_column_titles_passive( GTK_CLIST( stack ) ); for( i = 0; i < 2; i++ ) gtk_clist_set_column_auto_resize( GTK_CLIST( stack ), i, TRUE ); gtk_box_pack_start( parent, stack, TRUE, TRUE, 5 ); gtk_signal_connect( GTK_OBJECT( stack ), "select-row", GTK_SIGNAL_FUNC( stack_click ), NULL ); return 0; }