Index: Makefile.in =================================================================== RCS file: /cvsroot/blt/blt/Makefile.in,v retrieving revision 1.4 diff -u -p -u -p -r1.4 Makefile.in --- Makefile.in 20 Jan 2004 23:36:43 -0000 1.4 +++ Makefile.in 3 Mar 2005 04:32:11 -0000 @@ -13,8 +13,8 @@ bindir = @bindir@ includedir = @includedir@ libdir = @libdir@ version = @BLT_VERSION@ -scriptdir = $(prefix)/lib -bltdir = $(prefix)/lib/blt$(version) +scriptdir = @libdir@ +bltdir = @libdir@/blt$(version) instdirs = $(prefix) \ $(exec_prefix) \ Index: configure.in =================================================================== RCS file: /cvsroot/blt/blt/configure.in,v retrieving revision 1.58 diff -u -p -u -p -r1.58 configure.in --- configure.in 27 Oct 2004 17:54:43 -0000 1.58 +++ configure.in 3 Mar 2005 04:32:12 -0000 @@ -194,10 +194,6 @@ case $target in LIB_PREFIX="" fi ;; - *-*-darwin*) - blt_platform="macosx" - LIB_PREFIX="lib" - ;; *) blt_platform="unix" LIB_PREFIX="lib" @@ -880,24 +876,41 @@ case $target in ;; esac -tcl_lib_spec="-ltcl${TCL_LIB_VERSION}\$(TCL_DBG)" -tk_lib_spec="-ltk${TK_LIB_VERSION}\$(TCL_DBG)" +tcl_lib_spec="${TCL_LIB_SPEC}" +tk_lib_spec="${TK_LIB_SPEC}" case $target in *-hpux*) SO_SUFFIX="sl" ;; + *-*-darwin*) + SO_SUFFIX="dylib" + ;; *) SO_SUFFIX="so" ;; esac +if test "${blt_platform}" = "unix"; then + case ${TK_DEFS} in + *MAC_OSX_TK*) + AC_DEFINE(MAC_OSX_TK, 1, [TkAqua]) + AC_DEFINE(MACOSX, 1, [TkAqua]) + X11_LIB_SPEC= + X11_INC_SPEC= + blt_platform="macosx" + echo blt_platform=$blt_platform + ;; + esac +fi + TCL_LIB_DIR="${TCL_SRC_DIR}/$blt_platform" TK_LIB_DIR="${TK_SRC_DIR}/$blt_platform" if test "x${blt_with_tcl_libraries}" != "x" ; then for libname in \ + "${blt_with_tcl_libraries}/${TCL_LIB_FILE}" \ "${blt_with_tcl_libraries}/libtcl${TCL_LIB_VERSION}.${SO_SUFFIX}" \ "${blt_with_tcl_libraries}/libtcl${TCL_LIB_VERSION}.a" do @@ -912,6 +925,7 @@ if test "x${blt_with_tcl_libraries}" != fi else for libname in \ + "${TCL_EXEC_PREFIX}/lib/${TCL_LIB_FILE}" \ "${TCL_EXEC_PREFIX}/lib/libtcl${TCL_LIB_VERSION}.${SO_SUFFIX}" \ "${TCL_EXEC_PREFIX}/lib/libtcl${TCL_LIB_VERSION}.a" do @@ -928,6 +942,7 @@ fi if test "x${blt_with_tk_libraries}" != "x" ; then for libname in \ + "${blt_with_tk_libraries}/${TK_LIB_FILE}" \ "${blt_with_tk_libraries}/libtk${TK_LIB_VERSION}.${SO_SUFFIX}" \ "${blt_with_tk_libraries}/libtk${TK_LIB_VERSION}.a" do @@ -942,6 +957,7 @@ if test "x${blt_with_tk_libraries}" != " fi else for libname in \ + "${TK_EXEC_PREFIX}/lib/${TK_LIB_FILE}" \ "${TK_EXEC_PREFIX}/lib/libtk${TK_LIB_VERSION}.${SO_SUFFIX}" \ "${TK_EXEC_PREFIX}/lib/libtk${TK_LIB_VERSION}.a" do @@ -969,6 +985,9 @@ fi if test "${TK_INC_DIR}" != "/usr/include" ; then INC_SPECS="${INC_SPECS} -I${TK_INC_DIR}" fi +if test "${blt_platform}" = "macosx"; then + INC_SPECS="${INC_SPECS} -I`echo ${TK_INC_DIR} | sed -e 's#Headers#PrivateHeaders#'`" +fi # Tcl include files # @@ -981,7 +1000,7 @@ fi # On Windows, override the default include directory with our own. -if test "${blt_platform}" = "win"; then +if test "${blt_platform}" = "win" -o "${blt_platform}" = "macosx"; then x_includes="NONE" fi @@ -1634,6 +1653,12 @@ case $target in SO_LD_FLAGS=" -Wl,-Bexport" ;; + *-*-darwin*) + SO_CFLAGS="" + SO_LD="${CC}" + SO_LD_FLAGS="-dynamiclib" + ;; + *) build_shared="no" ;; Index: src/Makefile-macosx.in =================================================================== RCS file: /cvsroot/blt/blt/src/Makefile-macosx.in,v retrieving revision 1.1 diff -u -p -u -p -r1.1 Makefile-macosx.in --- src/Makefile-macosx.in 26 Dec 2004 20:31:13 -0000 1.1 +++ src/Makefile-macosx.in 3 Mar 2005 04:32:12 -0000 @@ -11,7 +11,7 @@ BLT_LIBRARY = @BLT_LIBRARY@ CC = @CC@ CFLAGS = @CFLAGS@ DBG = @LIB_SUFFIX@ -DEFINES = @DEFINES@ -DMACOSX +DEFINES = @DEFINES@ EXTRA_CFLAGS = @GCCFLAGS@ FT_INC_SPEC = @FT_INC_SPEC@ FT_LIB_SPEC = @FT_LIB_SPEC@ @@ -36,11 +36,11 @@ version = @BLT_MAJOR_VERSION@@BLT_MINOR # Source and targer installation directories # ------------------------------------------------------------------------ -bindir = $(exec_prefix)/bin +bindir = @bindir@ exec_prefix = @exec_prefix@ -incdir = $(prefix)/include +incdir = @includedir@ libdir = @libdir@ -scriptdir = $(exec_prefix)/lib +scriptdir = @libdir@ prefix = @prefix@ srcdir = @srcdir@ @@ -132,11 +132,17 @@ OBJS = $(GRAPH_OBJS) \ bltImage.o \ bltMacBitmap.o \ bltMacWindow.o \ + bltMacOSXPainter.o \ bltOldConfig.o \ bltPainter.o \ bltPicture.o \ bltPictureDraw.o \ - bltPictureFormats.o \ + bltPictureGif.o \ + bltPictureJpg.o \ + bltPicturePng.o \ + bltPictureTif.o \ + bltPictureXbm.o \ + bltPictureXpm.o \ bltPictureImage.o \ bltPictureMMX.o \ bltPs.o \ @@ -269,13 +275,20 @@ distclean: clean $(RM) $(srcdir)/*.bak $(srcdir)/*\~ $(srcdir)/"#"* Makefile $(RM) config.h bltHash.h Makefile TAGS -bltImageDraw.o: $(srcdir)/bltImageDraw.c +bltPictureDraw.o: $(srcdir)/bltPictureDraw.c $(CC) -c $(CC_OPTS) $(FT_INC_SPEC) $? - -bltImageFmt.o: $(srcdir)/bltImageFmt.c - $(CC) -c $(CC_OPTS) $(JPEG_INC_SPEC) $(TIFF_INC_SPEC) $(PNG_INC_SPEC) \ - $(XPM_INC_SPEC) $? - +bltPictureJpg.o: $(srcdir)/bltPictureJpg.c + $(CC) -c $(CC_OPTS) $(JPEG_INC_SPEC) $? +bltPictureTif.o: $(srcdir)/bltPictureTif.c + $(CC) -c $(CC_OPTS) $(TIFF_INC_SPEC) $? +bltPicturePng.o: $(srcdir)/bltPicturePng.c + $(CC) -c $(CC_OPTS) $(PNG_INC_SPEC) $? +bltPictureXpm.o: $(srcdir)/bltPictureXpm.c + $(CC) -c $(CC_OPTS) $(XPM_INC_SPEC) $? +bltPictureXbm.o: $(srcdir)/bltPictureXbm.c + $(CC) -c $(CC_OPTS) $? +bltPictureGif.o: $(srcdir)/bltPictureGif.c + $(CC) -c $(CC_OPTS) $? .c.o: $(CC) -c $(CC_OPTS) $< Index: src/Makefile.in =================================================================== RCS file: /cvsroot/blt/blt/src/Makefile.in,v retrieving revision 1.50 diff -u -p -u -p -r1.50 Makefile.in --- src/Makefile.in 31 Jan 2005 16:46:33 -0000 1.50 +++ src/Makefile.in 3 Mar 2005 04:32:12 -0000 @@ -36,11 +36,11 @@ version = @BLT_MAJOR_VERSION@@BLT_MINOR # Source and targer installation directories # ------------------------------------------------------------------------ -bindir = $(exec_prefix)/bin +bindir = @bindir@ exec_prefix = @exec_prefix@ -incdir = $(prefix)/include +incdir = @includedir@ libdir = @libdir@ -scriptdir = $(exec_prefix)/lib +scriptdir = @libdir@ prefix = @prefix@ srcdir = @srcdir@ Index: src/bltMacImage.c =================================================================== RCS file: /cvsroot/blt/blt/src/bltMacImage.c,v retrieving revision 1.1 diff -u -p -u -p -r1.1 bltMacImage.c --- src/bltMacImage.c 26 Dec 2004 20:31:14 -0000 1.1 +++ src/bltMacImage.c 3 Mar 2005 04:32:12 -0000 @@ -32,8 +32,9 @@ #include "bltInt.h" #include "bltImage.h" +#include "bltPicture.h" +#include "bltPainter.h" /* #include */ -#include "tkDisplay.h" typedef struct Blt_PictureStruct _Picture; @@ -41,31 +42,12 @@ typedef struct Blt_PictureStruct _Pictur #define Picture MacOSX_Picture #define TextStyle MacOSX_TextStyle #include +#include "tkMacOSXInt.h" #undef Picture #undef Cursor #undef TextStyle -struct TkWindow; - -struct MacDrawableStruct { - TkWindow *winPtr; /* Ptr to tk window or NULL if Pixmap */ - CGrafPtr grafPtr; - ControlRef rootControl; - int xOffset; /* X offset from toplevel window. */ - int yOffset; /* Y offset from toplevel window. */ - RgnHandle clipRgn; /* Visable region of window. */ - RgnHandle aboveClipRgn; /* Visable region of window and its - * children. */ - int referenceCount; /* Don't delete toplevel until - * children are gone. */ - - /* Pointer to the toplevel datastruct. */ - struct MacDrawableStruct *toplevel; - int flags; /* Various state see defines below. */ -}; - -typedef struct MacDrawableStruct *MacDrawable; - +#define CLAMP(c) ((((c) < 0.0) ? 0.0 : ((c) > 255.0) ? 255.0 : (c))) #define COLOR_WINDOW (1<<0) #define BLACK_AND_WHITE (1<<1) Index: src/bltMacOSXPainter.c =================================================================== RCS file: /cvsroot/blt/blt/src/bltMacOSXPainter.c,v retrieving revision 1.2 diff -u -p -u -p -r1.2 bltMacOSXPainter.c --- src/bltMacOSXPainter.c 16 Dec 2004 18:40:07 -0000 1.2 +++ src/bltMacOSXPainter.c 3 Mar 2005 04:32:12 -0000 @@ -33,33 +33,21 @@ #include "bltInt.h" #include "bltPicture.h" #include "bltPainter.h" -#include -#include "tkDisplay.h" +#include "bltPainterInt.h" +/*#include */ -typedef struct Blt_PictureStruct Picture; +typedef struct Blt_PictureStruct _Picture; +#define Cursor MacOSX_Cursor +#define Picture MacOSX_Picture +#define TextStyle MacOSX_TextStyle #include +#include "tkMacOSXInt.h" +#undef Picture +#undef Cursor +#undef TextStyle -struct TkWindow; - -struct MacDrawableStruct { - TkWindow *winPtr; /* Ptr to tk window or NULL if Pixmap */ - CGrafPtr grafPtr; - ControlRef rootControl; - int xOffset; /* X offset from toplevel window. */ - int yOffset; /* Y offset from toplevel window. */ - RgnHandle clipRgn; /* Visable region of window. */ - RgnHandle aboveClipRgn; /* Visable region of window and its - * children. */ - int referenceCount; /* Don't delete toplevel until - * children are gone. */ - - /* Pointer to the toplevel datastruct. */ - struct MacDrawableStruct *toplevel; - int flags; /* Various state see defines below. */ -}; - -typedef struct MacDrawableStruct *MacDrawable; +typedef struct Blt_PictureStruct Picture; /* *---------------------------------------------------------------------- @@ -84,14 +72,14 @@ DrawableToPicture( { CGrafPtr saveWorld; GDHandle saveDevice; - GWorldPtr srcPort; + GWorldPtr srcPort, destPort; Picture *destPtr; srcPort = TkMacOSXGetDrawablePort(drawable); destPtr = Blt_CreatePicture(width, height); { Rect srcRect, destRect; - MacDrawable dstDraw = (MacDrawable)drawable; + MacDrawable *dstDraw = (MacDrawable*)drawable; PixMap pm; SetRect(&srcRect, x, y, x + width, y + height); @@ -1147,7 +1135,7 @@ Blt_JPEGToPicture(interp, fileName) * the flags parameter: 0 no dithering, 1 for dithering. * * Results: - * Returns TRUE is the picture was successfully display, + * Returns TRUE if the picture was successfully display, * Otherwise FALSE is returned if the particular combination * visual and image depth is not handled. * @@ -1183,7 +1171,7 @@ PaintPicture( destPort = TkMacOSXGetDrawablePort(drawable); { Rect srcRect, destRect; - MacDrawable dstDraw = (MacDrawable)drawable; + MacDrawable *dstDraw = (MacDrawable*)drawable; PixMap pm; SetRect(&srcRect, srcX, srcY, srcX + width, srcY + height); Index: src/bltPictureDraw.c =================================================================== RCS file: /cvsroot/blt/blt/src/bltPictureDraw.c,v retrieving revision 1.2 diff -u -p -u -p -r1.2 bltPictureDraw.c --- src/bltPictureDraw.c 18 Dec 2004 01:51:15 -0000 1.2 +++ src/bltPictureDraw.c 3 Mar 2005 04:32:12 -0000 @@ -436,8 +436,6 @@ PutLine( } -#include "bltPaintDraw.c" - static void PaintLine2( Picture *destPtr, Index: src/config.h.in =================================================================== RCS file: /cvsroot/blt/blt/src/config.h.in,v retrieving revision 1.10 diff -u -p -u -p -r1.10 config.h.in --- src/config.h.in 5 May 2004 18:30:42 -0000 1.10 +++ src/config.h.in 3 Mar 2005 04:32:12 -0000 @@ -190,6 +190,12 @@ /* Define to 1 if you have the `XExtendedMaxRequestSize' function. */ #undef HAVE_XEXTENDEDMAXREQUESTSIZE +/* TkAqua */ +#undef MACOSX + +/* TkAqua */ +#undef MAC_OSX_TK + /* Define to the address where bug reports for this package should be sent. */ #undef PACKAGE_BUGREPORT Index: src/shared/Makefile.in =================================================================== RCS file: /cvsroot/blt/blt/src/shared/Makefile.in,v retrieving revision 1.43 diff -u -p -u -p -r1.43 Makefile.in --- src/shared/Makefile.in 31 Jan 2005 16:46:51 -0000 1.43 +++ src/shared/Makefile.in 3 Mar 2005 04:32:12 -0000 @@ -43,7 +43,7 @@ X11_LIB_SPEC = @X11_LIB_SPEC@ prefix = @prefix@ exec_prefix = @exec_prefix@ libdir = @libdir@ -bindir = $(exec_prefix)/bin +bindir = @bindir@ srcdir = @srcdir@/.. instdirs = $(exec_prefix) $(libdir)