filename | src/gui/gtkui.c |
changeset | 477:9a373f2ff009 |
prev | 470:e09a16196693 |
next | 480:d28c2992f5ee |
author | nkeynes |
date | Wed Oct 31 09:10:23 2007 +0000 (16 years ago) |
permissions | -rw-r--r-- |
last change | Add save/restore of render buffers in save states Gzip memory blocks in save states Move front-buffer management back to pvr2 Add screenshot preview when loading save states Various minor fixes and cleanups |
file | annotate | diff | log | raw |
1.1 --- a/src/gui/gtkui.c Sun Oct 28 08:29:29 2007 +00001.2 +++ b/src/gui/gtkui.c Wed Oct 31 09:10:23 2007 +00001.3 @@ -1,5 +1,5 @@1.4 /**1.5 - * $Id: gtkui.c,v 1.8 2007-10-28 08:29:29 nkeynes Exp $1.6 + * $Id: gtkui.c,v 1.9 2007-10-31 09:10:23 nkeynes Exp $1.7 *1.8 * Core GTK-based user interface1.9 *1.10 @@ -20,6 +20,7 @@1.11 #include <time.h>1.12 #include "dream.h"1.13 #include "dreamcast.h"1.14 +#include "display.h"1.15 #include "gdrom/gdrom.h"1.16 #include "gui/gtkui.h"1.18 @@ -134,7 +135,7 @@1.19 " </toolbar>"1.20 " <menubar name='DebugMenu'>"1.21 " <menu action='FileMenu'>"1.22 - " <menuitem action='GdromMount'/>"1.23 + " <menuitem action='GdromSettings'/>"1.24 " <separator/>"1.25 " <menuitem action='Reset'/>"1.26 " <separator/>"1.27 @@ -263,6 +264,9 @@1.28 GtkAccelGroup *accel_group = gtk_ui_manager_get_accel_group (global_ui_manager);1.29 GtkWidget *menubar = gtk_ui_manager_get_widget(global_ui_manager, "/DebugMenu");1.30 GtkWidget *toolbar = gtk_ui_manager_get_widget(global_ui_manager, "/DebugToolbar");1.31 + GtkWidget *gdrommenuitem = gtk_ui_manager_get_widget(global_ui_manager, "/DebugMenu/FileMenu/GdromSettings");1.32 + GtkWidget *gdrommenu = gdrom_menu_new();1.33 + gtk_menu_item_set_submenu( GTK_MENU_ITEM(gdrommenuitem), gdrommenu );1.34 debug_win = debug_window_new( APP_NAME " " APP_VERSION " :: Debugger", menubar, toolbar, accel_group );1.35 }1.36 }1.37 @@ -423,3 +427,23 @@1.38 {1.39 gtk_action_set_sensitive( gtk_action_group_get_action( global_action_group, action), enable);1.40 }1.41 +1.42 +static void delete_frame_buffer( guchar *pixels, gpointer buffer )1.43 +{1.44 + if( buffer != NULL ) {1.45 + g_free(buffer);1.46 + }1.47 +}1.48 +1.49 +GdkPixbuf *gdk_pixbuf_new_from_frame_buffer( frame_buffer_t buffer )1.50 +{1.51 + return gdk_pixbuf_new_from_data( buffer->data,1.52 + GDK_COLORSPACE_RGB,1.53 + (buffer->colour_format == COLFMT_BGRA8888),1.54 + 8,1.55 + buffer->width,1.56 + buffer->height,1.57 + buffer->rowstride,1.58 + delete_frame_buffer,1.59 + buffer );1.60 +}
.