[GTK3] Add vram_viewer_clear()
This commit is contained in:
parent
f74b1cd3d9
commit
6a15ff582e
13
gtk3/main.c
13
gtk3/main.c
@ -1716,18 +1716,7 @@ static void close_rom(void) {
|
|||||||
gtk_gl_area_queue_render(gui_data.gl_area);
|
gtk_gl_area_queue_render(gui_data.gl_area);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Clear the VRAM viewer
|
vram_viewer_clear(gui_data.vram_viewer);
|
||||||
// g_mutex_lock(&gui_data.tileset_buffer_mutex);
|
|
||||||
// memset(gui_data.tileset_buffer, 0, sizeof gui_data.tileset_buffer);
|
|
||||||
// g_mutex_unlock(&gui_data.tileset_buffer_mutex);
|
|
||||||
|
|
||||||
// g_mutex_lock(&gui_data.tilemap_buffer_mutex);
|
|
||||||
// memset(gui_data.tilemap_buffer, 0, sizeof gui_data.tilemap_buffer);
|
|
||||||
// g_mutex_unlock(&gui_data.tilemap_buffer_mutex);
|
|
||||||
|
|
||||||
gtk_stack_set_visible_child_name(builder_get(GTK_STACK, "vram_viewer_stack"), "vram_viewer_tileset");
|
|
||||||
gtk_tree_view_set_model(builder_get(GTK_TREE_VIEW, "vram_viewer_sprites"), NULL);
|
|
||||||
gtk_tree_view_set_model(builder_get(GTK_TREE_VIEW, "vram_viewer_palettes"), NULL);
|
|
||||||
|
|
||||||
// Redraw the VRAM viewer
|
// Redraw the VRAM viewer
|
||||||
gtk_widget_queue_draw(GTK_WIDGET(gui_data.vram_viewer));
|
gtk_widget_queue_draw(GTK_WIDGET(gui_data.vram_viewer));
|
||||||
|
@ -375,7 +375,7 @@ static gboolean update_sprite_list(VramViewerWindow *window) {
|
|||||||
GtkListStore *store;
|
GtkListStore *store;
|
||||||
|
|
||||||
if (!model) {
|
if (!model) {
|
||||||
g_autoptr(GtkListStore) new_store = gtk_list_store_new(7,
|
GtkListStore *new_store = gtk_list_store_new(7,
|
||||||
GDK_TYPE_PIXBUF, // Preview image
|
GDK_TYPE_PIXBUF, // Preview image
|
||||||
G_TYPE_STRING, // X position
|
G_TYPE_STRING, // X position
|
||||||
G_TYPE_STRING, // Y position
|
G_TYPE_STRING, // Y position
|
||||||
@ -477,7 +477,7 @@ static gboolean update_palettes(VramViewerWindow *window) {
|
|||||||
GtkListStore *store;
|
GtkListStore *store;
|
||||||
|
|
||||||
if (!model) {
|
if (!model) {
|
||||||
g_autoptr(GtkListStore) new_store = gtk_list_store_new(9,
|
GtkListStore *new_store = gtk_list_store_new(9,
|
||||||
G_TYPE_STRING, // Name
|
G_TYPE_STRING, // Name
|
||||||
|
|
||||||
G_TYPE_STRING, // Color 0 string
|
G_TYPE_STRING, // Color 0 string
|
||||||
@ -614,3 +614,16 @@ void vram_viewer_update(VramViewerWindow *window, GB_gameboy_t *gb) {
|
|||||||
g_idle_add((GSourceFunc) update_palettes, window);
|
g_idle_add((GSourceFunc) update_palettes, window);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void vram_viewer_clear(VramViewerWindow *window) {
|
||||||
|
g_idle_remove_by_data(window);
|
||||||
|
|
||||||
|
memset(window->tilemap_buffer, 0, tilemap_buffer_length * sizeof(uint32_t));
|
||||||
|
memset(window->tileset_buffer, 0, tileset_buffer_length * sizeof(uint32_t));
|
||||||
|
|
||||||
|
g_autoptr(GtkTreeModel) sprites_model = gtk_tree_view_get_model(window->sprites);
|
||||||
|
if (sprites_model) gtk_list_store_clear(GTK_LIST_STORE(sprites_model));
|
||||||
|
|
||||||
|
g_autoptr(GtkTreeModel) palettes_model = gtk_tree_view_get_model(window->palettes);
|
||||||
|
if (palettes_model) gtk_list_store_clear(GTK_LIST_STORE(palettes_model));
|
||||||
|
}
|
||||||
|
@ -26,5 +26,6 @@ uint32_t *vram_viewer_get_tileset_buffer(VramViewerWindow *window);
|
|||||||
uint32_t *vram_viewer_get_tilemap_buffer(VramViewerWindow *window);
|
uint32_t *vram_viewer_get_tilemap_buffer(VramViewerWindow *window);
|
||||||
|
|
||||||
void vram_viewer_update(VramViewerWindow *window, GB_gameboy_t *gb);
|
void vram_viewer_update(VramViewerWindow *window, GB_gameboy_t *gb);
|
||||||
|
void vram_viewer_clear(VramViewerWindow *window);
|
||||||
|
|
||||||
#endif
|
#endif
|
Loading…
Reference in New Issue
Block a user