summaryrefslogtreecommitdiffstats
path: root/generic
Commit message (Collapse)AuthorAgeFilesLines
* Renamed TreeItemList_ItemN to TreeItemList_Nth.treectrl2006-10-142-6/+6
|
* Fix Tree_InvalidateItemDInfo not considering column spans.treectrl2006-10-141-739/+724
| | | | | | Added Tree_AreaBbox for getting the bounds of onscreen areas. Renamed TREE_HIT_xxx to TREE_AREA_xxx. Much improvement in displaying locked columns.
* Renamed IFO_xxx flags.treectrl2006-10-141-2/+2
|
* TreeColumn_FromObj sets CFO_NOT_MANY by default.treectrl2006-10-141-50/+221
| | | | | | | | | Added -indicatorside option to [column dragconfigure]. Added CFO_LIST_ALL flag. Moved ColumnForEach declarations to tkTreeCtrl.h. Disallow changing the -lock option of the tail column. Rewrote [column delete] to use multi-column descriptions. Fix [column move] to allow proper reordering of locked columns.
* [contentbox] returns an empty string if the content area is <= 0 height or ↵treectrl2006-10-141-75/+91
| | | | | | | | width. Updated the deprecated [expand], [collpase] and [toggle] to agree with the preferred [item expand] etc. Renamed IFO_xxx flags. Renamed TreeItemList_ItemN to TreeItemList_Nth.
* Added -indicatorside option to [column dragconfigure].treectrl2006-10-141-12/+65
| | | | | | Renamed IFO_xxx flags. Moved ItemForEach and ColumnForEach from their respective files. Renamed TREE_HIT_xxx to TREE_AREA_xxx.
* Added StyleDrawArgs.bounds for clipping window elements.treectrl2006-10-111-43/+56
| | | | Tree_InvalidateItemDInfo and Tree_InvalidateColumnWidth now take a TreeColumn arg.
* Tree_ItemsInArea returns a TreeItemList.treectrl2006-10-111-9/+11
|
* Added column option -lock.treectrl2006-10-111-52/+193
| | | | Tree_InvalidateItemDInfo and Tree_InvalidateColumnWidth now take a TreeColumn arg.
* Fixed a bug with window elements when another geometry manager takes control ↵treectrl2006-10-111-7/+18
| | | | of a managed window.
* Added column option -lock.treectrl2006-10-111-1/+5
|
* Added column option -lock.treectrl2006-10-111-85/+999
| | | | | | | | Added Tree_HitTest to determine the area of the window containing a point. Tree_ItemsInArea returns a TreeItemList. Changed DInfo.columnWidth to track column, offset and width. Tree_InvalidateItemDInfo can now invalidate a single column rather than the entire item. Tree_InvalidateRegion invalidates only the parts of the item overlapped by the region.
* Added column option -lock.treectrl2006-10-111-13/+85
| | | | | Added -drawcolor to [debug configure]. Added -rowproxy option for resizing rows.
* Added column option -lock.treectrl2006-10-111-42/+97
| | | | | | Added -drawcolor to [debug configure]. Added [debug expose] command. Added -rowproxy option for resizing rows.
* Added column option -lock.treectrl2006-10-111-190/+850
| | | | | | | Fixed bug with "prev" in column descriptions. Added "list" and "range" keywords to column descriptions. Added TreeColumn_Bbox and Tree_HeaderUnderPoint. Tree_InvalidateColumnWidth/Height accept a TreeColumn instead of an index.
* Use the new PerStateInfo custom option, eliminating some code.treectrl2006-10-051-53/+21
| | | | Added a TreeCtrl arg to TagInfo_xxx.
* Use the new PerStateInfo custom option, eliminating some code.treectrl2006-10-051-36/+12
|
* Added AllocHax_Realloc.treectrl2006-10-051-7/+15
| | | | | | Changed TagInfo_xxx to accept a TreeCtrl arg and use AllocHax_xxx for a big speedup. Created a PerStateInfo custom option type. Added 2 fields to TreeCtrl to support larger-than-a-double custom options.
* Fix a bug with -orient horizontal and rowlabels.treectrl2006-10-051-2/+11
|
* Use the new PerStateInfo custom option, eliminating a lot of code.treectrl2006-10-051-263/+80
|
* Changed TagInfo_xxx to accept a TreeCtrl arg.treectrl2006-10-052-11/+11
|
* Added AllocHax_Realloc.treectrl2006-10-051-18/+290
| | | | | Changed TagInfo_xxx to accept a TreeCtrl arg and use AllocHax_xxx for a big speedup. Created a PerStateInfo custom option type.
* New file.treectrl2006-10-041-0/+3107
|
* Wrap various fields in TREECTRL_DEBUG define to save some memory.treectrl2006-10-041-92/+1036
| | | | | | TreeItemList_xxx renamed to TreePtrList_xxx so columns and rowlabels can use these routines. TagExpr_xxx moved from tkTreeItem.c TagInfo_xxx added.
* Separated Style into MStyle and IStyle to save some memory.treectrl2006-10-041-356/+827
| | | | | ElementLink -> MElementLink and IElementLink. Rowlabels use styles too, so they get updated when styles/elements change.
* Moved ItemTags and TagExpr stuff to tkTreeCtrl.h and tkTreeUtils.c.treectrl2006-10-041-1062/+406
| | | | | | | | Added -tags option to items. Renamed [tag] to [item tag]. Removed unused fields from Item and Column to save a bit of memory. Cleaned up TreeItemList_FromObj a bit. Allow tag expressions to be the first part of an item description without using the "tag" keyword. Rename TreeForEach stuff to ItemForEach.
* Added TreeRowLabel field/arg.treectrl2006-10-042-4/+42
|
* Arrange and draw rowlabels.treectrl2006-10-041-241/+664
| | | | | | Use Tree_ContentXXX macros. Fix display bug when scrolling more than a screenful (pixels might be copied over the borders). Draw -rowproxy like -columnproxy.
* New treectrl options: -rowlabelresize, -rowlabelwidth, -minrowlabelwidth, ↵treectrl2006-10-041-41/+107
| | | | | | | | | | -maxrowlabelwidth, -rowlabelprefix, -rowproxy, -showrowlabels. Added [rowlabel] command. Moved [tag] command to [item tag] since columns and rowlabels have tags too. [identify] command may return "rowlabel ...". Use Tree_ContentXXX macros. Moved TreeStyle_Init out of package init routine into treectrl create routine because it initialized TreeCtrl.styleOptionTable now (before it did nothing).
* TreeItemList stuff renamed to TreePtrList so columns and rowlabels can use them.treectrl2006-10-041-25/+219
| | | | | | | Added TreeCtrl.columnLast to point to the rightmost user-made column. New treectrl options: -rowlabelresize, -rowlabelwidth, -minrowlabelwidth, -maxrowlabelwidth, -rowlabelprefix, -rowproxy, -showrowlabels. Various declarations for handling rowlabels. Move TagInfo and TagExpr from tkTreeItem.c.
* The -tag option is now -tags and uses a TagInfo struct.treectrl2006-10-041-326/+923
| | | | | | | | "tail" is no longer a tag; it remains a keyword in column descriptions. Added Column.prev to make the list of columns double-linked. Allow column descriptions to refer to multiple columns. Added [column tag] command. [column id] returns a list of matching columns.
* Set ElementArgs.display.bounds in two places to support clipping of window ↵treectrl2006-09-271-3/+27
| | | | elements.
* Rewrote TreeItem_UpdateWindowPositions to respect column spans (code is ↵treectrl2006-09-271-1/+71
| | | | mostly the same as TreeItem_Draw).
* Added -clip option to window element to support clipping of windows.treectrl2006-09-271-6/+154
|
* Added ElementArgs.display.bounds field to support clipping window elements.treectrl2006-09-271-1/+2
|
* Move drawableX/YOrigin statements where they belong.treectrl2006-09-271-12/+46
| | | | Rewrote Tree_InvalidateRegion to make screen updates more efficient.
* Added [tag] command.treectrl2006-09-241-67/+1159
| | | | | | | | | | Added [item descendants] command. Added "descendants" modifier to item descriptions. Added -tags option to [item create]. TagExpr_xxx routines added for evaluating tag expressions. Code was lifted from theTk Canvas. Created a struct for holding info about qualifiers in item descriptions and added a new qualifiers"tag" and "!visible". Allow keyword "tag" to be the first word in an item description. "all" may now be followed by qualifiers in item descriptions.
* Added [tag] command.treectrl2006-09-241-3/+9
|
* Declare TreeTagCmd.treectrl2006-09-241-1/+2
|
* Use new Tree_StateFromListObj for getting state flags from a list object.treectrl2006-09-221-11/+2
|
* Added Tree_StateFromListObj.treectrl2006-09-222-2/+43
|
* Use new Tree_StateFromListObj for getting state flags from a list object.treectrl2006-09-221-410/+665
| | | | | | | | | | | | | | | Added TreeForEach_xxx to make iterating over item-list arguments easier. Fix TreeItem_ListDescendants; it was appending the given item and skipping the last descendant. Rewrote the following commands to accept multi-item item descriptions: item element configure item image item style map item style set item state forcolumn item state set item remove item span item text
* Added various TreeItemList_xxx routines.treectrl2006-09-211-1/+167
|
* Use TreeItemList instead of various other data types.treectrl2006-09-211-82/+44
|
* Added Item.flags field for handling deleted items.treectrl2006-09-211-476/+605
| | | | | | | | | | | | | | | TreeItem_FromObj renamed to TreeItemList_FromObj. TreeItemList_FromObj: added "list", "range", "ancestors" and "children" keywords for matching multiple items. Added TreeItem_FirstAndLast, TreeItem_ListDescendants. [item create]: fixed bug where -nextsibling and -prevsibling options could specify an orphan item. Tree_DeselectHidden rewritten to use TreeItemList. TreeItemCmd: Use TreeItemList_FromObj to get lists of items to operate on instead of single items. [item expand], [item collapse], [item toggle]: Only operate on items which exist when the command is called, not any that might get created by <Expand> or <Collapse> binding scripts. Handle item descriptions that refer to multiple items. [item compare]: removed 2nd-arg code since argInfo[] was changed to handle an extra argument. [item configure]: Handle item descriptions that refer to multiple items. [item delete]: Handle item descriptions that refer to multiple items. Use TreeCtrl.preserveItemList to hold deleted items until any nested calls complete. [item enabled]: Handle item descriptions that refer to multiple items. [item id]: Handle item descriptions that refer to multiple items. Return a list of item ids instead of only one.
* Added DInfo.requests field to count calls to Tree_EventuallyRedraw.treectrl2006-09-211-130/+125
| | | | | | | Tree_Display: preserve the tree and items so binding scripts don't free them. Tree_Display: if <Scroll> or <ItemVisibility> scripts cause a redraw request, jump to the top of the routine and start redisplaying again. Tree_Display: the block of code handling itemVisHash was moved before any drawing code and rewritten to use TreeItemList. itemVisHash now uses TreeItems instead of item ids as indexes. Tree_Display: moved TreeItem_UpdateWindowPositions from the itemVisHash block down to the drawing block.
* [selection add], [selection clear] and [selection modify] rewritten to use ↵treectrl2006-09-211-293/+230
| | | | | | TreeItemList and related funcs instead of STATIC_ALLOC for handling lists of items. TreeCtrl.preserveItemXXX fields, Tree_PreserveItems and Tree_ReleaseItems added for managing deleted items.
* New data type TreeItemList and related funcs are used instead of ↵treectrl2006-09-211-6/+38
| | | | | | | | | STATIC_ALLOC for handling lists of items. Removed TreeCtrl.displayInProgress flag. Added TreeCtrl.preserveItemXXX fields, Tree_PreserveItems and Tree_ReleaseItems for managing deleted items. Added IFO_NOTORPHAN flag for rejecting orphans. Various TreeNotify_xxx routines changed to accept TreeItemList args.
* Generalized how the "visible" qualifier in item descriptions is handled, and ↵treectrl2006-09-161-133/+265
| | | | | | | | added a new qualifier "state xxx". The "state" qualifier filters out items which do not match a given list of states. Added [item enabled] command to set/get the "enabled" state of an item. Define TreeItem_GetEnabled. Fix typo in comment.
* Exclude !enabled items from the selection.treectrl2006-09-161-23/+20
| | | | Removed some unused code.