From 585471a4795061c00d8764f06e09a73a34ef8682 Mon Sep 17 00:00:00 2001 From: Tor Lillqvist Date: Mon, 30 Aug 2004 20:58:57 +0000 Subject: [PATCH] Make the ms-windows theme engine build with mingw. 2004-08-30 Tor Lillqvist Make the ms-windows theme engine build with mingw. * configure.in: Expand also modules/engines/ms-windows/Theme/ Makefile and .../Theme/gtk-2.0/Makefile. * modules/engines/ms-windows/Makefile.am: Adapt for building inside the GTK sources. * modules/engines/ms-windows/*.c: Use "foo.h" style includes for GTK and GDK headers. Use correct path for gdkwin32.h header. * modules/engines/ms-windows/msw_style.c: Don't use deprecated GDK API. * modules/engines/ms-windows/xp_theme_defs.h * modules/engines/ms-windows/xp_theme.c: Move definitions of TMT_* to xp_theme.c, as they are neither in mingw's nor Platform SDK's tmschema.h. * modules/engines/ms-windows/xp_theme.c: Define _WIN32_WINNT as 0x0501 to get the necesssary stuff from mingw's uxtheme.h. --- ChangeLog | 28 +++++++++++++++++++-- ChangeLog.pre-2-10 | 28 +++++++++++++++++++-- ChangeLog.pre-2-6 | 28 +++++++++++++++++++-- ChangeLog.pre-2-8 | 28 +++++++++++++++++++-- configure.in | 2 ++ modules/engines/ms-windows/Makefile.am | 20 ++++++++++++--- modules/engines/ms-windows/msw_rc_style.h | 2 +- modules/engines/ms-windows/msw_style.c | 17 +++++++------ modules/engines/ms-windows/msw_style.h | 2 +- modules/engines/ms-windows/msw_theme_main.c | 4 ++- modules/engines/ms-windows/xp_theme.c | 17 +++++++++++-- modules/engines/ms-windows/xp_theme.h | 3 ++- modules/engines/ms-windows/xp_theme_defs.h | 5 ---- 13 files changed, 153 insertions(+), 31 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2678e195f1..9aa3072fae 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,27 @@ +2004-08-30 Tor Lillqvist + + Make the ms-windows theme engine build with mingw. + + * configure.in: Expand also modules/engines/ms-windows/Theme/ + Makefile and .../Theme/gtk-2.0/Makefile. + + * modules/engines/ms-windows/Makefile.am: Adapt for building + inside the GTK sources. + + * modules/engines/ms-windows/*.c: Use "foo.h" style includes for + GTK and GDK headers. Use correct path for gdkwin32.h header. + + * modules/engines/ms-windows/msw_style.c: Don't use deprecated GDK + API. + + * modules/engines/ms-windows/xp_theme_defs.h + * modules/engines/ms-windows/xp_theme.c: Move definitions of TMT_* + to xp_theme.c, as they are neither in mingw's nor Platform + SDK's tmschema.h. + + * modules/engines/ms-windows/xp_theme.c: Define _WIN32_WINNT as + 0x0501 to get the necesssary stuff from mingw's uxtheme.h. + 2004-08-30 Matthias Clasen Integrate the ms-windows theme engine (better known as Wimp) @@ -16,7 +40,8 @@ 2004-08-30 Matthias Clasen - * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): Make it compile. + * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): + Make it compile. 2004-08-27 Matthias Clasen @@ -95,7 +120,6 @@ Thu Aug 26 22:44:12 2004 Matthias Clasen * gtk/gtkrange.h (struct _GtkRangeClass): Declare change_value function. ->>>>>>> 1.5765 2004-08-26 Matthias Clasen * modules/input/Makefile.am: Build imime.la on Windows. diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 2678e195f1..9aa3072fae 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,27 @@ +2004-08-30 Tor Lillqvist + + Make the ms-windows theme engine build with mingw. + + * configure.in: Expand also modules/engines/ms-windows/Theme/ + Makefile and .../Theme/gtk-2.0/Makefile. + + * modules/engines/ms-windows/Makefile.am: Adapt for building + inside the GTK sources. + + * modules/engines/ms-windows/*.c: Use "foo.h" style includes for + GTK and GDK headers. Use correct path for gdkwin32.h header. + + * modules/engines/ms-windows/msw_style.c: Don't use deprecated GDK + API. + + * modules/engines/ms-windows/xp_theme_defs.h + * modules/engines/ms-windows/xp_theme.c: Move definitions of TMT_* + to xp_theme.c, as they are neither in mingw's nor Platform + SDK's tmschema.h. + + * modules/engines/ms-windows/xp_theme.c: Define _WIN32_WINNT as + 0x0501 to get the necesssary stuff from mingw's uxtheme.h. + 2004-08-30 Matthias Clasen Integrate the ms-windows theme engine (better known as Wimp) @@ -16,7 +40,8 @@ 2004-08-30 Matthias Clasen - * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): Make it compile. + * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): + Make it compile. 2004-08-27 Matthias Clasen @@ -95,7 +120,6 @@ Thu Aug 26 22:44:12 2004 Matthias Clasen * gtk/gtkrange.h (struct _GtkRangeClass): Declare change_value function. ->>>>>>> 1.5765 2004-08-26 Matthias Clasen * modules/input/Makefile.am: Build imime.la on Windows. diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 2678e195f1..9aa3072fae 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,27 @@ +2004-08-30 Tor Lillqvist + + Make the ms-windows theme engine build with mingw. + + * configure.in: Expand also modules/engines/ms-windows/Theme/ + Makefile and .../Theme/gtk-2.0/Makefile. + + * modules/engines/ms-windows/Makefile.am: Adapt for building + inside the GTK sources. + + * modules/engines/ms-windows/*.c: Use "foo.h" style includes for + GTK and GDK headers. Use correct path for gdkwin32.h header. + + * modules/engines/ms-windows/msw_style.c: Don't use deprecated GDK + API. + + * modules/engines/ms-windows/xp_theme_defs.h + * modules/engines/ms-windows/xp_theme.c: Move definitions of TMT_* + to xp_theme.c, as they are neither in mingw's nor Platform + SDK's tmschema.h. + + * modules/engines/ms-windows/xp_theme.c: Define _WIN32_WINNT as + 0x0501 to get the necesssary stuff from mingw's uxtheme.h. + 2004-08-30 Matthias Clasen Integrate the ms-windows theme engine (better known as Wimp) @@ -16,7 +40,8 @@ 2004-08-30 Matthias Clasen - * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): Make it compile. + * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): + Make it compile. 2004-08-27 Matthias Clasen @@ -95,7 +120,6 @@ Thu Aug 26 22:44:12 2004 Matthias Clasen * gtk/gtkrange.h (struct _GtkRangeClass): Declare change_value function. ->>>>>>> 1.5765 2004-08-26 Matthias Clasen * modules/input/Makefile.am: Build imime.la on Windows. diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 2678e195f1..9aa3072fae 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,27 @@ +2004-08-30 Tor Lillqvist + + Make the ms-windows theme engine build with mingw. + + * configure.in: Expand also modules/engines/ms-windows/Theme/ + Makefile and .../Theme/gtk-2.0/Makefile. + + * modules/engines/ms-windows/Makefile.am: Adapt for building + inside the GTK sources. + + * modules/engines/ms-windows/*.c: Use "foo.h" style includes for + GTK and GDK headers. Use correct path for gdkwin32.h header. + + * modules/engines/ms-windows/msw_style.c: Don't use deprecated GDK + API. + + * modules/engines/ms-windows/xp_theme_defs.h + * modules/engines/ms-windows/xp_theme.c: Move definitions of TMT_* + to xp_theme.c, as they are neither in mingw's nor Platform + SDK's tmschema.h. + + * modules/engines/ms-windows/xp_theme.c: Define _WIN32_WINNT as + 0x0501 to get the necesssary stuff from mingw's uxtheme.h. + 2004-08-30 Matthias Clasen Integrate the ms-windows theme engine (better known as Wimp) @@ -16,7 +40,8 @@ 2004-08-30 Matthias Clasen - * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): Make it compile. + * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): + Make it compile. 2004-08-27 Matthias Clasen @@ -95,7 +120,6 @@ Thu Aug 26 22:44:12 2004 Matthias Clasen * gtk/gtkrange.h (struct _GtkRangeClass): Declare change_value function. ->>>>>>> 1.5765 2004-08-26 Matthias Clasen * modules/input/Makefile.am: Build imime.la on Windows. diff --git a/configure.in b/configure.in index 5dc3a78930..dd6cbb4c7e 100644 --- a/configure.in +++ b/configure.in @@ -1624,6 +1624,8 @@ modules/Makefile modules/input/Makefile modules/engines/Makefile modules/engines/ms-windows/Makefile +modules/engines/ms-windows/Theme/Makefile +modules/engines/ms-windows/Theme/gtk-2.0/Makefile contrib/Makefile contrib/gdk-pixbuf-xlib/Makefile contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc diff --git a/modules/engines/ms-windows/Makefile.am b/modules/engines/ms-windows/Makefile.am index b309e9fcb3..b440753fea 100644 --- a/modules/engines/ms-windows/Makefile.am +++ b/modules/engines/ms-windows/Makefile.am @@ -2,9 +2,22 @@ SUBDIRS=Theme EXTRA_DIST=Makefile.msc -INCLUDES=$(MSW_CFLAGS) +INCLUDES = \ + -I$(top_srcdir) \ + -I$(top_srcdir)/gdk \ + -I$(top_builddir)/gdk \ + -DG_DISABLE_DEPRECATED \ + -DGDK_PIXBUF_DISABLE_DEPRECATED \ + -DGDK_DISABLE_DEPRECATED \ + $(GTK_DEP_CFLAGS) -enginedir=$(libdir)/gtk-2.0/$(GTK_VERSION)/engines + +LDADDS = \ + $(top_builddir)/gdk/$(gdktargetlib) \ + $(top_builddir)/gtk/$(gtktargetlib) \ + $(GTK_DEP_LIBS) + +enginedir = $(libdir)/gtk-2.0/$(GTK_BINARY_VERSION)/engines engine_LTLIBRARIES = libwimp.la @@ -21,5 +34,4 @@ libwimp_la_SOURCES = \ libwimp_la_LDFLAGS = \ -avoid-version -module -no-undefined -export-dynamic -libwimp_la_LIBADD= $(MSW_LIBS) - +libwimp_la_LIBADD = $(LDADDS) diff --git a/modules/engines/ms-windows/msw_rc_style.h b/modules/engines/ms-windows/msw_rc_style.h index 9055db63a5..ab43f5f85e 100755 --- a/modules/engines/ms-windows/msw_rc_style.h +++ b/modules/engines/ms-windows/msw_rc_style.h @@ -23,7 +23,7 @@ #ifndef MSW_RC_STYLE_H #define MSW_RC_STYLE_H -#include +#include "gtk/gtkrc.h" typedef struct _MswRcStyle MswRcStyle; typedef struct _MswRcStyleClass MswRcStyleClass; diff --git a/modules/engines/ms-windows/msw_style.c b/modules/engines/ms-windows/msw_style.c index 26dd6e25f6..7a35635d0c 100755 --- a/modules/engines/ms-windows/msw_style.c +++ b/modules/engines/ms-windows/msw_style.c @@ -26,12 +26,13 @@ #include #include #include -#include -#include -#include - #include +#include "gtk/gtk.h" +#include "gtk/gtk.h" +#include "gdk/win32/gdkwin32.h" + + /* Default values, not normally used */ static const GtkRequisition default_option_indicator_size = { 9, 8 }; @@ -798,12 +799,12 @@ sanitize_size (GdkWindow *window, if ((*width == -1) && (*height == -1)) { set_bg = GDK_IS_WINDOW (window); - gdk_window_get_size (window, width, height); + gdk_drawable_get_size (window, width, height); } else if (*width == -1) - gdk_window_get_size (window, width, NULL); + gdk_drawable_get_size (window, width, NULL); else if (*height == -1) - gdk_window_get_size (window, NULL, height); + gdk_drawable_get_size (window, NULL, height); return set_bg; } @@ -1499,7 +1500,7 @@ draw_box (GtkStyle *style, gdk_draw_rectangle (window, gc, TRUE, x, y, width, height); gdk_gc_unref (gc); - gdk_pixmap_unref (pixmap); + gdk_drawable_unref (pixmap); return; } diff --git a/modules/engines/ms-windows/msw_style.h b/modules/engines/ms-windows/msw_style.h index 0c959a7e74..c66c69db52 100755 --- a/modules/engines/ms-windows/msw_style.h +++ b/modules/engines/ms-windows/msw_style.h @@ -23,7 +23,7 @@ #ifndef MSW_STYLE_H #define MSW_STYLE_H -#include +#include "gtk/gtkstyle.h" typedef struct _MswStyle MswStyle; typedef struct _MswStyleClass MswStyleClass; diff --git a/modules/engines/ms-windows/msw_theme_main.c b/modules/engines/ms-windows/msw_theme_main.c index e1baf905be..f3c5515f4a 100755 --- a/modules/engines/ms-windows/msw_theme_main.c +++ b/modules/engines/ms-windows/msw_theme_main.c @@ -21,8 +21,10 @@ */ #include + #include -#include + +#include "gtk/gtk.h" #include "msw_style.h" #include "msw_rc_style.h" diff --git a/modules/engines/ms-windows/xp_theme.c b/modules/engines/ms-windows/xp_theme.c index 3c27f236c3..7d7af293b6 100755 --- a/modules/engines/ms-windows/xp_theme.c +++ b/modules/engines/ms-windows/xp_theme.c @@ -18,15 +18,18 @@ * Boston, MA 02111-1307, USA. */ +#define _WIN32_WINNT 0x0501 + #include "xp_theme.h" #include #include #include -#include - #include +#include "gdk/win32/gdkwin32.h" + + #ifdef DONT_HAVE_UXTHEME_H #include "xp_theme_defs.h" #else @@ -34,6 +37,16 @@ #include #endif +#ifndef TMT_CAPTIONFONT +/* These aren't in mingw's "w32api" headers, nor in the Platform SDK + * headers. + */ +#define TMT_CAPTIONFONT 801 +#define TMT_MENUFONT 803 +#define TMT_STATUSFONT 804 +#define TMT_MSGBOXFONT 805 +#endif + static const LPCWSTR class_descriptors[] = { L"Scrollbar", /* XP_THEME_CLASS_SCROLLBAR */ diff --git a/modules/engines/ms-windows/xp_theme.h b/modules/engines/ms-windows/xp_theme.h index 408d087ddb..53c95cf8c5 100755 --- a/modules/engines/ms-windows/xp_theme.h +++ b/modules/engines/ms-windows/xp_theme.h @@ -22,7 +22,8 @@ #define XP_THEME_H #include -#include + +#include "gtk/gtk.h" typedef enum { diff --git a/modules/engines/ms-windows/xp_theme_defs.h b/modules/engines/ms-windows/xp_theme_defs.h index 9b40b5fd40..f0f2d87e9a 100644 --- a/modules/engines/ms-windows/xp_theme_defs.h +++ b/modules/engines/ms-windows/xp_theme_defs.h @@ -154,9 +154,4 @@ typedef HANDLE HTHEME; #define SP_PANE 1 #define SP_GRIPPER 2 -#define TMT_CAPTIONFONT 801 -#define TMT_MENUFONT 803 -#define TMT_STATUSFONT 804 -#define TMT_MSGBOXFONT 805 - #endif /* XP_THEME_DFNS_H */