diff --git a/src/drivers/sdl/cheat.cpp b/src/drivers/sdl/cheat.cpp index e15d1427..763aeeaa 100644 --- a/src/drivers/sdl/cheat.cpp +++ b/src/drivers/sdl/cheat.cpp @@ -33,1065 +33,1132 @@ extern Config *g_config; -static void updateAllActvCheatLists( bool redraw ); +static void updateAllActvCheatLists (bool redraw); //----------------------------------------- class cheat_win_t -{ - public: +{ + public: - GtkTreeStore *actv_cheats_store; - GtkTreeStore *ram_match_store; - GtkTreeIter actv_cheats_iter; - GtkTreeIter ram_match_iter; - int cheat_search_known_value; - int cheat_search_neq_value; - int cheat_search_gt_value; - int cheat_search_lt_value; - int new_cheat_addr; - int new_cheat_val ; - int new_cheat_cmp ; - std::string new_cheat_name; - bool wasPausedByCheats; - bool pauseWhileCheatsActv; - bool actv_cheat_redraw; + GtkTreeStore * actv_cheats_store; + GtkTreeStore *ram_match_store; + GtkTreeIter actv_cheats_iter; + GtkTreeIter ram_match_iter; + int cheat_search_known_value; + int cheat_search_neq_value; + int cheat_search_gt_value; + int cheat_search_lt_value; + int new_cheat_addr; + int new_cheat_val; + int new_cheat_cmp; + std::string new_cheat_name; + bool wasPausedByCheats; + bool pauseWhileCheatsActv; + bool actv_cheat_redraw; GtkWidget *actv_cheat_tree; GtkWidget *search_cheat_tree; - GtkWidget *neq_chkbox; - GtkWidget *lt_chkbox; - GtkWidget *gt_chkbox; + GtkWidget *neq_chkbox; + GtkWidget *lt_chkbox; + GtkWidget *gt_chkbox; - cheat_win_t(void) - { - actv_cheats_store = NULL; - ram_match_store = NULL; - cheat_search_known_value = 0; - cheat_search_neq_value = 0; - cheat_search_gt_value = 0; - cheat_search_lt_value = 0; - new_cheat_addr = -1; - new_cheat_val = -1; - new_cheat_cmp = -1; - wasPausedByCheats = false; - pauseWhileCheatsActv = false; - actv_cheat_redraw = true; - actv_cheat_tree = NULL; - search_cheat_tree = NULL; - neq_chkbox = NULL; - lt_chkbox = NULL; - gt_chkbox = NULL; - } + cheat_win_t (void) + { + actv_cheats_store = NULL; + ram_match_store = NULL; + cheat_search_known_value = 0; + cheat_search_neq_value = 0; + cheat_search_gt_value = 0; + cheat_search_lt_value = 0; + new_cheat_addr = -1; + new_cheat_val = -1; + new_cheat_cmp = -1; + wasPausedByCheats = false; + pauseWhileCheatsActv = false; + actv_cheat_redraw = true; + actv_cheat_tree = NULL; + search_cheat_tree = NULL; + neq_chkbox = NULL; + lt_chkbox = NULL; + gt_chkbox = NULL; + } - void showActiveCheatList( bool reset ); - void showCheatSearchResults(void); + void showActiveCheatList (bool reset); + void showCheatSearchResults (void); }; + static cheat_win_t *curr_cw = NULL; -static std::list cheatWinList; +static std::list < cheat_win_t * >cheatWinList; //******************************************************************************************************* // Cheat Window //******************************************************************************************************* -static int ShowCheatSearchResultsCallB(uint32 a, uint8 last, uint8 current) +static int ShowCheatSearchResultsCallB (uint32 a, uint8 last, uint8 current) { char addrStr[32], lastStr[32], curStr[32]; - sprintf( addrStr, "0x%04X ", a ); - sprintf( lastStr, " 0x%02X ", last ); - sprintf( curStr, " 0x%02X ", current ); + sprintf (addrStr, "0x%04X ", a); + sprintf (lastStr, " 0x%02X ", last); + sprintf (curStr, " 0x%02X ", current); - gtk_tree_store_append( curr_cw->ram_match_store, &curr_cw->ram_match_iter, NULL); // aquire iter + gtk_tree_store_append (curr_cw->ram_match_store, &curr_cw->ram_match_iter, NULL); // aquire iter - gtk_tree_store_set(curr_cw->ram_match_store, &curr_cw->ram_match_iter, - 0, addrStr, 1, lastStr, 2, curStr, - -1); + gtk_tree_store_set (curr_cw->ram_match_store, &curr_cw->ram_match_iter, + 0, addrStr, 1, lastStr, 2, curStr, -1); return 1; } -void cheat_win_t::showCheatSearchResults(void) +void cheat_win_t::showCheatSearchResults (void) { int total_matches = 0; - curr_cw = this; + curr_cw = this; - gtk_tree_store_clear(ram_match_store); + gtk_tree_store_clear (ram_match_store); - total_matches = FCEUI_CheatSearchGetCount(); + total_matches = FCEUI_CheatSearchGetCount (); //printf("Cheat Search Matches: %i \n", total_matches ); - FCEUI_CheatSearchGetRange( 0, total_matches, ShowCheatSearchResultsCallB ); + FCEUI_CheatSearchGetRange (0, total_matches, + ShowCheatSearchResultsCallB); } -static void cheatSearchReset( GtkButton *button, - cheat_win_t *cw) +static void cheatSearchReset (GtkButton * button, cheat_win_t * cw) { //printf("Cheat Search Reset!\n"); - //cheat_search_known_value = 0; - //cheat_search_neq_value = 0; - //cheat_search_gt_value = 0; - //cheat_search_lt_value = 0; + //cheat_search_known_value = 0; + //cheat_search_neq_value = 0; + //cheat_search_gt_value = 0; + //cheat_search_lt_value = 0; - FCEUI_CheatSearchBegin(); - cw->showCheatSearchResults(); + FCEUI_CheatSearchBegin (); + cw->showCheatSearchResults (); // Enable Cheat Search Buttons - Change Sensitivity } -static void cheatSearchKnown( GtkButton *button, - cheat_win_t *cw) +static void cheatSearchKnown (GtkButton * button, cheat_win_t * cw) { //printf("Cheat Search Known!\n"); - FCEUI_CheatSearchEnd(FCEU_SEARCH_NEWVAL_KNOWN, cw->cheat_search_known_value, 0); - cw->showCheatSearchResults(); + FCEUI_CheatSearchEnd (FCEU_SEARCH_NEWVAL_KNOWN, + cw->cheat_search_known_value, 0); + cw->showCheatSearchResults (); } -static void cheatSearchEqual( GtkButton *button, - cheat_win_t *cw) +static void cheatSearchEqual (GtkButton * button, cheat_win_t * cw) { //printf("Cheat Search Equal !\n"); - FCEUI_CheatSearchEnd(FCEU_SEARCH_PUERLY_RELATIVE_CHANGE, 0, 0); - cw->showCheatSearchResults(); + FCEUI_CheatSearchEnd (FCEU_SEARCH_PUERLY_RELATIVE_CHANGE, 0, 0); + cw->showCheatSearchResults (); } -static void cheatSearchNotEqual( GtkButton *button, - cheat_win_t *cw ) +static void cheatSearchNotEqual (GtkButton * button, cheat_win_t * cw) { - int checked = gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(cw->neq_chkbox) ); + int checked = + gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON + (cw->neq_chkbox)); //printf("Cheat Search NotEqual %i!\n", checked); - if ( checked ){ - FCEUI_CheatSearchEnd(FCEU_SEARCH_PUERLY_RELATIVE_CHANGE, 0, cw->cheat_search_neq_value); - } else { - FCEUI_CheatSearchEnd(FCEU_SEARCH_ANY_CHANGE, 0, 0); + if (checked) + { + FCEUI_CheatSearchEnd (FCEU_SEARCH_PUERLY_RELATIVE_CHANGE, 0, + cw->cheat_search_neq_value); } - cw->showCheatSearchResults(); + else + { + FCEUI_CheatSearchEnd (FCEU_SEARCH_ANY_CHANGE, 0, 0); + } + cw->showCheatSearchResults (); } -static void cheatSearchGreaterThan( GtkButton *button, - cheat_win_t *cw ) +static void cheatSearchGreaterThan (GtkButton * button, cheat_win_t * cw) { - int checked = gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(cw->gt_chkbox) ); + int checked = + gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON + (cw->gt_chkbox)); //printf("Cheat Search GreaterThan %i!\n", checked); - if ( checked ){ - FCEUI_CheatSearchEnd(FCEU_SEARCH_NEWVAL_GT_KNOWN, 0, cw->cheat_search_gt_value); - } else { - FCEUI_CheatSearchEnd(FCEU_SEARCH_NEWVAL_GT, 0, 0); + if (checked) + { + FCEUI_CheatSearchEnd (FCEU_SEARCH_NEWVAL_GT_KNOWN, 0, + cw->cheat_search_gt_value); } - cw->showCheatSearchResults(); + else + { + FCEUI_CheatSearchEnd (FCEU_SEARCH_NEWVAL_GT, 0, 0); + } + cw->showCheatSearchResults (); } -static void cheatSearchLessThan( GtkButton *button, - cheat_win_t *cw ) +static void cheatSearchLessThan (GtkButton * button, cheat_win_t * cw) { - int checked = gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(cw->lt_chkbox) ); + int checked = + gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON + (cw->lt_chkbox)); //printf("Cheat Search LessThan %i!\n", checked); - if ( checked ){ - FCEUI_CheatSearchEnd(FCEU_SEARCH_NEWVAL_LT_KNOWN, 0, cw->cheat_search_lt_value); - } else { - FCEUI_CheatSearchEnd(FCEU_SEARCH_NEWVAL_LT, 0, 0); + if (checked) + { + FCEUI_CheatSearchEnd (FCEU_SEARCH_NEWVAL_LT_KNOWN, 0, + cw->cheat_search_lt_value); } - cw->showCheatSearchResults(); + else + { + FCEUI_CheatSearchEnd (FCEU_SEARCH_NEWVAL_LT, 0, 0); + } + cw->showCheatSearchResults (); } -static void pauseDuringCheatWinActvCB( GtkToggleButton *button, - cheat_win_t *cw ) +static void pauseDuringCheatWinActvCB (GtkToggleButton * button, + cheat_win_t * cw) { - cw->pauseWhileCheatsActv = gtk_toggle_button_get_active(button); + cw->pauseWhileCheatsActv = gtk_toggle_button_get_active (button); - if ( cw->pauseWhileCheatsActv ) - { - if ( EmulationPaused == 0 ) - { - EmulationPaused = 1; - cw->wasPausedByCheats = true; - } - } - else - { - if ( EmulationPaused && cw->wasPausedByCheats ) - { - EmulationPaused = 0; - } - cw->wasPausedByCheats = false; - } - FCEU_printf("Emulation paused: %d\n", EmulationPaused); + if (cw->pauseWhileCheatsActv) + { + if (EmulationPaused == 0) + { + EmulationPaused = 1; + cw->wasPausedByCheats = true; + } + } + else + { + if (EmulationPaused && cw->wasPausedByCheats) + { + EmulationPaused = 0; + } + cw->wasPausedByCheats = false; + } + FCEU_printf ("Emulation paused: %d\n", EmulationPaused); } -static void cheatSearchValueEntryCB1( GtkWidget *widget, - cheat_win_t *cw ) +static void cheatSearchValueEntryCB1 (GtkWidget * widget, cheat_win_t * cw) { long value; const gchar *entry_text; - entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); + entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); - value = strtol( entry_text, NULL, 16 ); + value = strtol (entry_text, NULL, 16); - cw->cheat_search_known_value = value; + cw->cheat_search_known_value = value; - //printf("Cheat Value Entry contents: '%s' Value: 0x%02lx\n", entry_text, value); + //printf("Cheat Value Entry contents: '%s' Value: 0x%02lx\n", entry_text, value); } -static void cheatSearchValueEntryCB2( GtkWidget *widget, - cheat_win_t *cw ) +static void cheatSearchValueEntryCB2 (GtkWidget * widget, cheat_win_t * cw) { long value; const gchar *entry_text; - entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); + entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); - value = strtol( entry_text, NULL, 16 ); + value = strtol (entry_text, NULL, 16); - cw->cheat_search_neq_value = value; + cw->cheat_search_neq_value = value; - //printf("Cheat Value Entry contents: '%s' Value: 0x%02lx\n", entry_text, value); + //printf("Cheat Value Entry contents: '%s' Value: 0x%02lx\n", entry_text, value); } -static void cheatSearchValueEntryCB3( GtkWidget *widget, - cheat_win_t *cw ) +static void cheatSearchValueEntryCB3 (GtkWidget * widget, cheat_win_t * cw) { long value; const gchar *entry_text; - entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); + entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); - value = strtol( entry_text, NULL, 16 ); + value = strtol (entry_text, NULL, 16); - cw->cheat_search_gt_value = value; + cw->cheat_search_gt_value = value; - //printf("Cheat Value Entry contents: '%s' Value: 0x%02lx\n", entry_text, value); + //printf("Cheat Value Entry contents: '%s' Value: 0x%02lx\n", entry_text, value); } -static void cheatSearchValueEntryCB4( GtkWidget *widget, - cheat_win_t *cw ) +static void cheatSearchValueEntryCB4 (GtkWidget * widget, cheat_win_t * cw) { long value; const gchar *entry_text; - entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); + entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); - value = strtol( entry_text, NULL, 16 ); + value = strtol (entry_text, NULL, 16); - cw->cheat_search_lt_value = value; + cw->cheat_search_lt_value = value; - //printf("Cheat Value Entry contents: '%s' Value: 0x%02lx\n", entry_text, value); + //printf("Cheat Value Entry contents: '%s' Value: 0x%02lx\n", entry_text, value); } -static int activeCheatListCB(char *name, uint32 a, uint8 v, int c, int s, int type, void* data) +static int activeCheatListCB (char *name, uint32 a, uint8 v, int c, int s, + int type, void *data) { char addrStr[32], valStr[16], cmpStr[16]; //printf("Cheat Name:'%s' Addr:0x%04x Val:0x%02x \n", name, a, v ); - // - cheat_win_t *cw = (cheat_win_t *)data; + // + cheat_win_t *cw = (cheat_win_t *) data; - if ( cw->actv_cheat_redraw ) - { - gtk_tree_store_append( cw->actv_cheats_store, &cw->actv_cheats_iter, NULL); // aquire iter - } - - sprintf( addrStr, "0x%04X ", a ); - sprintf( valStr, " 0x%02X ", v ); - - if ( c >= 0 ){ - sprintf( cmpStr, " 0x%02X ", c ); - } else { - strcpy( cmpStr, " 0xFF "); + if (cw->actv_cheat_redraw) + { + gtk_tree_store_append (cw->actv_cheats_store, &cw->actv_cheats_iter, NULL); // aquire iter } - gtk_tree_store_set(cw->actv_cheats_store, &cw->actv_cheats_iter, - 0, s, 1, addrStr, 2, valStr, 3, cmpStr, 4, name, - -1); + sprintf (addrStr, "0x%04X ", a); + sprintf (valStr, " 0x%02X ", v); - if ( !cw->actv_cheat_redraw ) - { - if ( !gtk_tree_model_iter_next( GTK_TREE_MODEL(cw->actv_cheats_store), &cw->actv_cheats_iter ) ) - { - gtk_tree_store_append( cw->actv_cheats_store, &cw->actv_cheats_iter, NULL); // aquire iter - } - } + if (c >= 0) + { + sprintf (cmpStr, " 0x%02X ", c); + } + else + { + strcpy (cmpStr, " 0xFF "); + } - return 1; + gtk_tree_store_set (cw->actv_cheats_store, &cw->actv_cheats_iter, + 0, s, 1, addrStr, 2, valStr, 3, cmpStr, 4, name, + -1); + + if (!cw->actv_cheat_redraw) + { + if (!gtk_tree_model_iter_next + (GTK_TREE_MODEL (cw->actv_cheats_store), + &cw->actv_cheats_iter)) + { + gtk_tree_store_append (cw->actv_cheats_store, &cw->actv_cheats_iter, NULL); // aquire iter + } + } + + return 1; } -void cheat_win_t::showActiveCheatList( bool reset ) +void cheat_win_t::showActiveCheatList (bool reset) { - actv_cheat_redraw = reset; + actv_cheat_redraw = reset; - if ( actv_cheat_redraw ) - { - gtk_tree_store_clear(actv_cheats_store); - } - else - { - if ( !gtk_tree_model_get_iter_first( GTK_TREE_MODEL(actv_cheats_store), &actv_cheats_iter ) ) - { - //printf("No Tree Entries Loaded.\n"); - actv_cheat_redraw = 1; - } - } + if (actv_cheat_redraw) + { + gtk_tree_store_clear (actv_cheats_store); + } + else + { + if (!gtk_tree_model_get_iter_first + (GTK_TREE_MODEL (actv_cheats_store), &actv_cheats_iter)) + { + //printf("No Tree Entries Loaded.\n"); + actv_cheat_redraw = 1; + } + } - FCEUI_ListCheats( activeCheatListCB, (void*)this ); + FCEUI_ListCheats (activeCheatListCB, (void *) this); - actv_cheat_redraw = false; + actv_cheat_redraw = false; } -static void cheatListEnableToggle( GtkCellRendererToggle *renderer, - gchar *pathStr, - cheat_win_t *cw ) +static void cheatListEnableToggle (GtkCellRendererToggle * renderer, + gchar * pathStr, cheat_win_t * cw) { - GtkTreePath *path; + GtkTreePath *path; int depth; int *indexArray; - path = gtk_tree_path_new_from_string( pathStr ); + path = gtk_tree_path_new_from_string (pathStr); - if ( path == NULL ){ - printf("Error: gtk_tree_path_new_from_string failed\n"); + if (path == NULL) + { + printf ("Error: gtk_tree_path_new_from_string failed\n"); return; } - depth = gtk_tree_path_get_depth(path); - indexArray = gtk_tree_path_get_indices(path); + depth = gtk_tree_path_get_depth (path); + indexArray = gtk_tree_path_get_indices (path); - if ( depth > 0 ) + if (depth > 0) { - //printf("Toggle: %i\n", indexArray[0] ); - FCEUI_ToggleCheat( indexArray[0] ); + //printf("Toggle: %i\n", indexArray[0] ); + FCEUI_ToggleCheat (indexArray[0]); } - gtk_tree_path_free( path ); + gtk_tree_path_free (path); - updateAllActvCheatLists(0); + updateAllActvCheatLists (0); } -static void openCheatFile( GtkWidget *widget, - cheat_win_t *cw ) +static void openCheatFile (GtkWidget * widget, cheat_win_t * cw) { - GtkWidget* fileChooser; - GtkFileFilter* filterCht; - GtkFileFilter* filterAll; + GtkWidget *fileChooser; + GtkFileFilter *filterCht; + GtkFileFilter *filterAll; - filterCht = gtk_file_filter_new(); - filterAll = gtk_file_filter_new(); + filterCht = gtk_file_filter_new (); + filterAll = gtk_file_filter_new (); - gtk_file_filter_add_pattern(filterCht, "*.cht"); - gtk_file_filter_add_pattern(filterAll, "*"); + gtk_file_filter_add_pattern (filterCht, "*.cht"); + gtk_file_filter_add_pattern (filterAll, "*"); - gtk_file_filter_set_name(filterCht, "*.cht"); - gtk_file_filter_set_name(filterAll, "All Files"); + gtk_file_filter_set_name (filterCht, "*.cht"); + gtk_file_filter_set_name (filterAll, "All Files"); - fileChooser = gtk_file_chooser_dialog_new ("Open Cheat", GTK_WINDOW(MainWindow), - GTK_FILE_CHOOSER_ACTION_OPEN, "_Cancel", GTK_RESPONSE_CANCEL, - "_Open", GTK_RESPONSE_ACCEPT, NULL); - const char* last_dir; - g_config->getOption("SDL.LastOpenFile", &last_dir); - gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(fileChooser), last_dir); + fileChooser = + gtk_file_chooser_dialog_new ("Open Cheat", + GTK_WINDOW (MainWindow), + GTK_FILE_CHOOSER_ACTION_OPEN, + "_Cancel", GTK_RESPONSE_CANCEL, + "_Open", GTK_RESPONSE_ACCEPT, + NULL); + const char *last_dir; + g_config->getOption ("SDL.LastOpenFile", &last_dir); + gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (fileChooser), + last_dir); - gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(fileChooser), filterCht); - gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(fileChooser), filterAll); + gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (fileChooser), filterCht); + gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (fileChooser), filterAll); - if (gtk_dialog_run (GTK_DIALOG (fileChooser)) ==GTK_RESPONSE_ACCEPT) + if (gtk_dialog_run (GTK_DIALOG (fileChooser)) == GTK_RESPONSE_ACCEPT) { FILE *fp; - char* filename; - - filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (fileChooser)); + char *filename; + + filename = + gtk_file_chooser_get_filename (GTK_FILE_CHOOSER + (fileChooser)); gtk_widget_destroy (fileChooser); - fp = fopen( filename, "r"); + fp = fopen (filename, "r"); - if ( fp != NULL ) + if (fp != NULL) { - FCEU_LoadGameCheats( fp, 0 ); - fclose(fp); + FCEU_LoadGameCheats (fp, 0); + fclose (fp); } //g_config->setOption("SDL.LastOpenFile", filename); // Error dialog no longer required with GTK implementation of FCEUD_PrintError() - - resizeGtkWindow(); - g_free( filename); + + resizeGtkWindow (); + g_free (filename); } else { gtk_widget_destroy (fileChooser); } - updateAllActvCheatLists(1); + updateAllActvCheatLists (1); } -static void newCheatEntryCB1( GtkWidget *widget, - cheat_win_t *cw ) +static void newCheatEntryCB1 (GtkWidget * widget, cheat_win_t * cw) { const gchar *entry_text; - entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); + entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); - if ( entry_text[0] == 0 ) - { - cw->new_cheat_addr = -1; - } - else - { - cw->new_cheat_addr = strtol( entry_text, NULL, 16 ); - } -} - -static void newCheatEntryCB2( GtkWidget *widget, - cheat_win_t *cw ) -{ - const gchar *entry_text; - entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); - - if ( entry_text[0] == 0 ) + if (entry_text[0] == 0) { - cw->new_cheat_val = -1; - } - else - { - cw->new_cheat_val = strtol( entry_text, NULL, 16 ); - } -} - -static void newCheatEntryCB3( GtkWidget *widget, - cheat_win_t *cw ) -{ - const gchar *entry_text; - entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); - - if ( entry_text[0] == 0 ) - { - cw->new_cheat_cmp = -1; + cw->new_cheat_addr = -1; } else { - cw->new_cheat_cmp = strtol( entry_text, NULL, 16 ); + cw->new_cheat_addr = strtol (entry_text, NULL, 16); } } -static void newCheatEntryCB4( GtkWidget *widget, - cheat_win_t *cw ) +static void newCheatEntryCB2 (GtkWidget * widget, cheat_win_t * cw) { const gchar *entry_text; - entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); + entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); - cw->new_cheat_name.assign( entry_text ); + if (entry_text[0] == 0) + { + cw->new_cheat_val = -1; + } + else + { + cw->new_cheat_val = strtol (entry_text, NULL, 16); + } } -static void addCheat2Active( GtkWidget *widget, - cheat_win_t *cw ) +static void newCheatEntryCB3 (GtkWidget * widget, cheat_win_t * cw) +{ + const gchar *entry_text; + entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); + + if (entry_text[0] == 0) + { + cw->new_cheat_cmp = -1; + } + else + { + cw->new_cheat_cmp = strtol (entry_text, NULL, 16); + } +} + +static void newCheatEntryCB4 (GtkWidget * widget, cheat_win_t * cw) +{ + const gchar *entry_text; + entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); + + cw->new_cheat_name.assign (entry_text); +} + +static void addCheat2Active (GtkWidget * widget, cheat_win_t * cw) { - if ( (cw->new_cheat_addr >= 0) && (cw->new_cheat_val >= 0) ) - { - if ( FCEUI_AddCheat( cw->new_cheat_name.c_str(), cw->new_cheat_addr, cw->new_cheat_val, cw->new_cheat_cmp, 1) ) + if ((cw->new_cheat_addr >= 0) && (cw->new_cheat_val >= 0)) + { + if (FCEUI_AddCheat + (cw->new_cheat_name.c_str (), cw->new_cheat_addr, + cw->new_cheat_val, cw->new_cheat_cmp, 1)) { - updateAllActvCheatLists(1); + updateAllActvCheatLists (1); } } } -static void removeCheatFromActive( GtkWidget *widget, - cheat_win_t *cw ) +static void removeCheatFromActive (GtkWidget * widget, cheat_win_t * cw) { int numListRows; GList *selListRows, *tmpList; GtkTreeModel *model = NULL; GtkTreeSelection *treeSel; - treeSel = gtk_tree_view_get_selection( GTK_TREE_VIEW(cw->actv_cheat_tree) ); + treeSel = + gtk_tree_view_get_selection (GTK_TREE_VIEW + (cw->actv_cheat_tree)); - numListRows = gtk_tree_selection_count_selected_rows( treeSel ); + numListRows = gtk_tree_selection_count_selected_rows (treeSel); - if ( numListRows == 0 ) - { - return; - } + if (numListRows == 0) + { + return; + } //printf("Number of Rows Selected: %i\n", numListRows ); - selListRows = gtk_tree_selection_get_selected_rows( treeSel, &model ); + selListRows = gtk_tree_selection_get_selected_rows (treeSel, &model); tmpList = selListRows; - while ( tmpList ) + while (tmpList) { int depth; int *indexArray; - GtkTreePath *path = (GtkTreePath*)tmpList->data; + GtkTreePath *path = (GtkTreePath *) tmpList->data; - depth = gtk_tree_path_get_depth(path); - indexArray = gtk_tree_path_get_indices(path); + depth = gtk_tree_path_get_depth (path); + indexArray = gtk_tree_path_get_indices (path); - if ( depth > 0 ) + if (depth > 0) { - //GtkTreeIter iter; - FCEUI_DelCheat( indexArray[0] ); + //GtkTreeIter iter; + FCEUI_DelCheat (indexArray[0]); - //if ( gtk_tree_model_get_iter ( model, &iter, path ) ) - //{ - // gtk_tree_store_remove( actv_cheats_store, &iter ); - //} + //if ( gtk_tree_model_get_iter ( model, &iter, path ) ) + //{ + // gtk_tree_store_remove( actv_cheats_store, &iter ); + //} } - tmpList = tmpList->next; + tmpList = tmpList->next; } - g_list_free_full(selListRows, (GDestroyNotify) gtk_tree_path_free); + g_list_free_full (selListRows, (GDestroyNotify) gtk_tree_path_free); - updateAllActvCheatLists(1); + updateAllActvCheatLists (1); } -static void updateCheatList( GtkWidget *widget, - cheat_win_t *cw ) +static void updateCheatList (GtkWidget * widget, cheat_win_t * cw) { int numListRows; GList *selListRows, *tmpList; GtkTreeModel *model = NULL; GtkTreeSelection *treeSel; - treeSel = gtk_tree_view_get_selection( GTK_TREE_VIEW(cw->actv_cheat_tree) ); + treeSel = + gtk_tree_view_get_selection (GTK_TREE_VIEW + (cw->actv_cheat_tree)); - numListRows = gtk_tree_selection_count_selected_rows( treeSel ); + numListRows = gtk_tree_selection_count_selected_rows (treeSel); - if ( numListRows == 0 ) - { - return; - } + if (numListRows == 0) + { + return; + } //printf("Number of Rows Selected: %i\n", numListRows ); - selListRows = gtk_tree_selection_get_selected_rows( treeSel, &model ); + selListRows = gtk_tree_selection_get_selected_rows (treeSel, &model); tmpList = selListRows; - while ( tmpList ) + while (tmpList) { int depth; int *indexArray; - GtkTreePath *path = (GtkTreePath*)tmpList->data; + GtkTreePath *path = (GtkTreePath *) tmpList->data; - depth = gtk_tree_path_get_depth(path); - indexArray = gtk_tree_path_get_indices(path); + depth = gtk_tree_path_get_depth (path); + indexArray = gtk_tree_path_get_indices (path); - if ( depth > 0 ) + if (depth > 0) { - uint32 a; uint8 v; + uint32 a; + uint8 v; int c, s, type; - const char *name = NULL; - if ( FCEUI_GetCheat( indexArray[0], NULL, &a, &v, &c, &s, &type) ) + const char *name = NULL; + if (FCEUI_GetCheat + (indexArray[0], NULL, &a, &v, &c, &s, &type)) { - if ( cw->new_cheat_addr >= 0 ){ - a = cw->new_cheat_addr; - } - if ( cw->new_cheat_val >= 0 ){ - v = cw->new_cheat_val; - } - if ( cw->new_cheat_cmp >= 0 ){ - c = cw->new_cheat_cmp; - } - if ( cw->new_cheat_name.size() ) - { - name = cw->new_cheat_name.c_str(); - } - FCEUI_SetCheat( indexArray[0], name, a, v, c, s, type ); + if (cw->new_cheat_addr >= 0) + { + a = cw->new_cheat_addr; + } + if (cw->new_cheat_val >= 0) + { + v = cw->new_cheat_val; + } + if (cw->new_cheat_cmp >= 0) + { + c = cw->new_cheat_cmp; + } + if (cw->new_cheat_name.size ()) + { + name = cw->new_cheat_name.c_str (); + } + FCEUI_SetCheat (indexArray[0], name, a, v, c, s, + type); } } //printf("Depth: %i \n", depth ); //for (int i=0; inext; + tmpList = tmpList->next; } - g_list_free_full(selListRows, (GDestroyNotify) gtk_tree_path_free); + g_list_free_full (selListRows, (GDestroyNotify) gtk_tree_path_free); - updateAllActvCheatLists(0); + updateAllActvCheatLists (0); } -static void cheat_cell_edited_cb1 (GtkCellRendererText *cell, - gchar *path_string, - gchar *new_text, - cheat_win_t *cw ) +static void cheat_cell_edited_cb1 (GtkCellRendererText * cell, + gchar * path_string, + gchar * new_text, cheat_win_t * cw) { - long int row_idx = -1; + long int row_idx = -1; - //printf("'%s'\n", path_string ); - //printf("'%s'\n", new_text ); - //printf("%p\n", user_data ); + //printf("'%s'\n", path_string ); + //printf("'%s'\n", new_text ); + //printf("%p\n", user_data ); - if ( isdigit(path_string[0]) ) - { - row_idx = atoi(path_string); - } - - if ( row_idx >= 0 ) + if (isdigit (path_string[0])) { - uint32 a; uint8 v; - int c, s, type; - const char *name = NULL; - if ( FCEUI_GetCheat( row_idx, NULL, &a, &v, &c, &s, &type) ) - { - a = strtol( new_text, NULL, 0 ); - FCEUI_SetCheat( row_idx, name, a, v, c, s, type ); - updateAllActvCheatLists(0); - } - } -} + row_idx = atoi (path_string); + } -static void cheat_cell_edited_cb2 (GtkCellRendererText *cell, - gchar *path_string, - gchar *new_text, - cheat_win_t *cw ) -{ - long int row_idx = -1; - - //printf("'%s'\n", path_string ); - //printf("'%s'\n", new_text ); - //printf("%p\n", user_data ); - - if ( isdigit(path_string[0]) ) - { - row_idx = atoi(path_string); - } - - if ( row_idx >= 0 ) + if (row_idx >= 0) { - uint32 a; uint8 v; + uint32 a; + uint8 v; int c, s, type; - const char *name = NULL; - if ( FCEUI_GetCheat( row_idx, NULL, &a, &v, &c, &s, &type) ) + const char *name = NULL; + if (FCEUI_GetCheat (row_idx, NULL, &a, &v, &c, &s, &type)) { - v = strtol( new_text, NULL, 0 ); - FCEUI_SetCheat( row_idx, name, a, v, c, s, type ); - updateAllActvCheatLists(0); + a = strtol (new_text, NULL, 0); + FCEUI_SetCheat (row_idx, name, a, v, c, s, type); + updateAllActvCheatLists (0); } - } + } } -static void cheat_cell_edited_cb3 (GtkCellRendererText *cell, - gchar *path_string, - gchar *new_text, - cheat_win_t *cw ) +static void cheat_cell_edited_cb2 (GtkCellRendererText * cell, + gchar * path_string, + gchar * new_text, cheat_win_t * cw) { - long int row_idx = -1; + long int row_idx = -1; - //printf("'%s'\n", path_string ); - //printf("'%s'\n", new_text ); - //printf("%p\n", user_data ); + //printf("'%s'\n", path_string ); + //printf("'%s'\n", new_text ); + //printf("%p\n", user_data ); - if ( isdigit(path_string[0]) ) - { - row_idx = atoi(path_string); - } - - if ( row_idx >= 0 ) + if (isdigit (path_string[0])) { - uint32 a; uint8 v; - int c, s, type; - const char *name = NULL; - if ( FCEUI_GetCheat( row_idx, NULL, &a, &v, &c, &s, &type) ) - { - c = strtol( new_text, NULL, 0 ); - FCEUI_SetCheat( row_idx, name, a, v, c, s, type ); - updateAllActvCheatLists(0); - } - } -} + row_idx = atoi (path_string); + } -static void cheat_cell_edited_cb4 (GtkCellRendererText *cell, - gchar *path_string, - gchar *new_text, - cheat_win_t *cw ) -{ - long int row_idx = -1; - - //printf("'%s'\n", path_string ); - //printf("'%s'\n", new_text ); - //printf("%p\n", user_data ); - - if ( isdigit(path_string[0]) ) - { - row_idx = atoi(path_string); - } - - if ( row_idx >= 0 ) + if (row_idx >= 0) { - uint32 a; uint8 v; + uint32 a; + uint8 v; int c, s, type; - const char *name = NULL; - if ( FCEUI_GetCheat( row_idx, NULL, &a, &v, &c, &s, &type) ) + const char *name = NULL; + if (FCEUI_GetCheat (row_idx, NULL, &a, &v, &c, &s, &type)) { - name = new_text; - FCEUI_SetCheat( row_idx, name, a, v, c, s, type ); - updateAllActvCheatLists(0); + v = strtol (new_text, NULL, 0); + FCEUI_SetCheat (row_idx, name, a, v, c, s, type); + updateAllActvCheatLists (0); } - } + } } -static void updateAllActvCheatLists( bool redraw ) +static void cheat_cell_edited_cb3 (GtkCellRendererText * cell, + gchar * path_string, + gchar * new_text, cheat_win_t * cw) { - std::list ::iterator it; + long int row_idx = -1; - for (it=cheatWinList.begin(); it != cheatWinList.end(); it++) - { - (*it)->showActiveCheatList( redraw ); - } + //printf("'%s'\n", path_string ); + //printf("'%s'\n", new_text ); + //printf("%p\n", user_data ); + + if (isdigit (path_string[0])) + { + row_idx = atoi (path_string); + } + + if (row_idx >= 0) + { + uint32 a; + uint8 v; + int c, s, type; + const char *name = NULL; + if (FCEUI_GetCheat (row_idx, NULL, &a, &v, &c, &s, &type)) + { + c = strtol (new_text, NULL, 0); + FCEUI_SetCheat (row_idx, name, a, v, c, s, type); + updateAllActvCheatLists (0); + } + } } -static void closeCheatDialog(GtkWidget* w, GdkEvent* e, gpointer p) +static void cheat_cell_edited_cb4 (GtkCellRendererText * cell, + gchar * path_string, + gchar * new_text, cheat_win_t * cw) { - std::list ::iterator it; - cheat_win_t *cw = (cheat_win_t*)p; + long int row_idx = -1; - if ( EmulationPaused && cw->wasPausedByCheats ) - { - EmulationPaused = 0; - } + //printf("'%s'\n", path_string ); + //printf("'%s'\n", new_text ); + //printf("%p\n", user_data ); - for (it=cheatWinList.begin(); it != cheatWinList.end(); it++) - { - if ( cw == *it ) - { - //printf("Removing Cheat Window %p from List\n", cw); - cheatWinList.erase(it); break; - } - } - //printf("Number of Cheat Windows Still Open: %zi\n", cheatWinList.size() ); + if (isdigit (path_string[0])) + { + row_idx = atoi (path_string); + } - delete cw; + if (row_idx >= 0) + { + uint32 a; + uint8 v; + int c, s, type; + const char *name = NULL; + if (FCEUI_GetCheat (row_idx, NULL, &a, &v, &c, &s, &type)) + { + name = new_text; + FCEUI_SetCheat (row_idx, name, a, v, c, s, type); + updateAllActvCheatLists (0); + } + } +} - gtk_widget_destroy(w); +static void updateAllActvCheatLists (bool redraw) +{ + std::list < cheat_win_t * >::iterator it; + + for (it = cheatWinList.begin (); it != cheatWinList.end (); it++) + { + (*it)->showActiveCheatList (redraw); + } +} + +static void closeCheatDialog (GtkWidget * w, GdkEvent * e, gpointer p) +{ + std::list < cheat_win_t * >::iterator it; + cheat_win_t *cw = (cheat_win_t *) p; + + if (EmulationPaused && cw->wasPausedByCheats) + { + EmulationPaused = 0; + } + + for (it = cheatWinList.begin (); it != cheatWinList.end (); it++) + { + if (cw == *it) + { + //printf("Removing Cheat Window %p from List\n", cw); + cheatWinList.erase (it); + break; + } + } + //printf("Number of Cheat Windows Still Open: %zi\n", cheatWinList.size() ); + + delete cw; + + gtk_widget_destroy (w); } // creates and opens cheats window -void openCheatsWindow(void) +void openCheatsWindow (void) { - GtkWidget* win; - GtkWidget* main_hbox; - GtkWidget* hbox; - GtkWidget* vbox, *prev_cmp_vbox; - GtkWidget* frame; - GtkWidget* label, *txt_entry; - GtkWidget* button; + GtkWidget *win; + GtkWidget *main_hbox; + GtkWidget *hbox; + GtkWidget *vbox, *prev_cmp_vbox; + GtkWidget *frame; + GtkWidget *label, *txt_entry; + GtkWidget *button; GtkWidget *scroll; - cheat_win_t *cw = new cheat_win_t; + cheat_win_t *cw = new cheat_win_t; - cheatWinList.push_back(cw); + cheatWinList.push_back (cw); - win = gtk_dialog_new_with_buttons("Cheats", - GTK_WINDOW(MainWindow), (GtkDialogFlags)(GTK_DIALOG_DESTROY_WITH_PARENT), - "_Close", - GTK_RESPONSE_OK, - NULL); - gtk_window_set_default_size(GTK_WINDOW(win), 600, 600); + win = gtk_dialog_new_with_buttons ("Cheats", + GTK_WINDOW (MainWindow), + (GtkDialogFlags) + (GTK_DIALOG_DESTROY_WITH_PARENT), + "_Close", GTK_RESPONSE_OK, NULL); + gtk_window_set_default_size (GTK_WINDOW (win), 600, 600); - main_hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 2); - vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 5); - frame = gtk_frame_new("Active Cheats"); - - cw->actv_cheats_store = gtk_tree_store_new( 5, G_TYPE_BOOLEAN, - G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING ); + main_hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 2); + vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5); + frame = gtk_frame_new ("Active Cheats"); - cw->actv_cheat_tree = gtk_tree_view_new_with_model(GTK_TREE_MODEL(cw->actv_cheats_store)); + cw->actv_cheats_store = gtk_tree_store_new (5, G_TYPE_BOOLEAN, + G_TYPE_STRING, + G_TYPE_STRING, + G_TYPE_STRING, + G_TYPE_STRING); + + cw->actv_cheat_tree = + gtk_tree_view_new_with_model (GTK_TREE_MODEL + (cw->actv_cheats_store)); GtkCellRenderer *renderer; GtkCellRenderer *chkbox_renderer; - GtkTreeViewColumn* column; - - gtk_tree_view_set_grid_lines( GTK_TREE_VIEW(cw->actv_cheat_tree), GTK_TREE_VIEW_GRID_LINES_VERTICAL ); + GtkTreeViewColumn *column; - chkbox_renderer = gtk_cell_renderer_toggle_new(); - gtk_cell_renderer_toggle_set_activatable( (GtkCellRendererToggle*)chkbox_renderer, TRUE ); - column = gtk_tree_view_column_new_with_attributes("Ena", chkbox_renderer, "active", 0, NULL); - gtk_tree_view_append_column(GTK_TREE_VIEW(cw->actv_cheat_tree), column); + gtk_tree_view_set_grid_lines (GTK_TREE_VIEW (cw->actv_cheat_tree), + GTK_TREE_VIEW_GRID_LINES_VERTICAL); - renderer = gtk_cell_renderer_text_new(); - g_object_set(renderer, "family", "MonoSpace", NULL); - g_object_set(renderer, "editable", TRUE, NULL); - g_signal_connect(renderer, "edited", (GCallback) cheat_cell_edited_cb1, (gpointer)cw); - column = gtk_tree_view_column_new_with_attributes("Addr", renderer, "text", 1, NULL); - gtk_tree_view_append_column(GTK_TREE_VIEW(cw->actv_cheat_tree), column); + chkbox_renderer = gtk_cell_renderer_toggle_new (); + gtk_cell_renderer_toggle_set_activatable ((GtkCellRendererToggle *) + chkbox_renderer, TRUE); + column = gtk_tree_view_column_new_with_attributes ("Ena", + chkbox_renderer, + "active", 0, NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (cw->actv_cheat_tree), + column); - renderer = gtk_cell_renderer_text_new(); - g_object_set(renderer, "family", "MonoSpace", NULL); - g_object_set(renderer, "editable", TRUE, NULL); - g_signal_connect(renderer, "edited", (GCallback) cheat_cell_edited_cb2, (gpointer)cw); - column = gtk_tree_view_column_new_with_attributes("Val", renderer, "text", 2, NULL); - gtk_tree_view_append_column(GTK_TREE_VIEW(cw->actv_cheat_tree), column); + renderer = gtk_cell_renderer_text_new (); + g_object_set (renderer, "family", "MonoSpace", NULL); + g_object_set (renderer, "editable", TRUE, NULL); + g_signal_connect (renderer, "edited", (GCallback) cheat_cell_edited_cb1, + (gpointer) cw); + column = gtk_tree_view_column_new_with_attributes ("Addr", renderer, + "text", 1, NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (cw->actv_cheat_tree), + column); - renderer = gtk_cell_renderer_text_new(); - g_object_set(renderer, "family", "MonoSpace", NULL); - g_object_set(renderer, "editable", TRUE, NULL); - g_signal_connect(renderer, "edited", (GCallback) cheat_cell_edited_cb3, (gpointer)cw); - column = gtk_tree_view_column_new_with_attributes("Cmp", renderer, "text", 3, NULL); - gtk_tree_view_append_column(GTK_TREE_VIEW(cw->actv_cheat_tree), column); + renderer = gtk_cell_renderer_text_new (); + g_object_set (renderer, "family", "MonoSpace", NULL); + g_object_set (renderer, "editable", TRUE, NULL); + g_signal_connect (renderer, "edited", (GCallback) cheat_cell_edited_cb2, + (gpointer) cw); + column = gtk_tree_view_column_new_with_attributes ("Val", renderer, + "text", 2, NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (cw->actv_cheat_tree), + column); - renderer = gtk_cell_renderer_text_new(); - g_object_set(renderer, "editable", TRUE, NULL); - g_signal_connect(renderer, "edited", (GCallback) cheat_cell_edited_cb4, (gpointer)cw); - column = gtk_tree_view_column_new_with_attributes("Desc", renderer, "text", 4, NULL); - gtk_tree_view_append_column(GTK_TREE_VIEW(cw->actv_cheat_tree), column); - - g_signal_connect( chkbox_renderer, "toggled", - G_CALLBACK(cheatListEnableToggle), (void*)cw ); + renderer = gtk_cell_renderer_text_new (); + g_object_set (renderer, "family", "MonoSpace", NULL); + g_object_set (renderer, "editable", TRUE, NULL); + g_signal_connect (renderer, "edited", (GCallback) cheat_cell_edited_cb3, + (gpointer) cw); + column = gtk_tree_view_column_new_with_attributes ("Cmp", renderer, + "text", 3, NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (cw->actv_cheat_tree), + column); - updateAllActvCheatLists(1); + renderer = gtk_cell_renderer_text_new (); + g_object_set (renderer, "editable", TRUE, NULL); + g_signal_connect (renderer, "edited", (GCallback) cheat_cell_edited_cb4, + (gpointer) cw); + column = gtk_tree_view_column_new_with_attributes ("Desc", renderer, + "text", 4, NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (cw->actv_cheat_tree), + column); - scroll = gtk_scrolled_window_new(NULL, NULL); - gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroll), GTK_POLICY_NEVER, - GTK_POLICY_AUTOMATIC); - gtk_container_add(GTK_CONTAINER(scroll), cw->actv_cheat_tree); - gtk_box_pack_start(GTK_BOX(vbox), scroll, TRUE, TRUE, 1); + g_signal_connect (chkbox_renderer, "toggled", + G_CALLBACK (cheatListEnableToggle), (void *) cw); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 2); - label = gtk_label_new("Name:"); - txt_entry = gtk_entry_new(); + updateAllActvCheatLists (1); - g_signal_connect( txt_entry, "activate", - G_CALLBACK(newCheatEntryCB4), (void*)cw ); - g_signal_connect( txt_entry, "changed", - G_CALLBACK(newCheatEntryCB4), (void*)cw ); + scroll = gtk_scrolled_window_new (NULL, NULL); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scroll), + GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); + gtk_container_add (GTK_CONTAINER (scroll), cw->actv_cheat_tree); + gtk_box_pack_start (GTK_BOX (vbox), scroll, TRUE, TRUE, 1); - gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 1); - gtk_box_pack_start(GTK_BOX(hbox), txt_entry, TRUE, TRUE, 1); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 2); + label = gtk_label_new ("Name:"); + txt_entry = gtk_entry_new (); - gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 1); + g_signal_connect (txt_entry, "activate", + G_CALLBACK (newCheatEntryCB4), (void *) cw); + g_signal_connect (txt_entry, "changed", + G_CALLBACK (newCheatEntryCB4), (void *) cw); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 6); - label = gtk_label_new("Addr:"); - txt_entry = gtk_entry_new(); - gtk_entry_set_max_length( GTK_ENTRY(txt_entry), 4 ); - gtk_entry_set_width_chars( GTK_ENTRY(txt_entry), 4 ); + gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 1); + gtk_box_pack_start (GTK_BOX (hbox), txt_entry, TRUE, TRUE, 1); - g_signal_connect( txt_entry, "activate", - G_CALLBACK(newCheatEntryCB1), (void*)cw ); - g_signal_connect( txt_entry, "changed", - G_CALLBACK(newCheatEntryCB1), (void*)cw ); + gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 1); - gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 1); - gtk_box_pack_start(GTK_BOX(hbox), txt_entry, TRUE, TRUE, 1); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6); + label = gtk_label_new ("Addr:"); + txt_entry = gtk_entry_new (); + gtk_entry_set_max_length (GTK_ENTRY (txt_entry), 4); + gtk_entry_set_width_chars (GTK_ENTRY (txt_entry), 4); - label = gtk_label_new("Val:"); - txt_entry = gtk_entry_new(); - gtk_entry_set_max_length( GTK_ENTRY(txt_entry), 2 ); - gtk_entry_set_width_chars( GTK_ENTRY(txt_entry), 2 ); + g_signal_connect (txt_entry, "activate", + G_CALLBACK (newCheatEntryCB1), (void *) cw); + g_signal_connect (txt_entry, "changed", + G_CALLBACK (newCheatEntryCB1), (void *) cw); - g_signal_connect( txt_entry, "activate", - G_CALLBACK(newCheatEntryCB2), (void*)cw ); - g_signal_connect( txt_entry, "changed", - G_CALLBACK(newCheatEntryCB2), (void*)cw ); + gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 1); + gtk_box_pack_start (GTK_BOX (hbox), txt_entry, TRUE, TRUE, 1); - gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 1); - gtk_box_pack_start(GTK_BOX(hbox), txt_entry, TRUE, TRUE, 1); + label = gtk_label_new ("Val:"); + txt_entry = gtk_entry_new (); + gtk_entry_set_max_length (GTK_ENTRY (txt_entry), 2); + gtk_entry_set_width_chars (GTK_ENTRY (txt_entry), 2); - label = gtk_label_new("Cmp:"); - txt_entry = gtk_entry_new(); - gtk_entry_set_max_length( GTK_ENTRY(txt_entry), 2 ); - gtk_entry_set_width_chars( GTK_ENTRY(txt_entry), 2 ); + g_signal_connect (txt_entry, "activate", + G_CALLBACK (newCheatEntryCB2), (void *) cw); + g_signal_connect (txt_entry, "changed", + G_CALLBACK (newCheatEntryCB2), (void *) cw); - g_signal_connect( txt_entry, "activate", - G_CALLBACK(newCheatEntryCB3), (void*)cw ); - g_signal_connect( txt_entry, "changed", - G_CALLBACK(newCheatEntryCB3), (void*)cw ); + gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 1); + gtk_box_pack_start (GTK_BOX (hbox), txt_entry, TRUE, TRUE, 1); - gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 1); - gtk_box_pack_start(GTK_BOX(hbox), txt_entry, TRUE, TRUE, 1); + label = gtk_label_new ("Cmp:"); + txt_entry = gtk_entry_new (); + gtk_entry_set_max_length (GTK_ENTRY (txt_entry), 2); + gtk_entry_set_width_chars (GTK_ENTRY (txt_entry), 2); - gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 1); + g_signal_connect (txt_entry, "activate", + G_CALLBACK (newCheatEntryCB3), (void *) cw); + g_signal_connect (txt_entry, "changed", + G_CALLBACK (newCheatEntryCB3), (void *) cw); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 3); - button = gtk_button_new_with_label("Add"); - gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, FALSE, 1); + gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 1); + gtk_box_pack_start (GTK_BOX (hbox), txt_entry, TRUE, TRUE, 1); - g_signal_connect( button, "clicked", - G_CALLBACK (addCheat2Active), (gpointer) cw ); + gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 1); - button = gtk_button_new_with_label("Delete"); - gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, FALSE, 1); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3); + button = gtk_button_new_with_label ("Add"); + gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, FALSE, 1); - g_signal_connect( button, "clicked", - G_CALLBACK (removeCheatFromActive), (gpointer) cw ); + g_signal_connect (button, "clicked", + G_CALLBACK (addCheat2Active), (gpointer) cw); - button = gtk_button_new_with_label("Update"); - gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, FALSE, 1); + button = gtk_button_new_with_label ("Delete"); + gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, FALSE, 1); - g_signal_connect( button, "clicked", - G_CALLBACK (updateCheatList), (gpointer) cw ); + g_signal_connect (button, "clicked", + G_CALLBACK (removeCheatFromActive), (gpointer) cw); - gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 1); + button = gtk_button_new_with_label ("Update"); + gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, FALSE, 1); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 1); - button = gtk_button_new_with_label("Add from CHT file..."); - gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, FALSE, 1); - g_signal_connect( button, "clicked", - G_CALLBACK (openCheatFile), (gpointer) cw ); + g_signal_connect (button, "clicked", + G_CALLBACK (updateCheatList), (gpointer) cw); - gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 1); + gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 1); - gtk_container_add(GTK_CONTAINER(frame), vbox); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 1); + button = gtk_button_new_with_label ("Add from CHT file..."); + gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, FALSE, 1); + g_signal_connect (button, "clicked", + G_CALLBACK (openCheatFile), (gpointer) cw); + + gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 1); + + gtk_container_add (GTK_CONTAINER (frame), vbox); // - gtk_box_pack_start(GTK_BOX(main_hbox), frame, TRUE, TRUE, 1); + gtk_box_pack_start (GTK_BOX (main_hbox), frame, TRUE, TRUE, 1); - vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 5); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 1); - button = gtk_button_new_with_label("Reset"); - g_signal_connect( button, "clicked", - G_CALLBACK (cheatSearchReset), (gpointer) cw ); - gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 5); + vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 1); + button = gtk_button_new_with_label ("Reset"); + g_signal_connect (button, "clicked", + G_CALLBACK (cheatSearchReset), (gpointer) cw); + gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 5); - gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5); + gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 5); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 3); - button = gtk_button_new_with_label("Known Value:"); - g_signal_connect( button, "clicked", - G_CALLBACK (cheatSearchKnown), (gpointer) cw ); - gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 5); - label = gtk_label_new("0x"); - txt_entry = gtk_entry_new(); - gtk_entry_set_max_length( GTK_ENTRY(txt_entry), 2 ); - gtk_entry_set_width_chars( GTK_ENTRY(txt_entry), 2 ); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3); + button = gtk_button_new_with_label ("Known Value:"); + g_signal_connect (button, "clicked", + G_CALLBACK (cheatSearchKnown), (gpointer) cw); + gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 5); + label = gtk_label_new ("0x"); + txt_entry = gtk_entry_new (); + gtk_entry_set_max_length (GTK_ENTRY (txt_entry), 2); + gtk_entry_set_width_chars (GTK_ENTRY (txt_entry), 2); - g_signal_connect( txt_entry, "activate", - G_CALLBACK(cheatSearchValueEntryCB1), (void*)cw ); - g_signal_connect( txt_entry, "changed", - G_CALLBACK(cheatSearchValueEntryCB1), (void*)cw ); - gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5); - gtk_box_pack_start(GTK_BOX(hbox), txt_entry, FALSE, FALSE, 5); + g_signal_connect (txt_entry, "activate", + G_CALLBACK (cheatSearchValueEntryCB1), (void *) cw); + g_signal_connect (txt_entry, "changed", + G_CALLBACK (cheatSearchValueEntryCB1), (void *) cw); + gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 5); + gtk_box_pack_start (GTK_BOX (hbox), txt_entry, FALSE, FALSE, 5); - gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5); + gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 5); - frame = gtk_frame_new("Previous Compare"); - gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, FALSE, 5); - button = gtk_check_button_new_with_label("Pause emulation when this window is active"); - gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 5); - g_signal_connect( button, "clicked", - G_CALLBACK (pauseDuringCheatWinActvCB), (gpointer) cw ); + frame = gtk_frame_new ("Previous Compare"); + gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, FALSE, 5); + button = gtk_check_button_new_with_label + ("Pause emulation when this window is active"); + gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 5); + g_signal_connect (button, "clicked", + G_CALLBACK (pauseDuringCheatWinActvCB), + (gpointer) cw); - prev_cmp_vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 4); - gtk_container_add(GTK_CONTAINER(frame), prev_cmp_vbox); + prev_cmp_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 4); + gtk_container_add (GTK_CONTAINER (frame), prev_cmp_vbox); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 1); - button = gtk_button_new_with_label("Equal"); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 1); + button = gtk_button_new_with_label ("Equal"); //gtk_widget_set_halign( button, GTK_ALIGN_BASELINE); - - gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 5); - gtk_box_pack_start(GTK_BOX(prev_cmp_vbox), hbox, FALSE, FALSE, 5); - g_signal_connect( button, "clicked", - G_CALLBACK (cheatSearchEqual), (gpointer) cw ); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 4); - button = gtk_button_new_with_label("Not Equal"); + gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, TRUE, 5); + gtk_box_pack_start (GTK_BOX (prev_cmp_vbox), hbox, FALSE, FALSE, 5); + g_signal_connect (button, "clicked", + G_CALLBACK (cheatSearchEqual), (gpointer) cw); + + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 4); + button = gtk_button_new_with_label ("Not Equal"); //gtk_widget_set_halign( button, GTK_ALIGN_BASELINE); - gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 5); - cw->neq_chkbox = gtk_check_button_new(); - gtk_box_pack_start(GTK_BOX(hbox), cw->neq_chkbox, FALSE, FALSE, 5); - g_signal_connect( button, "clicked", - G_CALLBACK (cheatSearchNotEqual), (gpointer) cw ); - label = gtk_label_new("By: 0x"); - gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5); - txt_entry = gtk_entry_new(); - gtk_entry_set_max_length( GTK_ENTRY(txt_entry), 2 ); - gtk_entry_set_width_chars( GTK_ENTRY(txt_entry), 2 ); - g_signal_connect( txt_entry, "activate", - G_CALLBACK(cheatSearchValueEntryCB2), (void*)cw ); - g_signal_connect( txt_entry, "changed", - G_CALLBACK(cheatSearchValueEntryCB2), (void*)cw ); - gtk_box_pack_start(GTK_BOX(hbox), txt_entry, FALSE, FALSE, 5); + gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, TRUE, 5); + cw->neq_chkbox = gtk_check_button_new (); + gtk_box_pack_start (GTK_BOX (hbox), cw->neq_chkbox, FALSE, FALSE, 5); + g_signal_connect (button, "clicked", + G_CALLBACK (cheatSearchNotEqual), (gpointer) cw); + label = gtk_label_new ("By: 0x"); + gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 5); + txt_entry = gtk_entry_new (); + gtk_entry_set_max_length (GTK_ENTRY (txt_entry), 2); + gtk_entry_set_width_chars (GTK_ENTRY (txt_entry), 2); + g_signal_connect (txt_entry, "activate", + G_CALLBACK (cheatSearchValueEntryCB2), (void *) cw); + g_signal_connect (txt_entry, "changed", + G_CALLBACK (cheatSearchValueEntryCB2), (void *) cw); + gtk_box_pack_start (GTK_BOX (hbox), txt_entry, FALSE, FALSE, 5); - gtk_box_pack_start(GTK_BOX(prev_cmp_vbox), hbox, FALSE, FALSE, 5); + gtk_box_pack_start (GTK_BOX (prev_cmp_vbox), hbox, FALSE, FALSE, 5); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 4); - button = gtk_button_new_with_label("Greater Than"); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 4); + button = gtk_button_new_with_label ("Greater Than"); //gtk_widget_set_halign( button, GTK_ALIGN_BASELINE); - gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 5); - cw->gt_chkbox = gtk_check_button_new(); - g_signal_connect( button, "clicked", - G_CALLBACK (cheatSearchGreaterThan), (gpointer) cw ); - gtk_box_pack_start(GTK_BOX(hbox), cw->gt_chkbox, FALSE, FALSE, 5); - label = gtk_label_new("By: 0x"); - gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5); - txt_entry = gtk_entry_new(); - gtk_entry_set_max_length( GTK_ENTRY(txt_entry), 2 ); - gtk_entry_set_width_chars( GTK_ENTRY(txt_entry), 2 ); - g_signal_connect( txt_entry, "activate", - G_CALLBACK(cheatSearchValueEntryCB3), (void*)cw ); - g_signal_connect( txt_entry, "changed", - G_CALLBACK(cheatSearchValueEntryCB3), (void*)cw ); - gtk_box_pack_start(GTK_BOX(hbox), txt_entry, FALSE, FALSE, 5); + gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, TRUE, 5); + cw->gt_chkbox = gtk_check_button_new (); + g_signal_connect (button, "clicked", + G_CALLBACK (cheatSearchGreaterThan), (gpointer) cw); + gtk_box_pack_start (GTK_BOX (hbox), cw->gt_chkbox, FALSE, FALSE, 5); + label = gtk_label_new ("By: 0x"); + gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 5); + txt_entry = gtk_entry_new (); + gtk_entry_set_max_length (GTK_ENTRY (txt_entry), 2); + gtk_entry_set_width_chars (GTK_ENTRY (txt_entry), 2); + g_signal_connect (txt_entry, "activate", + G_CALLBACK (cheatSearchValueEntryCB3), (void *) cw); + g_signal_connect (txt_entry, "changed", + G_CALLBACK (cheatSearchValueEntryCB3), (void *) cw); + gtk_box_pack_start (GTK_BOX (hbox), txt_entry, FALSE, FALSE, 5); - gtk_box_pack_start(GTK_BOX(prev_cmp_vbox), hbox, FALSE, FALSE, 5); + gtk_box_pack_start (GTK_BOX (prev_cmp_vbox), hbox, FALSE, FALSE, 5); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 4); - button = gtk_button_new_with_label("Less Than"); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 4); + button = gtk_button_new_with_label ("Less Than"); //gtk_widget_set_halign( button, GTK_ALIGN_BASELINE); - gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 5); - cw->lt_chkbox = gtk_check_button_new(); - g_signal_connect( button, "clicked", - G_CALLBACK (cheatSearchLessThan), (gpointer) cw ); - gtk_box_pack_start(GTK_BOX(hbox), cw->lt_chkbox, FALSE, FALSE, 5); - label = gtk_label_new("By: 0x"); - gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5); - txt_entry = gtk_entry_new(); - gtk_entry_set_max_length( GTK_ENTRY(txt_entry), 2 ); - gtk_entry_set_width_chars( GTK_ENTRY(txt_entry), 2 ); - g_signal_connect( txt_entry, "activate", - G_CALLBACK(cheatSearchValueEntryCB4), (void*)cw ); - g_signal_connect( txt_entry, "changed", - G_CALLBACK(cheatSearchValueEntryCB4), (void*)cw ); - gtk_box_pack_start(GTK_BOX(hbox), txt_entry, FALSE, FALSE, 5); + gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, TRUE, 5); + cw->lt_chkbox = gtk_check_button_new (); + g_signal_connect (button, "clicked", + G_CALLBACK (cheatSearchLessThan), (gpointer) cw); + gtk_box_pack_start (GTK_BOX (hbox), cw->lt_chkbox, FALSE, FALSE, 5); + label = gtk_label_new ("By: 0x"); + gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 5); + txt_entry = gtk_entry_new (); + gtk_entry_set_max_length (GTK_ENTRY (txt_entry), 2); + gtk_entry_set_width_chars (GTK_ENTRY (txt_entry), 2); + g_signal_connect (txt_entry, "activate", + G_CALLBACK (cheatSearchValueEntryCB4), (void *) cw); + g_signal_connect (txt_entry, "changed", + G_CALLBACK (cheatSearchValueEntryCB4), (void *) cw); + gtk_box_pack_start (GTK_BOX (hbox), txt_entry, FALSE, FALSE, 5); - gtk_box_pack_start(GTK_BOX(prev_cmp_vbox), hbox, FALSE, FALSE, 1); + gtk_box_pack_start (GTK_BOX (prev_cmp_vbox), hbox, FALSE, FALSE, 1); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 2); - gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 1); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 2); + gtk_box_pack_start (GTK_BOX (hbox), vbox, FALSE, FALSE, 1); - frame = gtk_frame_new("Cheat Search"); - gtk_container_add(GTK_CONTAINER(frame), hbox); - gtk_box_pack_start(GTK_BOX(main_hbox), frame, TRUE, TRUE, 5); + frame = gtk_frame_new ("Cheat Search"); + gtk_container_add (GTK_CONTAINER (frame), hbox); + gtk_box_pack_start (GTK_BOX (main_hbox), frame, TRUE, TRUE, 5); - vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 5); + vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5); //hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 1); - cw->ram_match_store = gtk_tree_store_new( 3, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING); + cw->ram_match_store = + gtk_tree_store_new (3, G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_STRING); - cw->search_cheat_tree = gtk_tree_view_new_with_model(GTK_TREE_MODEL(cw->ram_match_store)); + cw->search_cheat_tree = + gtk_tree_view_new_with_model (GTK_TREE_MODEL + (cw->ram_match_store)); - gtk_tree_view_set_grid_lines( GTK_TREE_VIEW(cw->search_cheat_tree), GTK_TREE_VIEW_GRID_LINES_VERTICAL ); + gtk_tree_view_set_grid_lines (GTK_TREE_VIEW (cw->search_cheat_tree), + GTK_TREE_VIEW_GRID_LINES_VERTICAL); - renderer = gtk_cell_renderer_text_new(); - g_object_set(renderer, "family", "MonoSpace", NULL); - column = gtk_tree_view_column_new_with_attributes("Addr", renderer, "text", 0, NULL); - gtk_tree_view_append_column(GTK_TREE_VIEW(cw->search_cheat_tree), column); - column = gtk_tree_view_column_new_with_attributes("Last", renderer, "text", 1, NULL); - gtk_tree_view_append_column(GTK_TREE_VIEW(cw->search_cheat_tree), column); - column = gtk_tree_view_column_new_with_attributes("Curr", renderer, "text", 2, NULL); - gtk_tree_view_append_column(GTK_TREE_VIEW(cw->search_cheat_tree), column); - - scroll = gtk_scrolled_window_new(NULL, NULL); - gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroll), GTK_POLICY_NEVER, - GTK_POLICY_AUTOMATIC); - gtk_container_add(GTK_CONTAINER(scroll), cw->search_cheat_tree); - gtk_box_pack_start(GTK_BOX(vbox), scroll, TRUE, TRUE, 5); + renderer = gtk_cell_renderer_text_new (); + g_object_set (renderer, "family", "MonoSpace", NULL); + column = gtk_tree_view_column_new_with_attributes ("Addr", renderer, + "text", 0, NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (cw->search_cheat_tree), + column); + column = gtk_tree_view_column_new_with_attributes ("Last", renderer, + "text", 1, NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (cw->search_cheat_tree), + column); + column = gtk_tree_view_column_new_with_attributes ("Curr", renderer, + "text", 2, NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (cw->search_cheat_tree), + column); - frame = gtk_frame_new(""); - gtk_container_add(GTK_CONTAINER(frame), vbox); + scroll = gtk_scrolled_window_new (NULL, NULL); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scroll), + GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); + gtk_container_add (GTK_CONTAINER (scroll), cw->search_cheat_tree); + gtk_box_pack_start (GTK_BOX (vbox), scroll, TRUE, TRUE, 5); - gtk_box_pack_start(GTK_BOX(hbox), frame, TRUE, TRUE, 5); + frame = gtk_frame_new (""); + gtk_container_add (GTK_CONTAINER (frame), vbox); - gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(win))), main_hbox, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX (hbox), frame, TRUE, TRUE, 5); - g_signal_connect(win, "delete-event", G_CALLBACK(closeCheatDialog), cw); - g_signal_connect(win, "response", G_CALLBACK(closeCheatDialog), cw); - - gtk_widget_show_all(win); + gtk_box_pack_start (GTK_BOX + (gtk_dialog_get_content_area (GTK_DIALOG (win))), + main_hbox, TRUE, TRUE, 0); - //printf("Added Cheat Window %p. Number of Cheat Windows Open: %zi\n", cw, cheatWinList.size() ); + g_signal_connect (win, "delete-event", G_CALLBACK (closeCheatDialog), + cw); + g_signal_connect (win, "response", G_CALLBACK (closeCheatDialog), cw); + + gtk_widget_show_all (win); + + //printf("Added Cheat Window %p. Number of Cheat Windows Open: %zi\n", cw, cheatWinList.size() ); } diff --git a/src/drivers/sdl/ramwatch.cpp b/src/drivers/sdl/ramwatch.cpp index 3b721998..4fde04c7 100644 --- a/src/drivers/sdl/ramwatch.cpp +++ b/src/drivers/sdl/ramwatch.cpp @@ -39,150 +39,158 @@ extern Config *g_config; // struct ramWatch_t { - std::string name; - int addr; - int type; - int size; + std::string name; + int addr; + int type; + int size; - union { - int8_t i8; - uint8_t u8; - int16_t i16; - uint16_t u16; - } val; + union + { + int8_t i8; + uint8_t u8; + int16_t i16; + uint16_t u16; + } val; - ramWatch_t(void) - { - addr = 0; type = 0; size = 0; val.u16 = 0; - }; + ramWatch_t (void) + { + addr = 0; + type = 0; + size = 0; + val.u16 = 0; + }; - void updateMem(void) - { - if ( size == 1) - { - val.u8 = GetMem( addr ); - } - else if ( size == 2) - { - val.u16 = GetMem( addr ) | (GetMem( addr+1 ) << 8); - } - else - { - val.u8 = GetMem( addr ); - } - } + void updateMem (void) + { + if (size == 1) + { + val.u8 = GetMem (addr); + } + else if (size == 2) + { + val.u16 = GetMem (addr) | (GetMem (addr + 1) << 8); + } + else + { + val.u8 = GetMem (addr); + } + } }; struct ramWatchList_t { - std::list ls; + std::list < ramWatch_t * >ls; - ramWatchList_t(void) - { + ramWatchList_t (void) + { - } + } - ~ramWatchList_t(void) - { - ramWatch_t *rw; + ~ramWatchList_t (void) + { + ramWatch_t *rw; - while ( !ls.empty() ) - { - rw = ls.front(); + while (!ls.empty ()) + { + rw = ls.front (); - delete rw; + delete rw; - ls.pop_front(); - } - } + ls.pop_front (); + } + } - size_t size(void){ return ls.size(); }; + size_t size (void) + { + return ls.size (); + }; - void add_entry( const char *name, int addr, int type, int size ) - { - ramWatch_t *rw = new ramWatch_t; + void add_entry (const char *name, int addr, int type, int size) + { + ramWatch_t *rw = new ramWatch_t; - rw->name.assign(name); - rw->addr = addr; - rw->type = type; - rw->size = size; - ls.push_back(rw); - } + rw->name.assign (name); + rw->addr = addr; + rw->type = type; + rw->size = size; + ls.push_back (rw); + } - void updateMemoryValues(void) - { - ramWatch_t *rw; - std::list ::iterator it; + void updateMemoryValues (void) + { + ramWatch_t *rw; + std::list < ramWatch_t * >::iterator it; - for (it=ls.begin(); it!=ls.end(); it++) - { - rw = *it; + for (it = ls.begin (); it != ls.end (); it++) + { + rw = *it; - rw->updateMem(); - } - } + rw->updateMem (); + } + } - ramWatch_t *getIndex(size_t idx) - { - size_t i=0; - std::list ::iterator it; + ramWatch_t *getIndex (size_t idx) + { + size_t i = 0; + std::list < ramWatch_t * >::iterator it; - for (it=ls.begin(); it!=ls.end(); it++) - { - if ( i == idx ) - { - return *it; - } - i++; - } - return NULL; - } + for (it = ls.begin (); it != ls.end (); it++) + { + if (i == idx) + { + return *it; + } + i++; + } + return NULL; + } - int deleteIndex(size_t idx) - { - size_t i=0; - std::list ::iterator it; + int deleteIndex (size_t idx) + { + size_t i = 0; + std::list < ramWatch_t * >::iterator it; - for (it=ls.begin(); it!=ls.end(); it++) - { - if ( i == idx ) - { - delete *it; - ls.erase(it); - return 0; - } - i++; - } - return -1; - } + for (it = ls.begin (); it != ls.end (); it++) + { + if (i == idx) + { + delete *it; + ls.erase (it); + return 0; + } + i++; + } + return -1; + } }; + static ramWatchList_t ramWatchList; struct ramWatchWin_t; struct ramWatchEntryWin_t { - GtkWidget* win; - GtkWidget* chkbox; - GtkWidget* button1, *button2, *button4; + GtkWidget *win; + GtkWidget *chkbox; + GtkWidget *button1, *button2, *button4; GtkWidget *txt_entry_name; GtkWidget *txt_entry_addr; - ramWatchWin_t *rww; - int idx; + ramWatchWin_t *rww; + int idx; - ramWatchEntryWin_t(void) - { - win = NULL; + ramWatchEntryWin_t (void) + { + win = NULL; chkbox = NULL; button1 = NULL; - button2 = NULL; - button4 = NULL; + button2 = NULL; + button4 = NULL; txt_entry_name = NULL; txt_entry_addr = NULL; - rww = NULL; - idx = -1; - } + rww = NULL; + idx = -1; + } }; struct ramWatchWin_t @@ -190,421 +198,459 @@ struct ramWatchWin_t GtkWidget *win; GtkWidget *tree; - GtkTreeStore *ram_watch_store; - bool ramWatchWinOpen; - int ramWatchEditRowIdx; - int ramWatchEditColIdx; + GtkTreeStore *ram_watch_store; + bool ramWatchWinOpen; + int ramWatchEditRowIdx; + int ramWatchEditColIdx; - ramWatchWin_t(void) - { - win = NULL; - tree = NULL; - ram_watch_store = NULL; - ramWatchWinOpen = false; - ramWatchEditRowIdx = -1; - ramWatchEditColIdx = -1; - } + ramWatchWin_t (void) + { + win = NULL; + tree = NULL; + ram_watch_store = NULL; + ramWatchWinOpen = false; + ramWatchEditRowIdx = -1; + ramWatchEditColIdx = -1; + } - void showRamWatchResults(int reset); + void showRamWatchResults (int reset); }; -static gint ramWatchEvntSrcID = 0; +static gint ramWatchEvntSrcID = 0; -void ramWatchWin_t::showRamWatchResults(int reset) +void ramWatchWin_t::showRamWatchResults (int reset) { - int row=0; - std::list ::iterator it; - GtkTreeIter iter; - char addrStr[32], valStr1[16], valStr2[16]; - ramWatch_t *rw; + int row = 0; + std::list < ramWatch_t * >::iterator it; + GtkTreeIter iter; + char addrStr[32], valStr1[16], valStr2[16]; + ramWatch_t *rw; - //if ( !reset ) - //{ - // if ( gtk_tree_model_get_iter_first( GTK_TREE_MODEL(ram_watch_store), &iter ) ) - // { - // size_t treeSize = 1; + //if ( !reset ) + //{ + // if ( gtk_tree_model_get_iter_first( GTK_TREE_MODEL(ram_watch_store), &iter ) ) + // { + // size_t treeSize = 1; - // while ( gtk_tree_model_iter_next( GTK_TREE_MODEL(ram_watch_store), &iter ) ) - // { - // treeSize++; - // } - // if ( treeSize != ramWatchList.size() ) - // { - // reset = 1; - // } - // //printf(" TreeSize: %zi RamWatchList.size: %zi \n", treeSize, ramWatchList.size() ); - // } - //} + // while ( gtk_tree_model_iter_next( GTK_TREE_MODEL(ram_watch_store), &iter ) ) + // { + // treeSize++; + // } + // if ( treeSize != ramWatchList.size() ) + // { + // reset = 1; + // } + // //printf(" TreeSize: %zi RamWatchList.size: %zi \n", treeSize, ramWatchList.size() ); + // } + //} - if ( reset ) - { - gtk_tree_store_clear(ram_watch_store); - } - else - { - if ( !gtk_tree_model_get_iter_first( GTK_TREE_MODEL(ram_watch_store), &iter ) ) - { - gtk_tree_store_append( ram_watch_store, &iter, NULL); // aquire iter - } - } + if (reset) + { + gtk_tree_store_clear (ram_watch_store); + } + else + { + if (!gtk_tree_model_get_iter_first + (GTK_TREE_MODEL (ram_watch_store), &iter)) + { + gtk_tree_store_append (ram_watch_store, &iter, NULL); // aquire iter + } + } - for (it=ramWatchList.ls.begin(); it!=ramWatchList.ls.end(); it++) - { - rw = *it; - sprintf( addrStr, "0x%04X", rw->addr ); + for (it = ramWatchList.ls.begin (); it != ramWatchList.ls.end (); it++) + { + rw = *it; + sprintf (addrStr, "0x%04X", rw->addr); - if ( reset ){ - gtk_tree_store_append( ram_watch_store, &iter, NULL); // aquire iter - } + if (reset) + { + gtk_tree_store_append (ram_watch_store, &iter, NULL); // aquire iter + } - rw->updateMem(); + rw->updateMem (); - if ( rw->size == 2 ) - { - if ( rw->type ){ - sprintf( valStr1, "%6u", rw->val.u16); - } else { - sprintf( valStr1, "%6i", rw->val.i16); - } - sprintf( valStr2, "0x%04X", rw->val.u16); - } - else - { - if ( rw->type ){ - sprintf( valStr1, "%6u", rw->val.u8); - } else { - sprintf( valStr1, "%6i", rw->val.i8); - } - sprintf( valStr2, "0x%02X", rw->val.u8); - } - - if ( row != ramWatchEditRowIdx ) - { - gtk_tree_store_set(ram_watch_store, &iter, - 0, addrStr, 1, valStr1, 2, valStr2, 3, rw->name.c_str(), - -1); - } - else - { - //if ( ramWatchEditColIdx != 0 ) - //{ - // gtk_tree_store_set(ram_watch_store, &iter, 0, addrStr, -1 ); - //} + if (rw->size == 2) + { + if (rw->type) + { + sprintf (valStr1, "%6u", rw->val.u16); + } + else + { + sprintf (valStr1, "%6i", rw->val.i16); + } + sprintf (valStr2, "0x%04X", rw->val.u16); + } + else + { + if (rw->type) + { + sprintf (valStr1, "%6u", rw->val.u8); + } + else + { + sprintf (valStr1, "%6i", rw->val.i8); + } + sprintf (valStr2, "0x%02X", rw->val.u8); + } - //if ( ramWatchEditColIdx != 1 ) - //{ - // gtk_tree_store_set(ram_watch_store, &iter, 1, valStr1, -1 ); - //} + if (row != ramWatchEditRowIdx) + { + gtk_tree_store_set (ram_watch_store, &iter, + 0, addrStr, 1, valStr1, 2, valStr2, + 3, rw->name.c_str (), -1); + } + else + { + //if ( ramWatchEditColIdx != 0 ) + //{ + // gtk_tree_store_set(ram_watch_store, &iter, 0, addrStr, -1 ); + //} - //if ( ramWatchEditColIdx != 2 ) - //{ - // gtk_tree_store_set(ram_watch_store, &iter, 2, valStr2, -1 ); - //} + //if ( ramWatchEditColIdx != 1 ) + //{ + // gtk_tree_store_set(ram_watch_store, &iter, 1, valStr1, -1 ); + //} - //if ( ramWatchEditColIdx != 3 ) - //{ - // gtk_tree_store_set(ram_watch_store, &iter, 3, rw->name.c_str(), -1 ); - //} - } + //if ( ramWatchEditColIdx != 2 ) + //{ + // gtk_tree_store_set(ram_watch_store, &iter, 2, valStr2, -1 ); + //} - if ( !reset ) - { - if ( !gtk_tree_model_iter_next( GTK_TREE_MODEL(ram_watch_store), &iter ) ) - { - gtk_tree_store_append( ram_watch_store, &iter, NULL); // aquire iter - } - } - row++; - } + //if ( ramWatchEditColIdx != 3 ) + //{ + // gtk_tree_store_set(ram_watch_store, &iter, 3, rw->name.c_str(), -1 ); + //} + } + + if (!reset) + { + if (!gtk_tree_model_iter_next + (GTK_TREE_MODEL (ram_watch_store), &iter)) + { + gtk_tree_store_append (ram_watch_store, &iter, NULL); // aquire iter + } + } + row++; + } } -static std::list ramWatchWinList; +static std::list < ramWatchWin_t * >ramWatchWinList; -void showAllRamWatchResults(int reset) +void showAllRamWatchResults (int reset) { - std::list ::iterator it; - - for (it=ramWatchWinList.begin(); it != ramWatchWinList.end(); it++) - { - (*it)->showRamWatchResults(reset); - } + std::list < ramWatchWin_t * >::iterator it; + + for (it = ramWatchWinList.begin (); it != ramWatchWinList.end (); it++) + { + (*it)->showRamWatchResults (reset); + } } -static void saveWatchFile( const char *filename ) +static void saveWatchFile (const char *filename) { int i; FILE *fp; const char *c; - std::list ::iterator it; + std::list < ramWatch_t * >::iterator it; ramWatch_t *rw; - fp = fopen( filename, "w"); + fp = fopen (filename, "w"); - if ( fp == NULL ) + if (fp == NULL) { - printf("Error: Failed to open file: %s\n", filename); + printf ("Error: Failed to open file: %s\n", filename); return; } - for (it=ramWatchList.ls.begin(); it!=ramWatchList.ls.end(); it++) + for (it = ramWatchList.ls.begin (); it != ramWatchList.ls.end (); it++) { rw = *it; - c = rw->name.c_str(); + c = rw->name.c_str (); - fprintf( fp, "0x%04x %c%i ", rw->addr, rw->type ? 'U' : 'S', rw->size); + fprintf (fp, "0x%04x %c%i ", rw->addr, rw->type ? 'U' : 'S', + rw->size); - i=0; - fprintf( fp, "\""); - while ( c[i] ) + i = 0; + fprintf (fp, "\""); + while (c[i]) { - if ( c[i] == '"') + if (c[i] == '"') { - fprintf( fp, "\\%c", c[i]); + fprintf (fp, "\\%c", c[i]); } else { - fprintf( fp, "%c", c[i]); + fprintf (fp, "%c", c[i]); } i++; } - fprintf( fp, "\"\n"); + fprintf (fp, "\"\n"); } - fclose(fp); + fclose (fp); } -static void loadWatchFile( const char *filename ) +static void loadWatchFile (const char *filename) { FILE *fp; int i, j, a, t, s, literal; char line[512], stmp[512]; ramWatch_t *rw; - fp = fopen( filename, "r"); + fp = fopen (filename, "r"); - if ( fp == NULL ) + if (fp == NULL) { - printf("Error: Failed to open file: %s\n", filename); + printf ("Error: Failed to open file: %s\n", filename); return; } - while ( fgets( line, sizeof(line)-1, fp ) > 0) + while (fgets (line, sizeof (line) - 1, fp) > 0) { - a = -1; t = -1; s = -1; - // Check for Comments - i=0; - while ( line[i] != 0 ) - { - if ( literal ) - { - literal = 0; - } - else - { - if ( line[i] == '#') - { - line[i] = 0; break; - } - else if ( line[i] == '\\' ) - { + a = -1; + t = -1; + s = -1; + // Check for Comments + i = 0; + while (line[i] != 0) + { + if (literal) + { + literal = 0; + } + else + { + if (line[i] == '#') + { + line[i] = 0; + break; + } + else if (line[i] == '\\') + { literal = 1; } - } - i++; - } + } + i++; + } - i=0; j=0; - while ( isspace(line[i]) ) i++; + i = 0; + j = 0; + while (isspace (line[i])) i++; - if ( (line[i] == '0') && ( tolower(line[i+1]) == 'x') ) - { - stmp[j] = '0'; j++; i++; - stmp[j] = 'x'; j++; i++; + if ((line[i] == '0') && (tolower (line[i + 1]) == 'x')) + { + stmp[j] = '0'; + j++; + i++; + stmp[j] = 'x'; + j++; + i++; - while ( isxdigit(line[i]) ) - { - stmp[j] = line[i]; i++; j++; - } - } - else - { - while ( isxdigit(line[i]) ) - { - stmp[j] = line[i]; i++; j++; - } - } - stmp[j] = 0; + while (isxdigit (line[i])) + { + stmp[j] = line[i]; + i++; + j++; + } + } + else + { + while (isxdigit (line[i])) + { + stmp[j] = line[i]; + i++; + j++; + } + } + stmp[j] = 0; - if ( j == 0 ) continue; + if (j == 0) continue; - a = strtol( stmp, NULL, 0); + a = strtol (stmp, NULL, 0); - while ( isspace(line[i]) ) i++; + while (isspace (line[i])) i++; - t = line[i]; i++; - s = line[i]; i++; + t = line[i]; + i++; + s = line[i]; + i++; - if ( (t != 'U') && (t != 'S') ) - { - printf("Error: Invalid RAM Watch Byte Type: %c", t); - continue; - } - if ( !isdigit(s) ) - { - printf("Error: Invalid RAM Watch Byte Size: %c", s); - continue; - } - s = s - '0'; + if ((t != 'U') && (t != 'S')) + { + printf ("Error: Invalid RAM Watch Byte Type: %c", t); + continue; + } + if (!isdigit (s)) + { + printf ("Error: Invalid RAM Watch Byte Size: %c", s); + continue; + } + s = s - '0'; - if ( (s != 1) && (s != 2) && (s != 4) ) - { - printf("Error: Invalid RAM Watch Byte Size: %i", s); - continue; - } + if ((s != 1) && (s != 2) && (s != 4)) + { + printf ("Error: Invalid RAM Watch Byte Size: %i", s); + continue; + } - while ( isspace(line[i]) ) i++; + while (isspace (line[i])) i++; - if ( line[i] == '"') - { - i++; j=0; - literal = 0; - while ( (line[i] != 0) ) - { - if ( literal ) + if (line[i] == '"') + { + i++; + j = 0; + literal = 0; + while ((line[i] != 0)) + { + if (literal) { - literal = 0; + literal = 0; } else { - if ( line[i] == '"') + if (line[i] == '"') { break; } - else if ( line[i] == '\\' ) - { + else if (line[i] == '\\') + { literal = 1; } } - if ( !literal ){ - stmp[j] = line[i]; j++; + if (!literal) + { + stmp[j] = line[i]; + j++; } - i++; - } - stmp[j] = 0; - } - rw = new ramWatch_t; + i++; + } + stmp[j] = 0; + } + rw = new ramWatch_t; - rw->addr = a; - rw->type = (t == 'U') ? 1 : 0; - rw->size = s; - rw->name.assign( stmp ); + rw->addr = a; + rw->type = (t == 'U') ? 1 : 0; + rw->size = s; + rw->name.assign (stmp); - ramWatchList.ls.push_back(rw); + ramWatchList.ls.push_back (rw); } - fclose(fp); + fclose (fp); - showAllRamWatchResults(1); + showAllRamWatchResults (1); } -static void openWatchFile( int mode ) +static void openWatchFile (int mode) { - GtkWidget* fileChooser; - GtkFileFilter* filterWch; - GtkFileFilter* filterAll; - - filterWch = gtk_file_filter_new(); - gtk_file_filter_add_pattern(filterWch, "*.wch"); - gtk_file_filter_add_pattern(filterWch, "*.WCH"); - gtk_file_filter_set_name(filterWch, "Watch files"); - - filterAll = gtk_file_filter_new(); - gtk_file_filter_add_pattern(filterAll, "*"); - gtk_file_filter_set_name(filterAll, "All Files"); - + GtkWidget *fileChooser; + GtkFileFilter *filterWch; + GtkFileFilter *filterAll; + + filterWch = gtk_file_filter_new (); + gtk_file_filter_add_pattern (filterWch, "*.wch"); + gtk_file_filter_add_pattern (filterWch, "*.WCH"); + gtk_file_filter_set_name (filterWch, "Watch files"); + + filterAll = gtk_file_filter_new (); + gtk_file_filter_add_pattern (filterAll, "*"); + gtk_file_filter_set_name (filterAll, "All Files"); + //const char* last_dir; //g_config->getOption("SDL.LastSaveStateAs", &last_dir); - if ( mode ) - { - fileChooser = gtk_file_chooser_dialog_new ("Save Watch File", GTK_WINDOW(MainWindow), - GTK_FILE_CHOOSER_ACTION_SAVE, "_Cancel", GTK_RESPONSE_CANCEL, - "_Save", GTK_RESPONSE_ACCEPT, NULL); - } - else - { - fileChooser = gtk_file_chooser_dialog_new ("Load Watch File", GTK_WINDOW(MainWindow), - GTK_FILE_CHOOSER_ACTION_OPEN, "_Cancel", GTK_RESPONSE_CANCEL, - "_Open", GTK_RESPONSE_ACCEPT, NULL); - } - - //gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(fileChooser), last_dir); - - //gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER(fileChooser), ".wch"); - gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(fileChooser), filterWch); - gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(fileChooser), filterAll); - - if (gtk_dialog_run (GTK_DIALOG (fileChooser)) ==GTK_RESPONSE_ACCEPT) + if (mode) { - char* filename; - - filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (fileChooser)); + fileChooser = + gtk_file_chooser_dialog_new ("Save Watch File", + GTK_WINDOW (MainWindow), + GTK_FILE_CHOOSER_ACTION_SAVE, + "_Cancel", + GTK_RESPONSE_CANCEL, + "_Save", + GTK_RESPONSE_ACCEPT, NULL); + } + else + { + fileChooser = + gtk_file_chooser_dialog_new ("Load Watch File", + GTK_WINDOW (MainWindow), + GTK_FILE_CHOOSER_ACTION_OPEN, + "_Cancel", + GTK_RESPONSE_CANCEL, + "_Open", + GTK_RESPONSE_ACCEPT, NULL); + } + + //gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(fileChooser), last_dir); + + //gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER(fileChooser), ".wch"); + gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (fileChooser), filterWch); + gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (fileChooser), filterAll); + + if (gtk_dialog_run (GTK_DIALOG (fileChooser)) == GTK_RESPONSE_ACCEPT) + { + char *filename; + + filename = + gtk_file_chooser_get_filename (GTK_FILE_CHOOSER + (fileChooser)); //FCEUI_SaveState(filename); //g_config->setOption("SDL.LastSaveStateAs", filename); - if ( filename ) + if (filename) { - if ( mode ) + if (mode) { - saveWatchFile( filename ); + saveWatchFile (filename); } else { - loadWatchFile( filename ); + loadWatchFile (filename); } - g_free(filename); + g_free (filename); } } gtk_widget_destroy (fileChooser); } -static void loadRamWatchCB( GtkMenuItem *menuitem, - gpointer user_data) +static void loadRamWatchCB (GtkMenuItem * menuitem, gpointer user_data) { - openWatchFile(0); -} -static void saveRamWatchCB( GtkMenuItem *menuitem, - gpointer user_data) -{ - openWatchFile(1); + openWatchFile (0); } -static GtkWidget* CreateRamWatchMenubar( GtkWidget* window) +static void saveRamWatchCB (GtkMenuItem * menuitem, gpointer user_data) { - GtkWidget *menubar, *menu, *item; + openWatchFile (1); +} - menubar = gtk_menu_bar_new(); +static GtkWidget *CreateRamWatchMenubar (GtkWidget * window) +{ + GtkWidget *menubar, *menu, *item; - item = gtk_menu_item_new_with_label("File"); + menubar = gtk_menu_bar_new (); - gtk_menu_shell_append( GTK_MENU_SHELL(menubar), item ); + item = gtk_menu_item_new_with_label ("File"); - menu = gtk_menu_new(); + gtk_menu_shell_append (GTK_MENU_SHELL (menubar), item); - gtk_menu_item_set_submenu( GTK_MENU_ITEM(item), menu ); + menu = gtk_menu_new (); - item = gtk_menu_item_new_with_label("Load Watch"); + gtk_menu_item_set_submenu (GTK_MENU_ITEM (item), menu); - g_signal_connect( item, "activate", G_CALLBACK(loadRamWatchCB), NULL); + item = gtk_menu_item_new_with_label ("Load Watch"); - gtk_menu_shell_append( GTK_MENU_SHELL(menu), item ); + g_signal_connect (item, "activate", G_CALLBACK (loadRamWatchCB), NULL); - item = gtk_menu_item_new_with_label("Save Watch"); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), item); - g_signal_connect( item, "activate", G_CALLBACK(saveRamWatchCB), NULL); + item = gtk_menu_item_new_with_label ("Save Watch"); - gtk_menu_shell_append( GTK_MENU_SHELL(menu), item ); + g_signal_connect (item, "activate", G_CALLBACK (saveRamWatchCB), NULL); + + gtk_menu_shell_append (GTK_MENU_SHELL (menu), item); // Finally, return the actual menu bar created return menubar; @@ -634,496 +680,546 @@ static GtkWidget* CreateRamWatchMenubar( GtkWidget* window) // // 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) { - int retval; - GtkWidget* vbox; - GtkWidget* hbox; - GtkWidget* label; - ramWatchEntryWin_t *ew; - char stmp[32]; + int retval; + GtkWidget *vbox; + GtkWidget *hbox; + GtkWidget *label; + ramWatchEntryWin_t *ew; + char stmp[32]; - ew = new ramWatchEntryWin_t; + ew = new ramWatchEntryWin_t; - //printf("RAM Entry At Index %i \n", idx ); + //printf("RAM Entry At Index %i \n", idx ); - ew->rww = rww; - ew->idx = idx; + ew->rww = rww; + ew->idx = idx; - ew->win = gtk_dialog_new_with_buttons("RAM Watch Entry", - GTK_WINDOW(rww->win), (GtkDialogFlags)(GTK_DIALOG_DESTROY_WITH_PARENT), - "_Close", - GTK_RESPONSE_OK, - NULL); - gtk_window_set_default_size(GTK_WINDOW(ew->win), 400, 200); + ew->win = gtk_dialog_new_with_buttons ("RAM Watch Entry", + GTK_WINDOW (rww->win), + (GtkDialogFlags) + (GTK_DIALOG_DESTROY_WITH_PARENT), + "_Close", GTK_RESPONSE_OK, NULL); + gtk_window_set_default_size (GTK_WINDOW (ew->win), 400, 200); - vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 6); + vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6); - label = gtk_label_new("Name:"); - ew->txt_entry_name = gtk_entry_new(); + label = gtk_label_new ("Name:"); + ew->txt_entry_name = gtk_entry_new (); - if ( name->size() > 0 ){ - gtk_entry_set_text( GTK_ENTRY(ew->txt_entry_name), name->c_str() ); - } + if (name->size () > 0) + { + gtk_entry_set_text (GTK_ENTRY (ew->txt_entry_name), + name->c_str ()); + } - gtk_box_pack_start (GTK_BOX(vbox), label, FALSE, FALSE, 0); - gtk_box_pack_start (GTK_BOX(vbox), ew->txt_entry_name, FALSE, TRUE, 0); + gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX (vbox), ew->txt_entry_name, FALSE, TRUE, 0); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 2); - label = gtk_label_new("Hex Address:"); - ew->txt_entry_addr = gtk_entry_new(); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 2); + label = gtk_label_new ("Hex Address:"); + ew->txt_entry_addr = gtk_entry_new (); - gtk_box_pack_start (GTK_BOX(vbox), label, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0); - label = gtk_label_new("0x"); - sprintf( stmp, "%04x", *addr ); - gtk_entry_set_max_length( GTK_ENTRY(ew->txt_entry_addr), 4 ); - gtk_entry_set_width_chars( GTK_ENTRY(ew->txt_entry_addr), 4 ); - gtk_entry_set_text( GTK_ENTRY(ew->txt_entry_addr), stmp ); + label = gtk_label_new ("0x"); + sprintf (stmp, "%04x", *addr); + gtk_entry_set_max_length (GTK_ENTRY (ew->txt_entry_addr), 4); + gtk_entry_set_width_chars (GTK_ENTRY (ew->txt_entry_addr), 4); + gtk_entry_set_text (GTK_ENTRY (ew->txt_entry_addr), stmp); - gtk_box_pack_start (GTK_BOX(hbox), label, FALSE, FALSE, 0); - gtk_box_pack_start (GTK_BOX(hbox), ew->txt_entry_addr, TRUE, TRUE, 0); - gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, TRUE, 0); + gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX (hbox), ew->txt_entry_addr, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0); - ew->chkbox = gtk_check_button_new_with_label("Value is Unsigned"); - gtk_box_pack_start (GTK_BOX(vbox), ew->chkbox, FALSE, FALSE, 0); + ew->chkbox = gtk_check_button_new_with_label ("Value is Unsigned"); + gtk_box_pack_start (GTK_BOX (vbox), ew->chkbox, FALSE, FALSE, 0); - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 4); - label = gtk_label_new("Size in Bytes:"); - ew->button1 = gtk_radio_button_new_with_label (NULL, "1"); - //gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), TRUE); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 4); + label = gtk_label_new ("Size in Bytes:"); + ew->button1 = gtk_radio_button_new_with_label (NULL, "1"); + //gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), TRUE); - gtk_box_pack_start (GTK_BOX(hbox), label, FALSE, FALSE, 1); - gtk_box_pack_start (GTK_BOX(hbox), ew->button1, TRUE, FALSE, 1); + gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 1); + gtk_box_pack_start (GTK_BOX (hbox), ew->button1, TRUE, FALSE, 1); - ew->button2 = gtk_radio_button_new_with_label_from_widget ( GTK_RADIO_BUTTON (ew->button1), "2"); - gtk_box_pack_start (GTK_BOX(hbox), ew->button2, TRUE, FALSE, 1); + ew->button2 = + gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON + (ew->button1), + "2"); + gtk_box_pack_start (GTK_BOX (hbox), ew->button2, TRUE, FALSE, 1); - ew->button4 = gtk_radio_button_new_with_label_from_widget ( GTK_RADIO_BUTTON (ew->button1), "4"); - gtk_box_pack_start (GTK_BOX(hbox), ew->button4, TRUE, FALSE, 1); + ew->button4 = + gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON + (ew->button1), + "4"); + gtk_box_pack_start (GTK_BOX (hbox), ew->button4, TRUE, FALSE, 1); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ew->button1), TRUE); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ew->button2), FALSE); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ew->button4), FALSE); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ew->button1), TRUE); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ew->button2), FALSE); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ew->button4), FALSE); - gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, TRUE, 1); + gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 1); - gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(ew->win))), vbox, TRUE, TRUE, 1); + gtk_box_pack_start (GTK_BOX + (gtk_dialog_get_content_area + (GTK_DIALOG (ew->win))), vbox, TRUE, TRUE, 1); - gtk_widget_show_all(ew->win); + gtk_widget_show_all (ew->win); - retval = gtk_dialog_run(GTK_DIALOG(ew->win)); + retval = gtk_dialog_run (GTK_DIALOG (ew->win)); - printf("retval %i\n", retval ); - // - if ( retval == GTK_RESPONSE_OK ) - { - // FIXME - what error checking should be done here + printf ("retval %i\n", retval); + // + if (retval == GTK_RESPONSE_OK) + { + // FIXME - what error checking should be done here - name->assign( gtk_entry_get_text ( GTK_ENTRY(ew->txt_entry_name) ) ); - - *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) ); - - if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(ew->button4) ) ) - { - *size = 4; - } - else if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(ew->button2) ) ) - { - *size = 2; - } - else - { - *size = 1; - } - } + name->assign (gtk_entry_get_text + (GTK_ENTRY (ew->txt_entry_name))); - //g_signal_connect(ew->win, "delete-event", G_CALLBACK(closeMemoryWatchEntryWindow), ew); + *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)); + + if (gtk_toggle_button_get_active + (GTK_TOGGLE_BUTTON (ew->button4))) + { + *size = 4; + } + else if (gtk_toggle_button_get_active + (GTK_TOGGLE_BUTTON (ew->button2))) + { + *size = 2; + } + else + { + *size = 1; + } + } + + //g_signal_connect(ew->win, "delete-event", G_CALLBACK(closeMemoryWatchEntryWindow), ew); //g_signal_connect(ew->win, "response", G_CALLBACK(closeMemoryWatchEntryWindow), ew); - gtk_widget_destroy(ew->win); + gtk_widget_destroy (ew->win); - delete ew; + delete ew; - return ( retval == GTK_RESPONSE_OK ); + return (retval == GTK_RESPONSE_OK); } -static void editRamWatch( GtkButton *button, - ramWatchWin_t *rww ) +static void editRamWatch (GtkButton * button, ramWatchWin_t * rww) { - GtkTreeModel *model = NULL; + GtkTreeModel *model = NULL; GtkTreeSelection *treeSel; - int numListRows; + int numListRows; GList *selListRows, *tmpList; - treeSel = gtk_tree_view_get_selection( GTK_TREE_VIEW(rww->tree) ); + treeSel = gtk_tree_view_get_selection (GTK_TREE_VIEW (rww->tree)); - numListRows = gtk_tree_selection_count_selected_rows( treeSel ); + numListRows = gtk_tree_selection_count_selected_rows (treeSel); - if ( numListRows == 0 ) - { - return; - } + if (numListRows == 0) + { + return; + } - selListRows = gtk_tree_selection_get_selected_rows( treeSel, &model ); + selListRows = gtk_tree_selection_get_selected_rows (treeSel, &model); tmpList = selListRows; - while ( tmpList ) + while (tmpList) { int depth; int *indexArray; - GtkTreePath *path = (GtkTreePath*)tmpList->data; + GtkTreePath *path = (GtkTreePath *) tmpList->data; - depth = gtk_tree_path_get_depth(path); - indexArray = gtk_tree_path_get_indices(path); + depth = gtk_tree_path_get_depth (path); + indexArray = gtk_tree_path_get_indices (path); - if ( depth > 0 ) + if (depth > 0) { - ramWatch_t *rw = ramWatchList.getIndex(indexArray[0]); + ramWatch_t *rw = ramWatchList.getIndex (indexArray[0]); - if ( rw != NULL ) - { - openRamWatchEntryDialog( rww, &rw->name, &rw->addr, &rw->type, &rw->size, indexArray[0] ); - showAllRamWatchResults(0); - } + if (rw != NULL) + { + openRamWatchEntryDialog (rww, &rw->name, + &rw->addr, &rw->type, + &rw->size, + indexArray[0]); + showAllRamWatchResults (0); + } } - tmpList = tmpList->next; + tmpList = tmpList->next; } - g_list_free_full(selListRows, (GDestroyNotify) gtk_tree_path_free); + g_list_free_full (selListRows, (GDestroyNotify) gtk_tree_path_free); } -static void removeRamWatch( GtkButton *button, - ramWatchWin_t *rww ) +static void removeRamWatch (GtkButton * button, ramWatchWin_t * rww) { - GtkTreeModel *model = NULL; + GtkTreeModel *model = NULL; GtkTreeSelection *treeSel; - int numListRows; + int numListRows; GList *selListRows, *tmpList; - treeSel = gtk_tree_view_get_selection( GTK_TREE_VIEW(rww->tree) ); + treeSel = gtk_tree_view_get_selection (GTK_TREE_VIEW (rww->tree)); - numListRows = gtk_tree_selection_count_selected_rows( treeSel ); + numListRows = gtk_tree_selection_count_selected_rows (treeSel); - if ( numListRows == 0 ) - { - return; - } + if (numListRows == 0) + { + return; + } - selListRows = gtk_tree_selection_get_selected_rows( treeSel, &model ); + selListRows = gtk_tree_selection_get_selected_rows (treeSel, &model); tmpList = selListRows; - while ( tmpList ) + while (tmpList) { int depth; int *indexArray; - GtkTreePath *path = (GtkTreePath*)tmpList->data; + GtkTreePath *path = (GtkTreePath *) tmpList->data; - depth = gtk_tree_path_get_depth(path); - indexArray = gtk_tree_path_get_indices(path); + depth = gtk_tree_path_get_depth (path); + indexArray = gtk_tree_path_get_indices (path); - if ( depth > 0 ) + if (depth > 0) { - ramWatchList.deleteIndex(indexArray[0]); - showAllRamWatchResults(1); + ramWatchList.deleteIndex (indexArray[0]); + showAllRamWatchResults (1); } - tmpList = tmpList->next; + tmpList = tmpList->next; } - g_list_free_full(selListRows, (GDestroyNotify) gtk_tree_path_free); + g_list_free_full (selListRows, (GDestroyNotify) gtk_tree_path_free); } -static void newRamWatch( GtkButton *button, - ramWatchWin_t *rww ) +static void newRamWatch (GtkButton * button, ramWatchWin_t * rww) { - std::string name; - int addr = 0, type = 0, size = 0; + std::string name; + int addr = 0, type = 0, size = 0; - if ( openRamWatchEntryDialog( rww, &name, &addr, &type, &size, -1 ) ) - { - ramWatchList.add_entry( name.c_str(), addr, type, size ); - } + if (openRamWatchEntryDialog (rww, &name, &addr, &type, &size, -1)) + { + ramWatchList.add_entry (name.c_str (), addr, type, size); + } - showAllRamWatchResults(1); + showAllRamWatchResults (1); } -static gint updateRamWatchTree( void *userData ) +static gint updateRamWatchTree (void *userData) { - //static uint32_t c = 0; - //printf("RamWatch: %u\n", c++ ); - showAllRamWatchResults(0); - return 1; + //static uint32_t c = 0; + //printf("RamWatch: %u\n", c++ ); + showAllRamWatchResults (0); + return 1; } -static void ramWatch_cell_edited_cb ( - GtkCellRendererText *cell, - gchar *path_string, - gchar *new_text, - ramWatchWin_t *rww ) +static void ramWatch_cell_edited_cb (GtkCellRendererText * cell, + gchar * path_string, + gchar * new_text, ramWatchWin_t * rww) { ramWatch_t *rw; - //printf("Ram Watch Edited: %i:%i\n", ramWatchEditRowIdx, ramWatchEditColIdx); + //printf("Ram Watch Edited: %i:%i\n", ramWatchEditRowIdx, ramWatchEditColIdx); - rw = ramWatchList.getIndex( rww->ramWatchEditRowIdx ); + rw = ramWatchList.getIndex (rww->ramWatchEditRowIdx); - switch ( rww->ramWatchEditColIdx ) - { - case 0: - rw->addr = strtol( new_text, NULL, 0 ); - break; - case 1: - case 2: - { - writefunc wfunc; + switch (rww->ramWatchEditColIdx) + { + case 0: + rw->addr = strtol (new_text, NULL, 0); + break; + case 1: + case 2: + { + writefunc wfunc; - if ( rw->size == 2 ) - { - if ( rw->type ) - { - rw->val.u16 = strtol( new_text, NULL, 0 ); - } - else - { - rw->val.i16 = strtol( new_text, NULL, 0 ); - } - wfunc = GetWriteHandler( rw->addr ); + if (rw->size == 2) + { + if (rw->type) + { + rw->val.u16 = + strtol (new_text, NULL, 0); + } + else + { + rw->val.i16 = + strtol (new_text, NULL, 0); + } + wfunc = GetWriteHandler (rw->addr); - if ( wfunc ) - { - wfunc( (uint32)rw->addr, (uint8)(rw->val.u16 & 0x00ff) ); - } + if (wfunc) + { + wfunc ((uint32) rw->addr, + (uint8) (rw->val.u16 & 0x00ff)); + } - wfunc = GetWriteHandler( rw->addr+1 ); + wfunc = GetWriteHandler (rw->addr + 1); - if ( wfunc ) - { - wfunc( (uint32)rw->addr+1, (uint8)( (rw->val.u16 & 0xff00) >> 8) ); - } - } - else - { - if ( rw->type ) - { - rw->val.u8 = strtol( new_text, NULL, 0 ); - } - else - { - rw->val.i8 = strtol( new_text, NULL, 0 ); - } - wfunc = GetWriteHandler( rw->addr ); + if (wfunc) + { + wfunc ((uint32) rw->addr + 1, + (uint8) ((rw->val. + u16 & 0xff00) >> 8)); + } + } + else + { + if (rw->type) + { + rw->val.u8 = strtol (new_text, NULL, 0); + } + else + { + rw->val.i8 = strtol (new_text, NULL, 0); + } + wfunc = GetWriteHandler (rw->addr); - if ( wfunc ) - { - wfunc( (uint32)rw->addr, (uint8)rw->val.u8 ); - } - } - } - break; - case 3: - rw->name.assign( new_text ); - break; - default: + if (wfunc) + { + wfunc ((uint32) rw->addr, + (uint8) rw->val.u8); + } + } + } + break; + case 3: + rw->name.assign (new_text); + break; + default: - break; - } + break; + } - rww->ramWatchEditRowIdx = -1; - rww->ramWatchEditColIdx = -1; + rww->ramWatchEditRowIdx = -1; + rww->ramWatchEditColIdx = -1; } -static void ramWatch_cell_edited_start_cb0( - GtkCellRenderer *renderer, - GtkCellEditable *editable, - gchar *path, - ramWatchWin_t *rww ) +static void ramWatch_cell_edited_start_cb0 (GtkCellRenderer * renderer, + GtkCellEditable * editable, + gchar * path, ramWatchWin_t * rww) { - //printf("Ram Watch Edit Start: '%s':%li\n", path, (long)user_data); - rww->ramWatchEditRowIdx = atoi( path ); - rww->ramWatchEditColIdx = 0; + //printf("Ram Watch Edit Start: '%s':%li\n", path, (long)user_data); + rww->ramWatchEditRowIdx = atoi (path); + rww->ramWatchEditColIdx = 0; } -static void ramWatch_cell_edited_start_cb1( - GtkCellRenderer *renderer, - GtkCellEditable *editable, - gchar *path, - ramWatchWin_t *rww ) +static void ramWatch_cell_edited_start_cb1 (GtkCellRenderer * renderer, + GtkCellEditable * editable, + gchar * path, ramWatchWin_t * rww) { - //printf("Ram Watch Edit Start: '%s':%li\n", path, (long)user_data); - rww->ramWatchEditRowIdx = atoi( path ); - rww->ramWatchEditColIdx = 1; + //printf("Ram Watch Edit Start: '%s':%li\n", path, (long)user_data); + rww->ramWatchEditRowIdx = atoi (path); + rww->ramWatchEditColIdx = 1; } -static void ramWatch_cell_edited_start_cb2( - GtkCellRenderer *renderer, - GtkCellEditable *editable, - gchar *path, - ramWatchWin_t *rww ) +static void ramWatch_cell_edited_start_cb2 (GtkCellRenderer * renderer, + GtkCellEditable * editable, + gchar * path, ramWatchWin_t * rww) { - //printf("Ram Watch Edit Start: '%s':%li\n", path, (long)user_data); - rww->ramWatchEditRowIdx = atoi( path ); - rww->ramWatchEditColIdx = 2; + //printf("Ram Watch Edit Start: '%s':%li\n", path, (long)user_data); + rww->ramWatchEditRowIdx = atoi (path); + rww->ramWatchEditColIdx = 2; } -static void ramWatch_cell_edited_start_cb3( - GtkCellRenderer *renderer, - GtkCellEditable *editable, - gchar *path, - ramWatchWin_t *rww ) +static void ramWatch_cell_edited_start_cb3 (GtkCellRenderer * renderer, + GtkCellEditable * editable, + gchar * path, ramWatchWin_t * rww) { - //printf("Ram Watch Edit Start: '%s':%li\n", path, (long)user_data); - rww->ramWatchEditRowIdx = atoi( path ); - rww->ramWatchEditColIdx = 3; + //printf("Ram Watch Edit Start: '%s':%li\n", path, (long)user_data); + rww->ramWatchEditRowIdx = atoi (path); + rww->ramWatchEditColIdx = 3; } -static void ramWatch_cell_edited_cancel_cb( - GtkCellRenderer *renderer, - ramWatchWin_t *rww ) +static void ramWatch_cell_edited_cancel_cb (GtkCellRenderer * renderer, + ramWatchWin_t * rww) { - //printf("Ram Watch Edit Cancel:%li\n", (long)user_data); - rww->ramWatchEditRowIdx = -1; - rww->ramWatchEditColIdx = -1; + //printf("Ram Watch Edit Cancel:%li\n", (long)user_data); + rww->ramWatchEditRowIdx = -1; + rww->ramWatchEditColIdx = -1; } -void closeMemoryWatchWindow(GtkWidget* w, GdkEvent* e, ramWatchWin_t *rww) +void closeMemoryWatchWindow (GtkWidget * w, GdkEvent * e, ramWatchWin_t * rww) { - std::list ::iterator it; + std::list < ramWatchWin_t * >::iterator it; - for (it=ramWatchWinList.begin(); it != ramWatchWinList.end(); it++) - { - if ( rww == *it ) - { - //printf("Removing RamWatch Window %p from List\n", cw); - ramWatchWinList.erase(it); break; - } - } + for (it = ramWatchWinList.begin (); it != ramWatchWinList.end (); it++) + { + if (rww == *it) + { + //printf("Removing RamWatch Window %p from List\n", cw); + ramWatchWinList.erase (it); + break; + } + } - delete rww; + delete rww; - gtk_widget_destroy(w); + gtk_widget_destroy (w); } // creates and opens cheats window -void openMemoryWatchWindow(void) +void openMemoryWatchWindow (void) { - GtkWidget* main_vbox; - GtkWidget* hbox; - GtkWidget* vbox; - GtkWidget* button; + GtkWidget *main_vbox; + GtkWidget *hbox; + GtkWidget *vbox; + GtkWidget *button; GtkWidget *scroll; - GtkWidget* menubar; - ramWatchWin_t *rww; + GtkWidget *menubar; + ramWatchWin_t *rww; - rww = new ramWatchWin_t; + rww = new ramWatchWin_t; - ramWatchWinList.push_back( rww ); + ramWatchWinList.push_back (rww); - rww->win = gtk_dialog_new_with_buttons("RAM Watch", - GTK_WINDOW(MainWindow), (GtkDialogFlags)(GTK_DIALOG_DESTROY_WITH_PARENT), - "_Close", - GTK_RESPONSE_OK, - NULL); + rww->win = gtk_dialog_new_with_buttons ("RAM Watch", + GTK_WINDOW (MainWindow), + (GtkDialogFlags) + (GTK_DIALOG_DESTROY_WITH_PARENT), + "_Close", GTK_RESPONSE_OK, + NULL); - gtk_window_set_default_size(GTK_WINDOW(rww->win), 600, 600); + gtk_window_set_default_size (GTK_WINDOW (rww->win), 600, 600); - main_vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 1); + main_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 1); - menubar = CreateRamWatchMenubar(rww->win); + menubar = CreateRamWatchMenubar (rww->win); - gtk_box_pack_start (GTK_BOX(main_vbox), menubar, FALSE, TRUE, 0); - - hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL,2); + gtk_box_pack_start (GTK_BOX (main_vbox), menubar, FALSE, TRUE, 0); - rww->ram_watch_store = gtk_tree_store_new( 4, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING); + hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 2); - rww->tree = gtk_tree_view_new_with_model(GTK_TREE_MODEL(rww->ram_watch_store)); + rww->ram_watch_store = + gtk_tree_store_new (4, G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_STRING, G_TYPE_STRING); - gtk_tree_view_set_grid_lines( GTK_TREE_VIEW(rww->tree), GTK_TREE_VIEW_GRID_LINES_VERTICAL ); + rww->tree = + gtk_tree_view_new_with_model (GTK_TREE_MODEL + (rww->ram_watch_store)); + + gtk_tree_view_set_grid_lines (GTK_TREE_VIEW (rww->tree), + GTK_TREE_VIEW_GRID_LINES_VERTICAL); GtkCellRenderer *renderer; - GtkTreeViewColumn* column; + GtkTreeViewColumn *column; - renderer = gtk_cell_renderer_text_new(); - g_object_set(renderer, "family", "MonoSpace", NULL); - g_object_set(renderer, "editable", TRUE, NULL); - g_signal_connect(renderer, "edited", (GCallback) ramWatch_cell_edited_cb, (gpointer)rww); - g_signal_connect(renderer, "editing-started", (GCallback) ramWatch_cell_edited_start_cb0, (gpointer)rww); - g_signal_connect(renderer, "editing-canceled", (GCallback) ramWatch_cell_edited_cancel_cb, (gpointer)rww); - column = gtk_tree_view_column_new_with_attributes("Addr", renderer, "text", 0, NULL); - gtk_tree_view_append_column(GTK_TREE_VIEW(rww->tree), column); + renderer = gtk_cell_renderer_text_new (); + g_object_set (renderer, "family", "MonoSpace", NULL); + g_object_set (renderer, "editable", TRUE, NULL); + g_signal_connect (renderer, "edited", + (GCallback) ramWatch_cell_edited_cb, (gpointer) rww); + g_signal_connect (renderer, "editing-started", + (GCallback) ramWatch_cell_edited_start_cb0, + (gpointer) rww); + g_signal_connect (renderer, "editing-canceled", + (GCallback) ramWatch_cell_edited_cancel_cb, + (gpointer) rww); + column = gtk_tree_view_column_new_with_attributes ("Addr", renderer, + "text", 0, NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (rww->tree), column); - renderer = gtk_cell_renderer_text_new(); - g_object_set(renderer, "family", "MonoSpace", NULL); - g_object_set(renderer, "editable", TRUE, NULL); - g_signal_connect(renderer, "edited", (GCallback) ramWatch_cell_edited_cb, (gpointer)rww); - g_signal_connect(renderer, "editing-started", (GCallback) ramWatch_cell_edited_start_cb1, (gpointer)rww); - g_signal_connect(renderer, "editing-canceled", (GCallback) ramWatch_cell_edited_cancel_cb, (gpointer)rww); - column = gtk_tree_view_column_new_with_attributes("Value Dec", renderer, "text", 1, NULL); - gtk_tree_view_append_column(GTK_TREE_VIEW(rww->tree), column); + renderer = gtk_cell_renderer_text_new (); + g_object_set (renderer, "family", "MonoSpace", NULL); + g_object_set (renderer, "editable", TRUE, NULL); + g_signal_connect (renderer, "edited", + (GCallback) ramWatch_cell_edited_cb, (gpointer) rww); + g_signal_connect (renderer, "editing-started", + (GCallback) ramWatch_cell_edited_start_cb1, + (gpointer) rww); + g_signal_connect (renderer, "editing-canceled", + (GCallback) ramWatch_cell_edited_cancel_cb, + (gpointer) rww); + column = gtk_tree_view_column_new_with_attributes ("Value Dec", + renderer, "text", 1, + NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (rww->tree), column); - renderer = gtk_cell_renderer_text_new(); - g_object_set(renderer, "family", "MonoSpace", NULL); - g_object_set(renderer, "editable", TRUE, NULL); - g_signal_connect(renderer, "edited", (GCallback) ramWatch_cell_edited_cb, (gpointer)rww); - g_signal_connect(renderer, "editing-started", (GCallback) ramWatch_cell_edited_start_cb2, (gpointer)rww); - g_signal_connect(renderer, "editing-canceled", (GCallback) ramWatch_cell_edited_cancel_cb, (gpointer)rww); - column = gtk_tree_view_column_new_with_attributes("Value Hex", renderer, "text", 2, NULL); - gtk_tree_view_append_column(GTK_TREE_VIEW(rww->tree), column); + renderer = gtk_cell_renderer_text_new (); + g_object_set (renderer, "family", "MonoSpace", NULL); + g_object_set (renderer, "editable", TRUE, NULL); + g_signal_connect (renderer, "edited", + (GCallback) ramWatch_cell_edited_cb, (gpointer) rww); + g_signal_connect (renderer, "editing-started", + (GCallback) ramWatch_cell_edited_start_cb2, + (gpointer) rww); + g_signal_connect (renderer, "editing-canceled", + (GCallback) ramWatch_cell_edited_cancel_cb, + (gpointer) rww); + column = gtk_tree_view_column_new_with_attributes ("Value Hex", + renderer, "text", 2, + NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (rww->tree), column); - renderer = gtk_cell_renderer_text_new(); - g_object_set(renderer, "editable", TRUE, NULL); - g_signal_connect(renderer, "edited", (GCallback) ramWatch_cell_edited_cb, (gpointer)rww); - g_signal_connect(renderer, "editing-started", (GCallback) ramWatch_cell_edited_start_cb3, (gpointer)rww); - g_signal_connect(renderer, "editing-canceled", (GCallback) ramWatch_cell_edited_cancel_cb, (gpointer)rww); - column = gtk_tree_view_column_new_with_attributes("Notes", renderer, "text", 3, NULL); - gtk_tree_view_append_column(GTK_TREE_VIEW(rww->tree), column); + renderer = gtk_cell_renderer_text_new (); + g_object_set (renderer, "editable", TRUE, NULL); + g_signal_connect (renderer, "edited", + (GCallback) ramWatch_cell_edited_cb, (gpointer) rww); + g_signal_connect (renderer, "editing-started", + (GCallback) ramWatch_cell_edited_start_cb3, + (gpointer) rww); + g_signal_connect (renderer, "editing-canceled", + (GCallback) ramWatch_cell_edited_cancel_cb, + (gpointer) rww); + column = gtk_tree_view_column_new_with_attributes ("Notes", renderer, + "text", 3, NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (rww->tree), column); - scroll = gtk_scrolled_window_new(NULL, NULL); - gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroll), GTK_POLICY_NEVER, - GTK_POLICY_AUTOMATIC); - gtk_container_add(GTK_CONTAINER(scroll), rww->tree); - gtk_box_pack_start(GTK_BOX(hbox), scroll, TRUE, TRUE, 5); + scroll = gtk_scrolled_window_new (NULL, NULL); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scroll), + GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); + gtk_container_add (GTK_CONTAINER (scroll), rww->tree); + gtk_box_pack_start (GTK_BOX (hbox), scroll, TRUE, TRUE, 5); - gtk_box_pack_start(GTK_BOX(main_vbox), hbox, TRUE, TRUE, 5); + gtk_box_pack_start (GTK_BOX (main_vbox), hbox, TRUE, TRUE, 5); - showAllRamWatchResults(1); + showAllRamWatchResults (1); - if ( ramWatchEvntSrcID == 0 ) - { - ramWatchEvntSrcID = g_timeout_add( 100, updateRamWatchTree, NULL ); - } + if (ramWatchEvntSrcID == 0) + { + ramWatchEvntSrcID = + g_timeout_add (100, updateRamWatchTree, NULL); + } - vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 3); + vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 3); - button = gtk_button_new_with_label("Edit"); - gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 5); - g_signal_connect( button, "clicked", - G_CALLBACK (editRamWatch), (gpointer) rww ); + button = gtk_button_new_with_label ("Edit"); + gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 5); + g_signal_connect (button, "clicked", + G_CALLBACK (editRamWatch), (gpointer) rww); - button = gtk_button_new_with_label("Remove"); - gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 5); - g_signal_connect( button, "clicked", - G_CALLBACK (removeRamWatch), (gpointer) rww ); + button = gtk_button_new_with_label ("Remove"); + gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 5); + g_signal_connect (button, "clicked", + G_CALLBACK (removeRamWatch), (gpointer) rww); - button = gtk_button_new_with_label("New"); - gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 5); - g_signal_connect( button, "clicked", - G_CALLBACK (newRamWatch), (gpointer) rww ); + button = gtk_button_new_with_label ("New"); + gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 5); + g_signal_connect (button, "clicked", + G_CALLBACK (newRamWatch), (gpointer) rww); - gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 5); + gtk_box_pack_start (GTK_BOX (hbox), vbox, TRUE, TRUE, 5); - gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(rww->win))), main_vbox, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX + (gtk_dialog_get_content_area + (GTK_DIALOG (rww->win))), main_vbox, TRUE, TRUE, + 0); - g_signal_connect(rww->win, "delete-event", G_CALLBACK(closeMemoryWatchWindow), rww); - g_signal_connect(rww->win, "response", G_CALLBACK(closeMemoryWatchWindow), rww); - - gtk_widget_show_all(rww->win); + g_signal_connect (rww->win, "delete-event", + G_CALLBACK (closeMemoryWatchWindow), rww); + g_signal_connect (rww->win, "response", + G_CALLBACK (closeMemoryWatchWindow), rww); + + gtk_widget_show_all (rww->win); }