Copy our gdkprivate.h and gdkx.h to a gdk subdirectory, so that

* gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
 	gdkx.h to a gdk subdirectory, so that applications can include
 	these with <gdk/*.h> without trouble.

	* gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
	(gdk_image_destroy): Plugged resource leak, some GdkImages didn't
	have their bitmap destroyed.

	* gdk/win32/gdk.def: Add gdk_root_parent.
This commit is contained in:
Tor Lillqvist
1999-05-18 22:23:23 +00:00
parent 45dc3bcf82
commit 330dd2f7c3
11 changed files with 373 additions and 273 deletions

View File

@ -1,3 +1,17 @@
Wed May 19 01:09:34 1999 Tor Lillqvist <tml@iki.fi>
1999-05-18 Tor Lillqvist <tml@iki.fi>
* gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
gdkx.h to a gdk subdirectory, so that applications can include
these with <gdk/*.h> without trouble.
* gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
(gdk_image_destroy): Plugged resource leak, some GdkImages didn't
have their bitmap destroyed.
* gdk/win32/gdk.def: Add gdk_root_parent.
Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org> Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* configure.in * configure.in

View File

@ -1,3 +1,17 @@
Wed May 19 01:09:34 1999 Tor Lillqvist <tml@iki.fi>
1999-05-18 Tor Lillqvist <tml@iki.fi>
* gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
gdkx.h to a gdk subdirectory, so that applications can include
these with <gdk/*.h> without trouble.
* gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
(gdk_image_destroy): Plugged resource leak, some GdkImages didn't
have their bitmap destroyed.
* gdk/win32/gdk.def: Add gdk_root_parent.
Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org> Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* configure.in * configure.in

View File

@ -1,3 +1,17 @@
Wed May 19 01:09:34 1999 Tor Lillqvist <tml@iki.fi>
1999-05-18 Tor Lillqvist <tml@iki.fi>
* gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
gdkx.h to a gdk subdirectory, so that applications can include
these with <gdk/*.h> without trouble.
* gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
(gdk_image_destroy): Plugged resource leak, some GdkImages didn't
have their bitmap destroyed.
* gdk/win32/gdk.def: Add gdk_root_parent.
Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org> Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* configure.in * configure.in

View File

@ -1,3 +1,17 @@
Wed May 19 01:09:34 1999 Tor Lillqvist <tml@iki.fi>
1999-05-18 Tor Lillqvist <tml@iki.fi>
* gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
gdkx.h to a gdk subdirectory, so that applications can include
these with <gdk/*.h> without trouble.
* gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
(gdk_image_destroy): Plugged resource leak, some GdkImages didn't
have their bitmap destroyed.
* gdk/win32/gdk.def: Add gdk_root_parent.
Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org> Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* configure.in * configure.in

View File

@ -1,3 +1,17 @@
Wed May 19 01:09:34 1999 Tor Lillqvist <tml@iki.fi>
1999-05-18 Tor Lillqvist <tml@iki.fi>
* gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
gdkx.h to a gdk subdirectory, so that applications can include
these with <gdk/*.h> without trouble.
* gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
(gdk_image_destroy): Plugged resource leak, some GdkImages didn't
have their bitmap destroyed.
* gdk/win32/gdk.def: Add gdk_root_parent.
Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org> Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* configure.in * configure.in

View File

@ -1,3 +1,17 @@
Wed May 19 01:09:34 1999 Tor Lillqvist <tml@iki.fi>
1999-05-18 Tor Lillqvist <tml@iki.fi>
* gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
gdkx.h to a gdk subdirectory, so that applications can include
these with <gdk/*.h> without trouble.
* gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
(gdk_image_destroy): Plugged resource leak, some GdkImages didn't
have their bitmap destroyed.
* gdk/win32/gdk.def: Add gdk_root_parent.
Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org> Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* configure.in * configure.in

View File

@ -1,3 +1,17 @@
Wed May 19 01:09:34 1999 Tor Lillqvist <tml@iki.fi>
1999-05-18 Tor Lillqvist <tml@iki.fi>
* gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
gdkx.h to a gdk subdirectory, so that applications can include
these with <gdk/*.h> without trouble.
* gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
(gdk_image_destroy): Plugged resource leak, some GdkImages didn't
have their bitmap destroyed.
* gdk/win32/gdk.def: Add gdk_root_parent.
Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org> Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* configure.in * configure.in

View File

@ -75,7 +75,7 @@ gdk_image_new_bitmap (GdkVisual *visual, gpointer data, gint w, gint h)
private = g_new(GdkImagePrivate, 1); private = g_new(GdkImagePrivate, 1);
image = (GdkImage *) private; image = (GdkImage *) private;
private->image_put = gdk_image_put_normal; private->image_put = gdk_image_put_normal;
image->type = GDK_IMAGE_NORMAL; image->type = GDK_IMAGE_SHARED;
image->visual = visual; image->visual = visual;
image->width = w; image->width = w;
image->height = h; image->height = h;
@ -151,21 +151,15 @@ gdk_image_new_with_depth (GdkImageType type,
UINT iUsage; UINT iUsage;
int i; int i;
GDK_NOTE (MISC, g_print ("gdk_image_new_with_depth: %dx%dx%d\n", if (type == GDK_IMAGE_FASTEST || type == GDK_IMAGE_NORMAL)
width, height, depth)); type = GDK_IMAGE_SHARED;
switch (type) GDK_NOTE (MISC, g_print ("gdk_image_new_with_depth: %dx%dx%d %s\n",
{ width, height, depth,
case GDK_IMAGE_FASTEST: (type == GDK_IMAGE_SHARED ? "shared" :
image = gdk_image_new_with_depth (GDK_IMAGE_SHARED, visual, (type == GDK_IMAGE_SHARED_PIXMAP ? "shared_pixmap" :
width, height, depth); "???"))));
if (!image)
image = gdk_image_new_with_depth (GDK_IMAGE_NORMAL, visual,
width, height, depth);
break;
default:
private = g_new (GdkImagePrivate, 1); private = g_new (GdkImagePrivate, 1);
image = (GdkImage*) private; image = (GdkImage*) private;
@ -179,12 +173,6 @@ gdk_image_new_with_depth (GdkImageType type,
xvisual = ((GdkVisualPrivate*) visual)->xvisual; xvisual = ((GdkVisualPrivate*) visual)->xvisual;
switch (type)
{
case GDK_IMAGE_SHARED:
case GDK_IMAGE_SHARED_PIXMAP:
/* Fall through, Windows images are always shared */
case GDK_IMAGE_NORMAL:
private->image_put = gdk_image_put_normal; private->image_put = gdk_image_put_normal;
bmi.bmiHeader.biSize = sizeof (BITMAPINFOHEADER); bmi.bmiHeader.biSize = sizeof (BITMAPINFOHEADER);
@ -279,15 +267,6 @@ gdk_image_new_with_depth (GdkImageType type,
GDK_NOTE (MISC, g_print ("... = %#x mem = %#x, bpl = %d\n", GDK_NOTE (MISC, g_print ("... = %#x mem = %#x, bpl = %d\n",
private->ximage, image->mem, image->bpl)); private->ximage, image->mem, image->bpl));
break;
case GDK_IMAGE_FASTEST:
g_assert_not_reached ();
}
break;
}
return image; return image;
} }
@ -347,7 +326,7 @@ gdk_image_get (GdkWindow *window,
private->image_put = gdk_image_put_normal; private->image_put = gdk_image_put_normal;
image->type = GDK_IMAGE_NORMAL; image->type = GDK_IMAGE_SHARED;
image->visual = gdk_window_get_visual (window); image->visual = gdk_window_get_visual (window);
image->width = width; image->width = width;
image->height = height; image->height = height;
@ -652,18 +631,18 @@ gdk_image_destroy (GdkImage *image)
switch (image->type) switch (image->type)
{ {
case GDK_IMAGE_NORMAL:
case GDK_IMAGE_SHARED_PIXMAP: case GDK_IMAGE_SHARED_PIXMAP:
break; /* The Windows bitmap has already been break; /* The Windows bitmap has already been
* (or will be) deleted when freeing * (or will be) deleted when freeing
* the corresponding pixmap. * the corresponding pixmap.
*/ */
case GDK_IMAGE_SHARED: /* All images are shared in Windows */ case GDK_IMAGE_SHARED:
DeleteObject (private->ximage); if (!DeleteObject (private->ximage))
g_warning ("gdk_image_destroy: DeleteObject failed");
break; break;
case GDK_IMAGE_FASTEST: default:
g_assert_not_reached (); g_assert_not_reached ();
} }

View File

@ -75,7 +75,7 @@ gdk_image_new_bitmap (GdkVisual *visual, gpointer data, gint w, gint h)
private = g_new(GdkImagePrivate, 1); private = g_new(GdkImagePrivate, 1);
image = (GdkImage *) private; image = (GdkImage *) private;
private->image_put = gdk_image_put_normal; private->image_put = gdk_image_put_normal;
image->type = GDK_IMAGE_NORMAL; image->type = GDK_IMAGE_SHARED;
image->visual = visual; image->visual = visual;
image->width = w; image->width = w;
image->height = h; image->height = h;
@ -151,21 +151,15 @@ gdk_image_new_with_depth (GdkImageType type,
UINT iUsage; UINT iUsage;
int i; int i;
GDK_NOTE (MISC, g_print ("gdk_image_new_with_depth: %dx%dx%d\n", if (type == GDK_IMAGE_FASTEST || type == GDK_IMAGE_NORMAL)
width, height, depth)); type = GDK_IMAGE_SHARED;
switch (type) GDK_NOTE (MISC, g_print ("gdk_image_new_with_depth: %dx%dx%d %s\n",
{ width, height, depth,
case GDK_IMAGE_FASTEST: (type == GDK_IMAGE_SHARED ? "shared" :
image = gdk_image_new_with_depth (GDK_IMAGE_SHARED, visual, (type == GDK_IMAGE_SHARED_PIXMAP ? "shared_pixmap" :
width, height, depth); "???"))));
if (!image)
image = gdk_image_new_with_depth (GDK_IMAGE_NORMAL, visual,
width, height, depth);
break;
default:
private = g_new (GdkImagePrivate, 1); private = g_new (GdkImagePrivate, 1);
image = (GdkImage*) private; image = (GdkImage*) private;
@ -179,12 +173,6 @@ gdk_image_new_with_depth (GdkImageType type,
xvisual = ((GdkVisualPrivate*) visual)->xvisual; xvisual = ((GdkVisualPrivate*) visual)->xvisual;
switch (type)
{
case GDK_IMAGE_SHARED:
case GDK_IMAGE_SHARED_PIXMAP:
/* Fall through, Windows images are always shared */
case GDK_IMAGE_NORMAL:
private->image_put = gdk_image_put_normal; private->image_put = gdk_image_put_normal;
bmi.bmiHeader.biSize = sizeof (BITMAPINFOHEADER); bmi.bmiHeader.biSize = sizeof (BITMAPINFOHEADER);
@ -279,15 +267,6 @@ gdk_image_new_with_depth (GdkImageType type,
GDK_NOTE (MISC, g_print ("... = %#x mem = %#x, bpl = %d\n", GDK_NOTE (MISC, g_print ("... = %#x mem = %#x, bpl = %d\n",
private->ximage, image->mem, image->bpl)); private->ximage, image->mem, image->bpl));
break;
case GDK_IMAGE_FASTEST:
g_assert_not_reached ();
}
break;
}
return image; return image;
} }
@ -347,7 +326,7 @@ gdk_image_get (GdkWindow *window,
private->image_put = gdk_image_put_normal; private->image_put = gdk_image_put_normal;
image->type = GDK_IMAGE_NORMAL; image->type = GDK_IMAGE_SHARED;
image->visual = gdk_window_get_visual (window); image->visual = gdk_window_get_visual (window);
image->width = width; image->width = width;
image->height = height; image->height = height;
@ -652,18 +631,18 @@ gdk_image_destroy (GdkImage *image)
switch (image->type) switch (image->type)
{ {
case GDK_IMAGE_NORMAL:
case GDK_IMAGE_SHARED_PIXMAP: case GDK_IMAGE_SHARED_PIXMAP:
break; /* The Windows bitmap has already been break; /* The Windows bitmap has already been
* (or will be) deleted when freeing * (or will be) deleted when freeing
* the corresponding pixmap. * the corresponding pixmap.
*/ */
case GDK_IMAGE_SHARED: /* All images are shared in Windows */ case GDK_IMAGE_SHARED:
DeleteObject (private->ximage); if (!DeleteObject (private->ximage))
g_warning ("gdk_image_destroy: DeleteObject failed");
break; break;
case GDK_IMAGE_FASTEST: default:
g_assert_not_reached (); g_assert_not_reached ();
} }

View File

@ -28,6 +28,8 @@ GLIB = ../../../glib
CFLAGS = -g -I. -I../.. -I$(WTKIT)/include -I$(GLIB) -DG_ENABLE_DEBUG -DHAVE_CONFIG_H -DGDK_VERSION=\"$(GTK_VER)\" -DNEAR= -DFAR= CFLAGS = -g -I. -I../.. -I$(WTKIT)/include -I$(GLIB) -DG_ENABLE_DEBUG -DHAVE_CONFIG_H -DGDK_VERSION=\"$(GTK_VER)\" -DNEAR= -DFAR=
all: \ all: \
gdk/gdkprivate.h \
gdk/gdkx.h \
../../config.h \ ../../config.h \
gdk-$(GTK_VER).dll gdk-$(GTK_VER).dll
@ -58,6 +60,26 @@ gdk_OBJECTS = \
gdkwindow.o \ gdkwindow.o \
gdkxid.o gdkxid.o
# We must have copies of gdkx.h and gdkprivate.h in the gdk
# subdirectory, so that application sources which want to be
# compilable with both GTk+ 1.2 (where there are no separate backend
# gdk directories) and this 1.3 version (where the Win32 backend is in
# the directory of *this* file you are reading right now) can use
# #include <gdk/gdkprivate.h>.
# Applications that depend on GTk+ 1.3 or later should include
# gdkprivate.h and gdkx.h without the gdk/ prefix. The CFLAGS should
# include an -I switch pointing to the backend-specific directory
# (*this* directory in the Win32 case).
gdk/gdkprivate.h : gdkprivate.h
-mkdir gdk
cp gdkprivate.h gdk
gdk/gdkx.h : gdkx.h
-mkdir gdk
cp gdkx.h gdk
../../config.h : ../../config.h.win32 ../../config.h : ../../config.h.win32
$(CP) ../../config.h.win32 ../../config.h $(CP) ../../config.h.win32 ../../config.h

View File

@ -20,7 +20,7 @@ OPTIMIZE = -Ox
# cl -? describes the options # cl -? describes the options
CC = cl -G5 -GF $(OPTIMIZE) -W3 -MD -nologo CC = cl -G5 -GF $(OPTIMIZE) -W3 -MD -nologo
LDFLAGS = /link /machine:ix86 # /debug /debugtype:cv LDFLAGS = /link /machine:ix86 # /debug
INSTALL = copy INSTALL = copy
TOUCH = copy makefile.msc+nul TOUCH = copy makefile.msc+nul
@ -31,6 +31,8 @@ GLIB = ..\..\..\glib
CFLAGS = -I. -I..\.. -I$(WTKIT)\include -I$(GLIB) -DG_ENABLE_DEBUG -DHAVE_CONFIG_H -DGDK_VERSION=\"$(GTK_VER)\" CFLAGS = -I. -I..\.. -I$(WTKIT)\include -I$(GLIB) -DG_ENABLE_DEBUG -DHAVE_CONFIG_H -DGDK_VERSION=\"$(GTK_VER)\"
all: \ all: \
gdk\gdkprivate.h \
gdk\gdkx.h \
..\..\config.h \ ..\..\config.h \
gdk-$(GTK_VER).dll gdk-$(GTK_VER).dll
$(TOUCH) all $(TOUCH) all
@ -63,6 +65,26 @@ gdk_OBJECTS = \
gdkwindow.obj \ gdkwindow.obj \
gdkxid.obj gdkxid.obj
# We must have copies of gdkx.h and gdkprivate.h in the gdk
# subdirectory, so that application sources which want to be
# compilable with both GTk+ 1.2 (where there are no separate backend
# gdk directories) and this 1.3 version (where the Win32 backend is in
# the directory of *this* file you are reading right now) can use
# #include <gdk/gdkprivate.h>.
# Applications that depend on GTk+ 1.3 or later should include
# gdkprivate.h and gdkx.h without the gdk/ prefix. The CFLAGS should
# include an -I switch pointing to the backend-specific directory
# (*this* directory in the Win32 case).
gdk\gdkprivate.h : gdkprivate.h
-md gdk
copy gdkprivate.h gdk
gdk\gdkx.h : gdkx.h
-md gdk
copy gdkx.h gdk
..\..\config.h : ..\..\config.h.win32 ..\..\config.h : ..\..\config.h.win32
copy ..\..\config.h.win32 ..\..\config.h copy ..\..\config.h.win32 ..\..\config.h