[gimp] Move GtkWidget::delete_event() impl from the shell to the window
- From: Michael Natterer <mitch src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gimp] Move GtkWidget::delete_event() impl from the shell to the window
- Date: Tue, 29 Sep 2009 18:39:06 +0000 (UTC)
commit a5945740e0ee6a817bcc76a06789b1e57449bedb
Author: Michael Natterer <mitch gimp org>
Date: Fri Sep 25 12:48:30 2009 +0200
Move GtkWidget::delete_event() impl from the shell to the window
Still has a FIXME but is in the right place now at least
app/display/gimpdisplayshell.c | 15 ---------------
app/display/gimpimagewindow.c | 17 +++++++++++++++++
2 files changed, 17 insertions(+), 15 deletions(-)
---
diff --git a/app/display/gimpdisplayshell.c b/app/display/gimpdisplayshell.c
index 8d1231b..e2e59a7 100644
--- a/app/display/gimpdisplayshell.c
+++ b/app/display/gimpdisplayshell.c
@@ -62,7 +62,6 @@
#include "gimpdisplayshell.h"
#include "gimpdisplayshell-appearance.h"
#include "gimpdisplayshell-callbacks.h"
-#include "gimpdisplayshell-close.h"
#include "gimpdisplayshell-cursor.h"
#include "gimpdisplayshell-dnd.h"
#include "gimpdisplayshell-draw.h"
@@ -122,8 +121,6 @@ static void gimp_display_shell_destroy (GtkObject *object);
static void gimp_display_shell_unrealize (GtkWidget *widget);
static void gimp_display_shell_screen_changed (GtkWidget *widget,
GdkScreen *previous);
-static gboolean gimp_display_shell_delete_event (GtkWidget *widget,
- GdkEventAny *aevent);
static gboolean gimp_display_shell_configure_event(GtkWidget *widget,
GdkEventConfigure*cevent);
static gboolean
@@ -207,7 +204,6 @@ gimp_display_shell_class_init (GimpDisplayShellClass *klass)
widget_class->unrealize = gimp_display_shell_unrealize;
widget_class->screen_changed = gimp_display_shell_screen_changed;
- widget_class->delete_event = gimp_display_shell_delete_event;
widget_class->configure_event = gimp_display_shell_configure_event;
widget_class->window_state_event = gimp_display_shell_window_state_event;
widget_class->popup_menu = gimp_display_shell_popup_menu;
@@ -664,17 +660,6 @@ gimp_display_shell_screen_changed (GtkWidget *widget,
}
static gboolean
-gimp_display_shell_delete_event (GtkWidget *widget,
- GdkEventAny *aevent)
-{
- GimpDisplayShell *shell = GIMP_DISPLAY_SHELL (widget);
-
- gimp_display_shell_close (shell, FALSE);
-
- return TRUE;
-}
-
-static gboolean
gimp_display_shell_configure_event (GtkWidget *widget,
GdkEventConfigure *cevent)
{
diff --git a/app/display/gimpimagewindow.c b/app/display/gimpimagewindow.c
index 804cd7b..5dd93a7 100644
--- a/app/display/gimpimagewindow.c
+++ b/app/display/gimpimagewindow.c
@@ -34,6 +34,7 @@
#include "gimpdisplay.h"
#include "gimpdisplay-foreach.h"
#include "gimpdisplayshell.h"
+#include "gimpdisplayshell-close.h"
#include "gimpimagewindow.h"
#include "gimpstatusbar.h"
@@ -66,6 +67,8 @@ static void gimp_image_window_get_property (GObject *object,
static void gimp_image_window_destroy (GtkObject *object);
+static gboolean gimp_image_window_delete_event (GtkWidget *widget,
+ GdkEventAny *event);
static gboolean gimp_image_window_window_state (GtkWidget *widget,
GdkEventWindowState *event);
static void gimp_image_window_style_set (GtkWidget *widget,
@@ -120,6 +123,7 @@ gimp_image_window_class_init (GimpImageWindowClass *klass)
gtk_object_class->destroy = gimp_image_window_destroy;
+ widget_class->delete_event = gimp_image_window_delete_event;
widget_class->window_state_event = gimp_image_window_window_state;
widget_class->style_set = gimp_image_window_style_set;
@@ -283,6 +287,19 @@ gimp_image_window_destroy (GtkObject *object)
}
static gboolean
+gimp_image_window_delete_event (GtkWidget *widget,
+ GdkEventAny *event)
+{
+ GimpImageWindow *window = GIMP_IMAGE_WINDOW (widget);
+ GimpDisplay *display = gimp_image_window_get_active_display (window);
+
+ /* FIXME multiple shells */
+ gimp_display_shell_close (GIMP_DISPLAY_SHELL (display->shell), FALSE);
+
+ return TRUE;
+}
+
+static gboolean
gimp_image_window_window_state (GtkWidget *widget,
GdkEventWindowState *event)
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]