summaryrefslogtreecommitdiffstats
path: root/generic
Commit message (Collapse)AuthorAgeFilesLines
...
* Added ElementType.onScreenProc which is called when an item becomes visible ↵treectrl2005-07-051-10/+27
| | | | | | on screen and when it is no longer visible on screen. OnScreenProcWindow is used to hide Tk windows in "window" elements when an item is no longer on screen.
* Added ElementType.onScreenProc which is called when an item becomes visible ↵treectrl2005-07-051-1/+5
| | | | on screen and when it is no longer visible on screen.
* New option -itemwidth, -itemwidthequal and -itemwidthmultiple to replace the ↵treectrl2005-07-052-7/+29
| | | | column options -stepwidth and -widthhack.
* Cache the size of the expand/collapse button under XP for a massive speedup ↵treectrl2005-06-301-1/+20
| | | | of item layout.
* UpdateDInfoForRange: Items were not being redisplayed properly if they moved ↵treectrl2005-06-291-6/+11
| | | | to a different-sized range.
* Fixed possible performance problem with "selection clear" (hash tables get ↵treectrl2005-06-291-1/+12
| | | | bigger, but they never get smaller. It can take a while to iterate over all those empty buckets).
* More Invalidate/FreeItemDInfo fixes.treectrl2005-06-291-1/+58
| | | | Fixed a massive performance hit with "item delete all" when there were many orphan items.
* Removed ElementArgs.display.pad and ElementArgs.display.squeeze which were ↵treectrl2005-06-202-8/+5
| | | | unused.
* Style_DoLayoutH: Allow column justification to occur when a -detach element ↵treectrl2005-06-201-86/+77
| | | | | | | | is larger than the non-union, non-detach elements. Previously justification would only occur if the available space was greater than that needed by the style. Style_DoLayoutH: Allow column justification to occur when elements expand horizontally. This applies when -expand and -iexpand do not specify w or e, but -iexpand does specify x, and the -maxwidth is not {}. Basically, if there is some space left over after expansion then justification will occur. Style_DoLayoutH/V: The internal padding is added to the display area of -union elements, and the internal padding is set to zero. This works in conjunction with the changes in TreeStyle_Draw and TreeStyle_UpdateWindowPositions. TreeStyle_Draw/TreeStyle_UpdateWindowPositions: Fixed bug where -union elements were not displayed if the elements they surrounded had zero height or width. Also removed ElementArgs.display.pad and ElementArgs.display.squeeze which were unused.
* Fixed unix compile issue. [BUG 1222277]treectrl2005-06-181-8/+23
| | | | Fixed per-state-info crash [BUG 1222419]
* Removed unused variable.treectrl2005-06-151-1/+5
|
* Allow expansion of non-detach non-union elements if a -detach element is ↵treectrl2005-06-151-254/+200
| | | | | | larger than them all. Previously expansion would only occur if the available space was greater than the needed space of the style. Alphabetized style layout options, and moved option-to-Tcl_Obj code to a new function.
* Removed gobs of conditional compilation code.treectrl2005-06-143-456/+9
|
* Keep a free list of TextLayout's.treectrl2005-06-131-7/+86
| | | | | Track the total width of a text layout to work around an issue in the "text" element type. AllocHax_Alloc doubles the size of allocated blocks from 16 up to 1024, instead of always using a fixed size of 128.
* Style_DoExpandH rearranged to allocate space to the right padding before the ↵treectrl2005-06-131-206/+405
| | | | | | | | | | | | | left. Style_DoExpandV rewritten to use the same algorithm as Style_DoExpandH. Style_DoLayoutH: properly calculate Layout.useWidth for -union layout. Style_DoLayoutV: expand elements vertically using same algorithm as Style_DoLayoutH. Changed Style_DoLayout to use the new ElementType.heightProc. Also consider the -minheight, -height, and -maxheight style layout options. Style_NeededSize: consider min/max width/height style layout options. ElementType.layoutProc renamed to ElementType.neededProc. TreeStyle_NeededHeight: basically the same, but doesn't return Style.minHeight since that didn't take into account text wrapping. TreeStyle_Draw/TreeStyle_UpdateWindowPositions/TreeStyle_GetElemRects: the -ipadx and -ipady padding is no longer added to the display area of an element (although there is no change wrt -union layout). StyleLayoutCmd: fixed bug where -iexpand xy were not cleared.
* Renamed LayoutProcXXX to NeededProcXXX for all element types.treectrl2005-06-131-115/+206
| | | | | | | | | Added heightProc to all element types (NULL for all except "text"). Moved some statements in TextUpdateLayout to return earlier if possible. Also handle new args fixedWidth and maxWidth which were added to support the -width and -maxwidth style layout options. TextRedoLayoutIfNeeded replaces a bit of code in the old LayoutProcText. Call TextRedoLayoutIfNeeded within DisplayProcText. Previously we knew TextUpdateLayout was called by LayoutProc, but that may no longer be the case if the style layout -width and -height options are set. The old LayoutProc (renamed to NeededProc) was changed to always update the text layout. Also handle the -width and -maxwidth style layout options. Added HeightProcText to figure out if the height of the text changed due to lines wrapping. LayoutProc used to be overloaded to perform this calculation.
* Renamed ElementType.layoutProc to ElementType.neededProc, since it gets the ↵treectrl2005-06-131-4/+12
| | | | | | | needed size of the element. Renamed ElementArgs.layout to ElementArgs.needed and added some fields to handle the new -width/-maxwidth style layout options. Added ElementType.heightProc for the "text" element which can expand vertically when lines wrap. Previously layoutProc was called for this in addition to getting the needed size.
* Added -textlayout debug option.treectrl2005-06-131-1/+4
|
* Added -textlayout debug option.treectrl2005-06-131-1/+3
| | | | Declared TextLayout_TotalWidth.
* New style layout option "-sticky" controls how an element is ↵treectrl2005-06-101-281/+384
| | | | | | | stretched/positioned within its parcel of space. Extended -iexpand option to accept x and y chars, to allow the parcel of space to be expanded. Previously only the -ipad values were stretched by -iexpand. New style layout options -maxwidth and -maxheight.
* Changes to support the new style layout option "-sticky".treectrl2005-06-101-1/+11
|
* Added -draw option to the new "window" element type.treectrl2005-06-101-93/+289
| | | | Changes to support the new style layout option "-sticky".
* Aesthetic changes.treectrl2005-06-101-25/+15
|
* Fix Tree_ItemBbox to ensure tree->columnCountVis is up-to-date.treectrl2005-06-081-1/+4
|
* Rewrote Style_DoExpandH and Style_DoExpandV to handle -expand and -iexpand ↵treectrl2005-06-081-6/+237
| | | | | | at the same time. Previously -expand was ignored if -iexpand was specified. "style layout $S $E -detach" and "style layout $S $E -indent" return "yes" or "no" instead of "1" or "0" to agree with "style layout $S $E".
* New command "item range" deprecates old command "range".treectrl2005-06-081-5/+38
|
* Binding scripts on a Tk window are automatically deleted if the window is ↵treectrl2005-06-081-1/+138
| | | | destroyed.
* Fixed panic attacks in Style_DoLayout caused by LAYOUTHAX changes (caller ↵treectrl2005-06-061-84/+54
| | | | | | was not setting drawArgs->width properly). Properly save/restore config options in "style layout" command upon error.
* LAYOUTHAX code accepted, removed conditional compilation.treectrl2005-06-064-221/+35
|
* Added -minwidth, -minheight, -width, -height style layout options.treectrl2005-06-061-33/+291
|
* Fixed y-position bug in Style_DoLayoutV.treectrl2005-06-041-135/+107
| | | | | | | | | Fixed bug calculating needed height of style with -union elements. Not sure how Style_DoLayoutNeededV ever worked correctly. Combined Style_DoLayout and Style_DoLayout2 since they were 99% the same. Changed Style_NeededSize to return whether the style has any -squeeze elements. This is used to avoid an unnecessary call when determining the minimum style size. Optimize TreeStyle_NeededWidth/Height by using cached values. NEEDED_HAX code present simply to test that I am allowed to use those cached values. Optimize TreeStyle_UseHeight by using cached values. Style.layoutWidth already existed for this purpose but wasn't set properly. Changed TreeStyle_UndefineState to always invalidate the layout of every element/column/item.
* Use ALLOC_HAX for allocating/freeing per-state data.treectrl2005-06-041-2/+25
| | | | PerStateInfo_Undefine changed to return indication of whether anything was modified.
* Renamed TreeItem_Undefine to TreeItem_UndefineState.treectrl2005-06-041-2/+2
|
* Increased size of static storage in TreeNotify_Selection.treectrl2005-06-041-2/+2
|
* PerStateInfo_Undefine changed to return indication of whether anything was ↵treectrl2005-06-041-4/+4
| | | | modified.
* ElementType.undefProc changed to return indication of whether anything was ↵treectrl2005-06-041-3/+3
| | | | modified. Ditto for PerStateOption_Undefine.
* Delete the code which was replaced by macros in the previous revision.treectrl2005-06-041-671/+305
| | | | | Revert custom option code of revision 1.25. Custom options can't have an internal form > Tk_SavedOption.internalForm, which is a double. ElementType.undefProc changed to return indication of whether anything was modified.
* Free per-state options when column deleted.treectrl2005-06-041-1/+4
|
* Free button/bitmap per-state options when widget deleted.treectrl2005-06-041-5/+11
| | | | | Make sure "state undefine" affects button/bitmap per-state options. Fix bug 1210738: incorrect number of chars passed to Tk_ComputeTextLayout (was using number of bytes).
* Replaced big chunks of per-state code with macros.treectrl2005-06-031-8/+148
|
* Added a custom option to handle all the per-state options.treectrl2005-06-031-270/+212
|
* Removed unnecessary variable init and casting.treectrl2005-06-031-5/+3
|
* Fixed crash with "item complex" when a column doesn't exist.treectrl2005-06-031-6/+19
|
* Added column description "end", equivalent to "last".treectrl2005-06-021-3/+4
|
* Added item description "end", equivalent to "last".treectrl2005-06-021-4/+6
|
* Added -destroy option to "window" element type.treectrl2005-06-021-1/+15
|
* Fixed bug with calculation of needed size of a style.treectrl2005-06-021-7/+41
| | | | | | Fixed drawing bug caused by LAYOUT_HAX changes. Add some calls to Tree_FreeItemDInfo. Replace some calls to Tree_InvalidateItemDInfo with Tree_FreeItemDInfo.
* Added boolean PerStateType.treectrl2005-06-021-1/+50
|
* Added "-draw" option to every element type (except window).treectrl2005-06-021-16/+258
|
* Add some calls to TreeItemColumn_InvalidateSize. FIXME: ↵treectrl2005-06-021-5/+28
| | | | | | | | Column.neededWidth/Height aren't actually used. Add some calls to Tree_FreeItemDInfo. Replace some calls to Tree_InvalidateItemDInfo with Tree_FreeItemDInfo. Invalidate should only be used when the size hasn't changed. Fix "item style map" and "item style set" not recalculating ranges.