diff options
author | das <das> | 2007-10-12 03:14:47 (GMT) |
---|---|---|
committer | das <das> | 2007-10-12 03:14:47 (GMT) |
commit | acc2acbb288f8a715cce7905093615b3a7fcbc47 (patch) | |
tree | eb61b1b1e215cb3c0ce151014bd73b7b63db5257 /macosx/tkMacOSXDebug.c | |
parent | d0945ac2cb3d92090109d0c3899b51284660db69 (diff) | |
download | tk-acc2acbb288f8a715cce7905093615b3a7fcbc47.zip tk-acc2acbb288f8a715cce7905093615b3a7fcbc47.tar.gz tk-acc2acbb288f8a715cce7905093615b3a7fcbc47.tar.bz2 |
* macosx/tkMacOSXDraw.c: replace all (internal) use of QD region
* macosx/tkMacOSXSubwindows.c: API by HIShape API, with conversion to
* macosx/tkMacOSXWindowEvent.c QD regions only when required by legacy
* macosx/tkMacOSXPrivate.h: Carbon or Tk API.
* macosx/tkMacOSXRegion.c:
* macosx/tkMacOSXDebug.c:
* macosx/tkMacOSXDebug.h:
* macosx/tkMacOSXInt.h: replace MacDrawable's QD RgnHandles
* macosx/tkMacOSXEmbed.c: clipRgn, aboveClipRgn & drawRgn by
* macosx/tkMacOSXMenu.c: HIShapeRefs visRgn & aboveVisRgn and
* macosx/tkMacOSXSubwindows.c: CGRect drawRect.
* macosx/tkMacOSXWindowEvent.c: remove use of QD port vis rgn in window
* macosx/tkMacOSXSubwindows.c: update rgn calculation, manually excise
* macosx/tkMacOSXWm.c: growbox from toplevel clip rgn instead.
* macosx/tkMacOSXDraw.c: replace use of QD port clip rgn by new
* macosx/tkMacOSXPrivate.h: clipRgn fld in TkMacOSXDrawingContext;
handle QD/CG drawing mismatches in
XCopyArea, XCopyPlane and TkPutImage;
cleanup/speedup CGContext setup in
TkMacOSXSetupDrawingContext().
* macosx/tkMacOSXDraw.c: change TkMacOSXSetupDrawingContext() to
* macosx/tkMacOSXEntry.c: return boolean indicating whether
* macosx/tkMacOSXFont.c: drawing is allowed (and was setup) or
* macosx/tkMacOSXMenu.c: not (e.g. when clipRgn is empty).
* macosx/ttkMacOSXTheme.c:
* macosx/tkMacOSXSubwindows.c: signal that drawable is a pixmap via
* macosx/tkMacOSXInt.h: new explicit TK_IS_PIXMAP flag instead
of a NULL cligRgn field.
* macosx/tkMacOSXRegion.c: add wrappers for missing/buggy HIShape
* macosx/tkMacOSXPrivate.h: API, and private helpers to operate on
HIShapeRefs & convert to/from TkRegion.
* macosx/tkMacOSXRegion.c: add Tkp{Retain,Release}Region() API for
* macosx/tkMacOSXInt.h: TkRegion.
Diffstat (limited to 'macosx/tkMacOSXDebug.c')
-rw-r--r-- | macosx/tkMacOSXDebug.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/macosx/tkMacOSXDebug.c b/macosx/tkMacOSXDebug.c index bceddab..b9ff3fa 100644 --- a/macosx/tkMacOSXDebug.c +++ b/macosx/tkMacOSXDebug.c @@ -54,7 +54,7 @@ * software in accordance with the terms specified in this * license. * - * RCS: @(#) $Id: tkMacOSXDebug.c,v 1.14 2007/06/29 03:20:00 das Exp $ + * RCS: @(#) $Id: tkMacOSXDebug.c,v 1.15 2007/10/12 03:14:48 das Exp $ */ #include "tkMacOSXPrivate.h" @@ -456,19 +456,28 @@ TkMacOSXMouseTrackingResultToAscii(MouseTrackingResult r, char * buf) MODULE_SCOPE void TkMacOSXDebugFlashRegion( Drawable d, - RgnHandle rgn) + HIShapeRef rgn) { TkMacOSXInitNamedDebugSymbol(HIToolbox, int, QDDebugFlashRegion, CGrafPtr port, RgnHandle region); - if (d && rgn && QDDebugFlashRegion && !EmptyRgn(rgn)) { + CFShow(rgn); + if (d && rgn && QDDebugFlashRegion && !HIShapeIsEmpty(rgn)) { CGrafPtr port = TkMacOSXGetDrawablePort(d); if (port) { + static RgnHandle qdRgn = NULL; + + if (!qdRgn) { + qdRgn = NewRgn(); + } + ChkErr(HIShapeGetAsQDRgn, rgn, qdRgn); + /* * Carbon-internal region flashing SPI (c.f. Technote 2124) */ - QDDebugFlashRegion(port, rgn); + QDDebugFlashRegion(port, qdRgn); + SetEmptyRgn(qdRgn); } } } |