summaryrefslogtreecommitdiffstats
path: root/generic/tkTreeCtrl.h
diff options
context:
space:
mode:
authortreectrl <treectrl>2006-12-06 00:52:03 (GMT)
committertreectrl <treectrl>2006-12-06 00:52:03 (GMT)
commit5e40f524d201a69d005903615a1e02aea2a8ac27 (patch)
tree580d6cd961143c7cd77ec979ca5b8728cdfa4965 /generic/tkTreeCtrl.h
parent4204b2f78309da5ae8fc5a788ba3489655d442de (diff)
downloadtktreectrl-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.h7
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,