mirror of https://github.com/GNOME/gimp.git
Fix the handling of stored state. Actually use the margins from the Page
1999-12-08 Tor Lillqvist <tml@iki.fi> * plug-ins/common/winprint.c: Fix the handling of stored state. Actually use the margins from the Page Setup dialog (just the left and top margins currently). * plug-ins/common/animationplay.c: Weird include hackery to be compilable with current CVS GTk+ (on Win32). * plug-ins/gfig/gfig.c: With current CVS GTk+, use gdk_parent_root instead of gdk_root_parent (Win32). * app/makefile.cygwin * libgimp/makefile.cygwin * plug-ins/makefile.cygwin: Get GDK library from new place.
This commit is contained in:
parent
4989f4c255
commit
a999bb9dd0
16
ChangeLog
16
ChangeLog
|
@ -1,3 +1,19 @@
|
|||
1999-12-08 Tor Lillqvist <tml@iki.fi>
|
||||
|
||||
* plug-ins/common/winprint.c: Fix the handling of stored
|
||||
state. Actually use the margins from the Page Setup dialog (just
|
||||
the left and top margins currently).
|
||||
|
||||
* plug-ins/common/animationplay.c: Weird include hackery to be
|
||||
compilable with current CVS GTk+ (on Win32).
|
||||
|
||||
* plug-ins/gfig/gfig.c: With current CVS GTk+, use gdk_parent_root
|
||||
instead of gdk_root_parent (Win32).
|
||||
|
||||
* app/makefile.cygwin
|
||||
* libgimp/makefile.cygwin
|
||||
* plug-ins/makefile.cygwin: Get GDK library from new place.
|
||||
|
||||
1999-12-07 Michael Natterer <mitch@gimp.org>
|
||||
|
||||
* pixmaps/yes.xpm: Resize it to the same size as "no.xpm" because
|
||||
|
|
|
@ -268,11 +268,11 @@ gimp.def: gimp.sym
|
|||
|
||||
gimp.exe : ../config.h $(gimp_OBJECTS) libgimpim.a gimp.def gimpres.o
|
||||
# This is sickening.
|
||||
$(CC) $(CFLAGS) -Wl,--base-file,gimp.base -mwindows -o gimp.exe $(gimp_OBJECTS) -L . -lgimpim -L ../libgimp -lgimpi -L $(GTK)/gtk -lgtk-$(GTK_VER) -L $(GTK)/gdk/win32 -lgdk-$(GTK_VER) -L $(INTL) -lgnu-intl -L $(GLIB) -lglib-$(GLIB_VER) -lgmodule-$(GLIB_VER) gimpres.o -lgdi32 -luser32
|
||||
$(CC) $(CFLAGS) -Wl,--base-file,gimp.base -mwindows -o gimp.exe $(gimp_OBJECTS) -L . -lgimpim -L ../libgimp -lgimpi -L $(GTK)/gtk -lgtk-$(GTK_VER) -L $(GTK)/gdk -lgdk-$(GTK_VER) -L $(INTL) -lgnu-intl -L $(GLIB) -lglib-$(GLIB_VER) -lgmodule-$(GLIB_VER) gimpres.o -lgdi32 -luser32
|
||||
$(DLLTOOL) --base-file gimp.base --input-def gimp.def --output-exp gimp.exp
|
||||
$(CC) $(CFLAGS) -Wl,--base-file,gimp.base,gimp.exp -mwindows -o gimp.exe $(gimp_OBJECTS) -L . -lgimpim -L ../libgimp -lgimpi -L $(GTK)/gtk -lgtk-$(GTK_VER) -L $(GTK)/gdk/win32 -lgdk-$(GTK_VER) -L $(INTL) -lgnu-intl -L $(GLIB) -lglib-$(GLIB_VER) -lgmodule-$(GLIB_VER) gimpres.o -lgdi32 -luser32
|
||||
$(CC) $(CFLAGS) -Wl,--base-file,gimp.base,gimp.exp -mwindows -o gimp.exe $(gimp_OBJECTS) -L . -lgimpim -L ../libgimp -lgimpi -L $(GTK)/gtk -lgtk-$(GTK_VER) -L $(GTK)/gdk -lgdk-$(GTK_VER) -L $(INTL) -lgnu-intl -L $(GLIB) -lglib-$(GLIB_VER) -lgmodule-$(GLIB_VER) gimpres.o -lgdi32 -luser32
|
||||
$(DLLTOOL) --base-file gimp.base --input-def gimp.def --output-exp gimp.exp
|
||||
$(CC) $(CFLAGS) -Wl,gimp.exp -mwindows -o gimp.exe $(gimp_OBJECTS) -L. -lgimpim -L ../libgimp -lgimpi -L $(GTK)/gtk -lgtk-$(GTK_VER) -L $(GTK)/gdk/win32 -lgdk-$(GTK_VER) -L $(INTL) -lgnu-intl -L $(GLIB) -lglib-$(GLIB_VER) -lgmodule-$(GLIB_VER) gimpres.o -lgdi32 -luser32
|
||||
$(CC) $(CFLAGS) -Wl,gimp.exp -mwindows -o gimp.exe $(gimp_OBJECTS) -L. -lgimpim -L ../libgimp -lgimpi -L $(GTK)/gtk -lgtk-$(GTK_VER) -L $(GTK)/gdk -lgdk-$(GTK_VER) -L $(INTL) -lgnu-intl -L $(GLIB) -lglib-$(GLIB_VER) -lgmodule-$(GLIB_VER) gimpres.o -lgdi32 -luser32
|
||||
$(DLLTOOL) --dllname gimp.exe gimp.def --output-lib libgimp.a $(gimp_OBJECTS)
|
||||
|
||||
.SUFFIXES: .c .o .i
|
||||
|
|
|
@ -143,7 +143,7 @@ gimpui_OBJECTS = \
|
|||
gimpunitmenu.o
|
||||
|
||||
gimpui-$(GIMP_VER).dll : $(gimpui_OBJECTS) gimpui.def
|
||||
$(GLIB)/build-dll gimpui $(GIMP_VER) gimpui.def -s $(gimpui_OBJECTS) -L . -lgimp-$(GIMP_VER) -L $(GTK)/gtk -lgtk-$(GTK_VER) -L $(GTK)/gdk/win32 -lgdk-$(GTK_VER) -L $(INTL) -lgnu-intl -L $(GLIB) -lglib-$(GLIB_VER)
|
||||
$(GLIB)/build-dll gimpui $(GIMP_VER) gimpui.def -s $(gimpui_OBJECTS) -L . -lgimp-$(GIMP_VER) -L $(GTK)/gtk -lgtk-$(GTK_VER) -L $(GTK)/gdk -lgdk-$(GTK_VER) -L $(INTL) -lgnu-intl -L $(GLIB) -lglib-$(GLIB_VER)
|
||||
|
||||
.SUFFIXES: .c .o .i
|
||||
|
||||
|
|
|
@ -102,11 +102,22 @@
|
|||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
|
||||
#define WinMain WinMain_foo /* Kludge for Win32*/
|
||||
#include <gdk/gdkx.h>
|
||||
#include <glib.h>
|
||||
|
||||
#if defined (G_OS_WIN32)
|
||||
/* This just to be able to include windows.h and undef RGB */
|
||||
#define WinMain WinMain_foo
|
||||
#include <windows.h>
|
||||
#undef WinMain
|
||||
#undef RGB /* On Windows from <windows.h> */
|
||||
#undef RGB
|
||||
#endif
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
#ifndef GDK_WINDOWING_WIN32
|
||||
#include <gdk/gdkx.h>
|
||||
#else
|
||||
#include <gdk/win32/gdkwin32.h>
|
||||
#endif
|
||||
|
||||
#include "libgimp/gimp.h"
|
||||
#include "libgimp/stdplugins-intl.h"
|
||||
|
|
|
@ -235,6 +235,7 @@ run (char *name,
|
|||
int y;
|
||||
double devY, devYstep;
|
||||
int iDevY, iDevYstep;
|
||||
int iDevLeftMargin, iDevTopMargin;
|
||||
guchar *inRow;
|
||||
guchar *bgrRow;
|
||||
HGLOBAL hDevMode, hDevNames;
|
||||
|
@ -270,29 +271,30 @@ run (char *name,
|
|||
switch (run_mode)
|
||||
{
|
||||
case RUN_INTERACTIVE:
|
||||
vars.devmodeSize = 0;
|
||||
vars.prDlg.lStructSize = 0;
|
||||
gimp_get_data (NAME_PRINT, &vars);
|
||||
if (vars.devmodeSize > 0)
|
||||
if (gimp_get_data_size (NAME_PRINT) > 0)
|
||||
{
|
||||
/* Restore saved DEVMODE. */
|
||||
hDevMode = GlobalAlloc (GMEM_MOVEABLE, vars.devmodeSize);
|
||||
g_assert (hDevMode != NULL);
|
||||
dmp = GlobalLock (hDevMode);
|
||||
g_assert (dmp != NULL);
|
||||
gimp_get_data (NAME_PRINT "devmode", dmp);
|
||||
GlobalUnlock (hDevMode);
|
||||
vars.prDlg.hDevMode = hDevMode;
|
||||
g_assert (gimp_get_data_size (NAME_PRINT) == sizeof (vars));
|
||||
gimp_get_data (NAME_PRINT, &vars);
|
||||
if (vars.devmodeSize > 0)
|
||||
{
|
||||
/* Restore saved DEVMODE. */
|
||||
g_assert (gimp_get_data_size (NAME_PRINT "devmode")
|
||||
== vars.devmodeSize);
|
||||
hDevMode = GlobalAlloc (GMEM_MOVEABLE, vars.devmodeSize);
|
||||
g_assert (hDevMode != NULL);
|
||||
dmp = GlobalLock (hDevMode);
|
||||
g_assert (dmp != NULL);
|
||||
gimp_get_data (NAME_PRINT "devmode", dmp);
|
||||
GlobalUnlock (hDevMode);
|
||||
vars.prDlg.hDevMode = hDevMode;
|
||||
}
|
||||
else
|
||||
{
|
||||
vars.prDlg.hDevMode = NULL;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
vars.prDlg.hDevMode = NULL;
|
||||
}
|
||||
if (vars.prDlg.lStructSize == 0)
|
||||
{
|
||||
vars.prDlg.lStructSize = sizeof (PRINTDLG);
|
||||
vars.prDlg.Flags = 0;
|
||||
}
|
||||
vars.prDlg.Flags = 0;
|
||||
vars.prDlg.hwndOwner = NULL;
|
||||
vars.prDlg.hDevNames = NULL;
|
||||
vars.prDlg.Flags |=
|
||||
|
@ -300,6 +302,7 @@ run (char *name,
|
|||
| PD_NOSELECTION;
|
||||
vars.prDlg.nMinPage = vars.prDlg.nMaxPage = 0;
|
||||
vars.prDlg.nCopies = 1;
|
||||
vars.prDlg.lStructSize = sizeof (PRINTDLG);
|
||||
if (!PrintDlg (&vars.prDlg))
|
||||
{
|
||||
if (CommDlgExtendedError ())
|
||||
|
@ -333,7 +336,6 @@ run (char *name,
|
|||
* Print the image.
|
||||
*/
|
||||
|
||||
/* Check if support for BitBlt */
|
||||
if (status == STATUS_SUCCESS)
|
||||
{
|
||||
/* Check if support for BitBlt */
|
||||
|
@ -462,6 +464,22 @@ run (char *name,
|
|||
|
||||
oldBm = SelectObject (hdcMem, hBitmap);
|
||||
|
||||
if (vars.psDlg.Flags & PSD_MARGINS)
|
||||
if (vars.psDlg.Flags & PSD_INHUNDREDTHSOFMILLIMETERS)
|
||||
{
|
||||
/* Hundreths of millimeters */
|
||||
iDevLeftMargin = vars.psDlg.rtMargin.left / 2540.0 * devResX;
|
||||
iDevTopMargin = vars.psDlg.rtMargin.top / 2540.0 * devResY;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Thousandths of inches */
|
||||
iDevLeftMargin = vars.psDlg.rtMargin.left / 1000.0 * devResX;
|
||||
iDevTopMargin = vars.psDlg.rtMargin.top / 1000.0 * devResY;
|
||||
}
|
||||
else
|
||||
iDevLeftMargin = iDevTopMargin = 0;
|
||||
|
||||
devY = 0.0;
|
||||
iDevY = 0;
|
||||
for (y = 0; y < height; y++)
|
||||
|
@ -498,7 +516,9 @@ run (char *name,
|
|||
devW = devWidth - iDevX;
|
||||
else
|
||||
devW = iDevXstep;
|
||||
if (!StretchBlt (vars.prDlg.hDC, iDevX, iDevY,
|
||||
if (!StretchBlt (vars.prDlg.hDC,
|
||||
iDevX + iDevLeftMargin,
|
||||
iDevY + iDevTopMargin,
|
||||
devW, iDevYstep,
|
||||
hdcMem, x, 0, w, 1, SRCCOPY))
|
||||
{
|
||||
|
@ -549,32 +569,33 @@ run (char *name,
|
|||
switch (run_mode)
|
||||
{
|
||||
case RUN_INTERACTIVE:
|
||||
vars.devmodeSize = 0;
|
||||
vars.psDlg.lStructSize = 0;
|
||||
gimp_get_data (NAME_PRINT, &vars);
|
||||
if (vars.devmodeSize > 0)
|
||||
if (gimp_get_data_size (NAME_PRINT) > 0)
|
||||
{
|
||||
/* Restore saved DEVMODE. */
|
||||
hDevMode = GlobalAlloc (GMEM_MOVEABLE, vars.devmodeSize);
|
||||
g_assert (hDevMode != NULL);
|
||||
dmp = GlobalLock (hDevMode);
|
||||
g_assert (dmp != NULL);
|
||||
gimp_get_data (NAME_PRINT "devmode", dmp);
|
||||
GlobalUnlock (hDevMode);
|
||||
vars.psDlg.hDevMode = hDevMode;
|
||||
g_assert (gimp_get_data_size (NAME_PRINT) == sizeof (vars));
|
||||
gimp_get_data (NAME_PRINT, &vars);
|
||||
if (vars.devmodeSize > 0)
|
||||
{
|
||||
/* Restore saved DEVMODE. */
|
||||
g_assert (gimp_get_data_size (NAME_PRINT "devmode")
|
||||
== vars.devmodeSize);
|
||||
hDevMode = GlobalAlloc (GMEM_MOVEABLE, vars.devmodeSize);
|
||||
g_assert (hDevMode != NULL);
|
||||
dmp = GlobalLock (hDevMode);
|
||||
g_assert (dmp != NULL);
|
||||
gimp_get_data (NAME_PRINT "devmode", dmp);
|
||||
GlobalUnlock (hDevMode);
|
||||
vars.psDlg.hDevMode = hDevMode;
|
||||
}
|
||||
else
|
||||
{
|
||||
vars.psDlg.hDevMode = NULL;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
vars.psDlg.hDevMode = NULL;
|
||||
}
|
||||
|
||||
if (vars.psDlg.lStructSize == 0)
|
||||
{
|
||||
vars.psDlg.lStructSize = sizeof (PAGESETUPDLG);
|
||||
}
|
||||
vars.psDlg.Flags = 0;
|
||||
vars.psDlg.hwndOwner = NULL;
|
||||
vars.psDlg.hDevNames = NULL;
|
||||
vars.psDlg.Flags = 0;
|
||||
vars.psDlg.lStructSize = sizeof (PAGESETUPDLG);
|
||||
if (!PageSetupDlg (&vars.psDlg))
|
||||
{
|
||||
if (CommDlgExtendedError ())
|
||||
|
@ -583,6 +604,7 @@ run (char *name,
|
|||
status = STATUS_EXECUTION_ERROR;
|
||||
break;
|
||||
}
|
||||
vars.psDlg.Flags |= PSD_MARGINS;
|
||||
hDevMode = vars.psDlg.hDevMode;
|
||||
hDevNames = vars.psDlg.hDevNames;
|
||||
break;
|
||||
|
@ -592,20 +614,22 @@ run (char *name,
|
|||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
status = STATUS_CALLING_ERROR;
|
||||
|
||||
|
||||
/* Store data. */
|
||||
|
||||
if (status == STATUS_SUCCESS && run_mode == RUN_INTERACTIVE)
|
||||
{
|
||||
/* Save DEVMODE */
|
||||
dmp = GlobalLock (hDevMode);
|
||||
vars.devmodeSize = dmp->dmSize + dmp->dmDriverExtra;
|
||||
#if 0
|
||||
g_message("DeviceName = %.*s, Orientation = %s, PaperSize = %s, "
|
||||
g_message("vars.devmodeSize = %d, DeviceName = %.*s, Orientation = %s, PaperSize = %s, "
|
||||
"Scale = %d%%, Copies = %d, PrintQuality = %s, "
|
||||
"%s, ICMMethod = %s, ICMIntent = %s, MediaType = %s, "
|
||||
"DitherType = %s",
|
||||
vars.devmodeSize,
|
||||
CCHDEVICENAME, dmp->dmDeviceName,
|
||||
(dmp->dmOrientation == DMORIENT_PORTRAIT ? "PORTRAIT" :
|
||||
(dmp->dmOrientation == DMORIENT_LANDSCAPE ? "LANDSCAPE" :
|
||||
|
@ -630,11 +654,9 @@ run (char *name,
|
|||
(dmp->dmICMMethod == DMICMMETHOD_DRIVER ? "DRIVER" :
|
||||
(dmp->dmICMMethod == DMICMMETHOD_DEVICE ? "DEVICE" :
|
||||
"?")))),
|
||||
(dmp->dmICMIntent == DMICM_ABS_COLORIMETRIC ? "ABS_COLORIMETRIC" :
|
||||
(dmp->dmICMIntent == DMICM_COLORIMETRIC ? "COLORIMETRIC" :
|
||||
(dmp->dmICMIntent == DMICM_CONTRAST ? "CONTRAST" :
|
||||
(dmp->dmICMIntent == DMICM_SATURATE ? "SATURATE" :
|
||||
"?")))),
|
||||
(dmp->dmICMIntent == DMICM_CONTRAST ? "CONTRAST" :
|
||||
(dmp->dmICMIntent == DMICM_SATURATE ? "SATURATE" :
|
||||
"?")),
|
||||
(dmp->dmMediaType == DMMEDIA_STANDARD ? "STANDARD" :
|
||||
(dmp->dmMediaType == DMMEDIA_GLOSSY ? "GLOSSY" :
|
||||
(dmp->dmMediaType == DMMEDIA_TRANSPARENCY ? "TRANSPARENCY" :
|
||||
|
|
|
@ -48,8 +48,8 @@
|
|||
|
||||
#include "config.h"
|
||||
|
||||
#include <glib.h> /* Include early for obscure Win32
|
||||
build reasons */
|
||||
#include <glib.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <sys/types.h>
|
||||
|
@ -78,6 +78,16 @@
|
|||
# endif
|
||||
#endif
|
||||
|
||||
#if defined (GTK_CHECK_VERSION) && GTK_CHECK_VERSION (1,3,0)
|
||||
#define gdk_root_parent gdk_parent_root
|
||||
#endif
|
||||
|
||||
#ifdef G_OS_WIN32
|
||||
extern __declspec(dllimport) void *gdk_root_parent;
|
||||
#else
|
||||
extern void * gdk_root_parent;
|
||||
#endif
|
||||
|
||||
#include "libgimp/gimp.h"
|
||||
#include "libgimp/gimpui.h"
|
||||
#include "pix_data.h"
|
||||
|
@ -1789,7 +1799,6 @@ my_gdk_pixmap_create_from_xpm_d (GdkWindow *window,
|
|||
gchar *buffer, *color_name = NULL, pixel_str[32];
|
||||
_GdkPixmapColor *colors = NULL, *color = NULL;
|
||||
gulong index;
|
||||
extern void * gdk_root_parent;
|
||||
|
||||
if (!window)
|
||||
window = (GdkWindow*) &gdk_root_parent;
|
||||
|
|
|
@ -557,7 +557,7 @@ RESOURCE = ../../app/gimpres.o
|
|||
endif
|
||||
|
||||
$(PLUGIN).exe : $(OBJECTS) $(RESOURCE)
|
||||
$(CC) $(CFLAGS) -mwindows -s -o $(PLUGIN).exe $(OBJECTS) $(RESOURCE) -L $(PLUGINDIR)/megawidget -lmegawidget -L $(PLUGINDIR)/gpc -lgpc -L $(PLUGINDIR)/libgck/gck -lgck -L ../../libgimp -lgimp-$(GIMP_VER) -lgimpui-$(GIMP_VER) -L $(GTK)/gtk -lgtk-$(GTK_VER) -L $(GTK)/gdk/win32 -lgdk-$(GTK_VER) -L $(INTL) -lgnu-intl -L $(GLIB) -lglib-$(GLIB_VER) $(EXTRALIBS) $(LDFLAGS)
|
||||
$(CC) $(CFLAGS) -mwindows -s -o $(PLUGIN).exe $(OBJECTS) $(RESOURCE) -L $(PLUGINDIR)/megawidget -lmegawidget -L $(PLUGINDIR)/gpc -lgpc -L $(PLUGINDIR)/libgck/gck -lgck -L ../../libgimp -lgimp-$(GIMP_VER) -lgimpui-$(GIMP_VER) -L $(GTK)/gtk -lgtk-$(GTK_VER) -L $(GTK)/gdk -lgdk-$(GTK_VER) -L $(INTL) -lgnu-intl -L $(GLIB) -lglib-$(GLIB_VER) $(EXTRALIBS) $(LDFLAGS)
|
||||
|
||||
# Kludge to get the path to the win32 headers
|
||||
WIN32APIHEADERS = $(shell echo "\#include <winver.h>" | $(CC) -M -E - | tail -1 | sed -e 's!/winver.h!!')
|
||||
|
|
Loading…
Reference in New Issue