Search
lxdream.org :: lxdream/src/gui/gtkui.c :: diff
lxdream 0.9.1
released Jun 29
Download Now
filename src/gui/gtkui.c
changeset 477:9a373f2ff009
prev470:e09a16196693
next480: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 +0000
1.2 +++ b/src/gui/gtkui.c Wed Oct 31 09:10:23 2007 +0000
1.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 interface
1.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.17
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 +}
.