[gtk+] Bug 702144: Make gdkwin32.h a pure include-only header
- From: Chun-wei Fan <fanchunwei src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] Bug 702144: Make gdkwin32.h a pure include-only header
- Date: Wed, 14 Aug 2013 00:14:05 +0000 (UTC)
commit ee0b0fa48230b5587fbe1c6ea3e21e6795191b32
Author: Chun-wei Fan <fanchunwei src gnome org>
Date: Thu Jun 13 12:16:16 2013 +0800
Bug 702144: Make gdkwin32.h a pure include-only header
Move all the system includes, defines and function prototypes into a
separate header gdkwin32misc.h, so that we could keep gdkwin32.h as simple
as possible.
gdk/win32/Makefile.am | 1 +
gdk/win32/gdkwin32.h | 76 +-------------------------------
gdk/win32/gdkwin32misc.h | 111 ++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 113 insertions(+), 75 deletions(-)
---
diff --git a/gdk/win32/Makefile.am b/gdk/win32/Makefile.am
index ef5f6e8..640a215 100644
--- a/gdk/win32/Makefile.am
+++ b/gdk/win32/Makefile.am
@@ -75,6 +75,7 @@ libgdkwin32include_HEADERS = \
gdkwin32displaymanager.h\
gdkwin32dnd.h \
gdkwin32keys.h \
+ gdkwin32misc.h \
gdkwin32screen.h \
gdkwin32window.h
diff --git a/gdk/win32/gdkwin32.h b/gdk/win32/gdkwin32.h
index fe00c9a..5256392 100644
--- a/gdk/win32/gdkwin32.h
+++ b/gdk/win32/gdkwin32.h
@@ -34,82 +34,8 @@
#include <gdk/win32/gdkwin32keys.h>
#include <gdk/win32/gdkwin32screen.h>
#include <gdk/win32/gdkwin32window.h>
+#include <gdk/win32/gdkwin32misc.h>
#undef __GDKWIN32_H_INSIDE__
-#include <gdk/gdkprivate.h>
-
-#ifndef STRICT
-#define STRICT /* We want strict type checks */
-#endif
-#include <windows.h>
-#include <commctrl.h>
-
-G_BEGIN_DECLS
-
-#ifdef INSIDE_GDK_WIN32
-
-#include "gdkprivate-win32.h"
-
-#define GDK_WINDOW_HWND(win) (GDK_WINDOW_IMPL_WIN32(win->impl)->handle)
-#else
-/* definition for exported 'internals' go here */
-#define GDK_WINDOW_HWND(d) (gdk_win32_window_get_handle (d))
-
-#endif
-
-/* These need to be here so gtkstatusicon.c can pick them up if needed. */
-#ifndef WM_XBUTTONDOWN
-#define WM_XBUTTONDOWN 0x020B
-#endif
-#ifndef WM_XBUTTONUP
-#define WM_XBUTTONUP 0x020C
-#endif
-#ifndef GET_XBUTTON_WPARAM
-#define GET_XBUTTON_WPARAM(w) (HIWORD(w))
-#endif
-#ifndef XBUTTON1
-#define XBUTTON1 1
-#endif
-#ifndef XBUTTON2
-#define XBUTTON2 2
-#endif
-
-
-/* Return true if the GdkWindow is a win32 implemented window */
-GDK_AVAILABLE_IN_ALL
-gboolean gdk_win32_window_is_win32 (GdkWindow *window);
-GDK_AVAILABLE_IN_ALL
-HWND gdk_win32_window_get_impl_hwnd (GdkWindow *window);
-
-/* Return the Gdk* for a particular HANDLE */
-GDK_AVAILABLE_IN_ALL
-gpointer gdk_win32_handle_table_lookup (HWND handle);
-/* Translate from window to Windows handle */
-GDK_AVAILABLE_IN_ALL
-HGDIOBJ gdk_win32_window_get_handle (GdkWindow *window);
-
-GDK_AVAILABLE_IN_ALL
-void gdk_win32_selection_add_targets (GdkWindow *owner,
- GdkAtom selection,
- gint n_targets,
- GdkAtom *targets);
-
-/* For internal GTK use only */
-GDK_AVAILABLE_IN_ALL
-GdkPixbuf *gdk_win32_icon_to_pixbuf_libgtk_only (HICON hicon);
-GDK_AVAILABLE_IN_ALL
-HICON gdk_win32_pixbuf_to_hicon_libgtk_only (GdkPixbuf *pixbuf);
-GDK_AVAILABLE_IN_ALL
-void gdk_win32_set_modal_dialog_libgtk_only (HWND window);
-
-GDK_AVAILABLE_IN_ALL
-GdkWindow * gdk_win32_window_foreign_new_for_display (GdkDisplay *display,
- HWND anid);
-GDK_AVAILABLE_IN_ALL
-GdkWindow * gdk_win32_window_lookup_for_display (GdkDisplay *display,
- HWND anid);
-
-G_END_DECLS
-
#endif /* __GDK_WIN32_H__ */
diff --git a/gdk/win32/gdkwin32misc.h b/gdk/win32/gdkwin32misc.h
new file mode 100644
index 0000000..36b5215
--- /dev/null
+++ b/gdk/win32/gdkwin32misc.h
@@ -0,0 +1,111 @@
+/* GDK - The GIMP Drawing Kit
+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
+ * Copyright (C) 2013 Chun-wei Fan
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+/*
+ * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
+ * file for a list of people on the GTK+ Team. See the ChangeLog
+ * files for a list of changes. These files are distributed with
+ * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
+ */
+
+#ifndef __GDK_WIN32_MISC_H__
+#define __GDK_WIN32_MISC_H__
+
+#if !defined (__GDKWIN32_H_INSIDE__) && !defined (GDK_COMPILATION)
+#error "Only <gdk/gdkwin32.h> can be included directly."
+#endif
+
+#include <gdk/gdk.h>
+
+#ifndef STRICT
+#define STRICT /* We want strict type checks */
+#endif
+#include <windows.h>
+#include <commctrl.h>
+
+G_BEGIN_DECLS
+
+#ifdef INSIDE_GDK_WIN32
+
+#include "gdkprivate-win32.h"
+
+#define GDK_WINDOW_HWND(win) (GDK_WINDOW_IMPL_WIN32(win->impl)->handle)
+#else
+/* definition for exported 'internals' go here */
+#define GDK_WINDOW_HWND(d) (gdk_win32_window_get_handle (d))
+
+#endif /* INSIDE_GDK_WIN32 */
+
+/* These need to be here so gtkstatusicon.c can pick them up if needed. */
+#ifndef WM_XBUTTONDOWN
+#define WM_XBUTTONDOWN 0x020B
+#endif
+#ifndef WM_XBUTTONUP
+#define WM_XBUTTONUP 0x020C
+#endif
+#ifndef GET_XBUTTON_WPARAM
+#define GET_XBUTTON_WPARAM(w) (HIWORD(w))
+#endif
+#ifndef XBUTTON1
+#define XBUTTON1 1
+#endif
+#ifndef XBUTTON2
+#define XBUTTON2 2
+#endif
+
+/* Return true if the GdkWindow is a win32 implemented window */
+GDK_AVAILABLE_IN_ALL
+gboolean gdk_win32_window_is_win32 (GdkWindow *window);
+GDK_AVAILABLE_IN_ALL
+HWND gdk_win32_window_get_impl_hwnd (GdkWindow *window);
+
+/* Return the Gdk* for a particular HANDLE */
+GDK_AVAILABLE_IN_ALL
+gpointer gdk_win32_handle_table_lookup (HWND handle);
+/* Translate from window to Windows handle */
+GDK_AVAILABLE_IN_ALL
+HGDIOBJ gdk_win32_window_get_handle (GdkWindow *window);
+
+GDK_AVAILABLE_IN_ALL
+void gdk_win32_selection_add_targets (GdkWindow *owner,
+ GdkAtom selection,
+ gint n_targets,
+ GdkAtom *targets);
+
+GDK_AVAILABLE_IN_ALL
+GdkWindow * gdk_win32_window_foreign_new_for_display (GdkDisplay *display,
+ HWND anid);
+GDK_AVAILABLE_IN_ALL
+GdkWindow * gdk_win32_window_lookup_for_display (GdkDisplay *display,
+ HWND anid);
+
+#if defined (INSIDE_GDK_WIN32) || defined (GDK_COMPILATION) || defined (GTK_COMPILATION)
+
+/* For internal GTK use only */
+GDK_AVAILABLE_IN_ALL
+GdkPixbuf *gdk_win32_icon_to_pixbuf_libgtk_only (HICON hicon);
+GDK_AVAILABLE_IN_ALL
+HICON gdk_win32_pixbuf_to_hicon_libgtk_only (GdkPixbuf *pixbuf);
+GDK_AVAILABLE_IN_ALL
+void gdk_win32_set_modal_dialog_libgtk_only (HWND window);
+
+#endif
+
+G_END_DECLS
+
+#endif /* __GDK_WIN32_MISC_H__ */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]