A few more bug fixes for the ram watch window.

This commit is contained in:
Matthew Budd 2020-05-12 22:39:03 -04:00
parent 57561ad563
commit 9583c0fbdd
1 changed files with 58 additions and 55 deletions

View File

@ -610,32 +610,32 @@ static GtkWidget* CreateRamWatchMenubar( GtkWidget* window)
return menubar; return menubar;
} }
void closeMemoryWatchEntryWindow(GtkWidget* w, GdkEvent* e, ramWatchEntryWin_t *ew) //void closeMemoryWatchEntryWindow(GtkWidget* w, GdkEvent* e, ramWatchEntryWin_t *ew)
{ //{
//
// strcpy( name, gtk_entry_get_text ( GTK_ENTRY(ew->txt_entry_name) ) ); //// strcpy( name, gtk_entry_get_text ( GTK_ENTRY(ew->txt_entry_name) ) );
//
//*addr = strtol( gtk_entry_get_text ( GTK_ENTRY(ew->txt_entry_addr) ), NULL, 16 ); ////*addr = strtol( gtk_entry_get_text ( GTK_ENTRY(ew->txt_entry_addr) ), NULL, 16 );
//
//*type = gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(ew->chkbox) ); ////*type = gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(ew->chkbox) );
//
// if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(ew->button4) ) ) //// if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(ew->button4) ) )
// { //// {
// *size = 4; //// *size = 4;
// } //// }
// else if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(ew->button2) ) ) //// else if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(ew->button2) ) )
// { //// {
// *size = 2; //// *size = 2;
// } //// }
// else //// else
// { //// {
// *size = 1; //// *size = 1;
// } //// }
//
delete ew; // delete ew;
//
gtk_widget_destroy(w); // gtk_widget_destroy(w);
} //}
static int openRamWatchEntryDialog( ramWatchWin_t *rww, std::string *name, int *addr, int *type, int *size, int idx ) static int openRamWatchEntryDialog( ramWatchWin_t *rww, std::string *name, int *addr, int *type, int *size, int idx )
{ {
@ -717,10 +717,11 @@ static int openRamWatchEntryDialog( ramWatchWin_t *rww, std::string *name, int *
retval = gtk_dialog_run(GTK_DIALOG(ew->win)); retval = gtk_dialog_run(GTK_DIALOG(ew->win));
if ( retval ) printf("retval %i\n", retval );
//
if ( retval == GTK_RESPONSE_OK )
{ {
// FIXME - what error checking should be done here // FIXME - what error checking should be done here
}
name->assign( gtk_entry_get_text ( GTK_ENTRY(ew->txt_entry_name) ) ); name->assign( gtk_entry_get_text ( GTK_ENTRY(ew->txt_entry_name) ) );
@ -740,15 +741,16 @@ static int openRamWatchEntryDialog( ramWatchWin_t *rww, std::string *name, int *
{ {
*size = 1; *size = 1;
} }
}
//printf("retval %i\n", retval ); //g_signal_connect(ew->win, "delete-event", G_CALLBACK(closeMemoryWatchEntryWindow), ew);
//g_signal_connect(ew->win, "response", G_CALLBACK(closeMemoryWatchEntryWindow), ew);
g_signal_connect(ew->win, "delete-event", G_CALLBACK(closeMemoryWatchEntryWindow), ew); gtk_widget_destroy(ew->win);
g_signal_connect(ew->win, "response", G_CALLBACK(closeMemoryWatchEntryWindow), ew);
//gtk_widget_destroy(win); delete ew;
return 0; return ( retval == GTK_RESPONSE_OK );
} }
static void editRamWatch( GtkButton *button, static void editRamWatch( GtkButton *button,
@ -788,7 +790,7 @@ static void editRamWatch( GtkButton *button,
if ( rw != NULL ) if ( rw != NULL )
{ {
openRamWatchEntryDialog( rww, &rw->name, &rw->addr, &rw->type, &rw->size, indexArray[0] ); openRamWatchEntryDialog( rww, &rw->name, &rw->addr, &rw->type, &rw->size, indexArray[0] );
showAllRamWatchResults(1); showAllRamWatchResults(0);
} }
} }
tmpList = tmpList->next; tmpList = tmpList->next;
@ -845,9 +847,10 @@ static void newRamWatch( GtkButton *button,
std::string name; std::string name;
int addr = 0, type = 0, size = 0; int addr = 0, type = 0, size = 0;
openRamWatchEntryDialog( rww, &name, &addr, &type, &size, -1 ); if ( openRamWatchEntryDialog( rww, &name, &addr, &type, &size, -1 ) )
{
ramWatchList.add_entry( name.c_str(), addr, type, size ); ramWatchList.add_entry( name.c_str(), addr, type, size );
}
showAllRamWatchResults(1); showAllRamWatchResults(1);
} }