diff options
author | treectrl <treectrl> | 2006-12-06 00:52:03 (GMT) |
---|---|---|
committer | treectrl <treectrl> | 2006-12-06 00:52:03 (GMT) |
commit | 5e40f524d201a69d005903615a1e02aea2a8ac27 (patch) | |
tree | 580d6cd961143c7cd77ec979ca5b8728cdfa4965 /generic/tkTreeCtrl.h | |
parent | 4204b2f78309da5ae8fc5a788ba3489655d442de (diff) | |
download | tktreectrl-5e40f524d201a69d005903615a1e02aea2a8ac27.zip tktreectrl-5e40f524d201a69d005903615a1e02aea2a8ac27.tar.gz tktreectrl-5e40f524d201a69d005903615a1e02aea2a8ac27.tar.bz2 |
Created a stack of TkRegions to avoid creating/destroying them repeatedly.
Fixed a leak on X11 where the clipping region was not being freed after drawing dotted rectangles.
Diffstat (limited to 'generic/tkTreeCtrl.h')
-rw-r--r-- | generic/tkTreeCtrl.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/generic/tkTreeCtrl.h b/generic/tkTreeCtrl.h index 2cb1ef3..79e52bc 100644 --- a/generic/tkTreeCtrl.h +++ b/generic/tkTreeCtrl.h @@ -7,7 +7,7 @@ * Copyright (c) 2002-2003 Christian Krone * Copyright (c) 2003 ActiveState Corporation * - * RCS: @(#) $Id: tkTreeCtrl.h,v 1.82 2006/12/06 00:03:21 treectrl Exp $ + * RCS: @(#) $Id: tkTreeCtrl.h,v 1.83 2006/12/06 00:52:04 treectrl Exp $ */ #include "tkPort.h" @@ -376,6 +376,9 @@ struct TreeCtrl TreeThemeData themeData; GCCache *gcCache; /* Graphics contexts for elements. */ + + TkRegion regionStack[8]; /* Temp region stack. */ + int regionStackLen; /* Number of unused regions in regionStack. */ }; #define TREE_CONF_FONT 0x0001 @@ -877,6 +880,8 @@ extern void Tree_DrawBitmapWithGC(TreeCtrl *tree, Pixmap bitmap, Drawable drawab extern void Tree_DrawBitmap(TreeCtrl *tree, Pixmap bitmap, Drawable drawable, XColor *fg, XColor *bg, int src_x, int src_y, int width, int height, int dest_x, int dest_y); +extern TkRegion Tree_GetRegion(TreeCtrl *tree); +extern void Tree_FreeRegion(TreeCtrl *tree, TkRegion region); extern void Tk_FillRegion(Display *display, Drawable drawable, GC gc, TkRegion rgn); extern void Tk_OffsetRegion(TkRegion region, int xOffset, int yOffset); extern int Tree_ScrollWindow(TreeCtrl *tree, GC gc, int x, int y, |