summaryrefslogtreecommitdiffstats
path: root/generic
diff options
context:
space:
mode:
authortreectrl <treectrl>2003-01-02 22:14:56 (GMT)
committertreectrl <treectrl>2003-01-02 22:14:56 (GMT)
commitc3d09be7d13233bdf1c5d50cc97844cc2b783e9f (patch)
tree000a8fcfca113ed41a484fb53104221501a2a471 /generic
parent9f5d0d59971b81fa2e57a70dde11f1e00fa24410 (diff)
downloadtktreectrl-c3d09be7d13233bdf1c5d50cc97844cc2b783e9f.zip
tktreectrl-c3d09be7d13233bdf1c5d50cc97844cc2b783e9f.tar.gz
tktreectrl-c3d09be7d13233bdf1c5d50cc97844cc2b783e9f.tar.bz2
Remove 20-column limit.
Diffstat (limited to 'generic')
-rw-r--r--generic/tkTreeDisplay.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/generic/tkTreeDisplay.c b/generic/tkTreeDisplay.c
index cf630a4..196b4af 100644
--- a/generic/tkTreeDisplay.c
+++ b/generic/tkTreeDisplay.c
@@ -60,7 +60,8 @@ struct DInfo
int yOrigin; /* Last seen TreeCtrl.yOrigin */
int totalWidth; /* Last seen Tree_TotalWidth() */
int totalHeight; /* Last seen Tree_TotalHeight() */
- int columnWidth[20]; /* Last seen column widths */
+ int *columnWidth; /* Last seen column widths */
+ int columnWidthSize; /* Num elements in columnWidth */
int headerHeight; /* Last seen TreeCtrl.headerHeight */
DItem *dItem; /* Head of list for each visible item */
DItem *dItemLast; /* Temp for UpdateDInfo() */
@@ -2574,6 +2575,12 @@ if (tree->debug.enable && tree->debug.display && 0)
TreeColumn treeColumn = tree->columns;
int columnIndex = 0;
+ if (dInfo->columnWidthSize < tree->columnCount)
+ {
+ dInfo->columnWidthSize *= 2;
+ dInfo->columnWidth = (int *) ckrealloc((char *) dInfo->columnWidth,
+ sizeof(int) * dInfo->columnWidthSize);
+ }
while (treeColumn != NULL)
{
if (dInfo->columnWidth[columnIndex] != TreeColumn_UseWidth(treeColumn))
@@ -3580,6 +3587,8 @@ void TreeDInfo_Init(TreeCtrl *tree)
gcValues.graphics_exposures = True;
dInfo->scrollGC = Tk_GetGC(tree->tkwin, GCGraphicsExposures, &gcValues);
dInfo->flags = DINFO_OUT_OF_DATE;
+ dInfo->columnWidthSize = 10;
+ dInfo->columnWidth = (int *) ckalloc(sizeof(int) * dInfo->columnWidthSize);
tree->dInfo = (TreeDInfo) dInfo;
}