I have published a new beta version of Widgetry to the Cincom Public Repository: Version 0.3 : 30012 Tests
Please note
There are a lot of new tests and so on, but it is still possible that something slipped by me that can't be tested per se, something like a visual slop or blotch, or something I just missed. Your help by reporting anything that is visually bad, or any kind of bug, is sought and deeply appreciated.
What's New:
This version mainly contains the TextEdit optimization. Here are the measured results.
The new TextEdit is about 52x faster than it was in 0.2. That's not a typo, it is in fact, roughly 5200% faster. (The exact numbers lie between 51.66... and 52.02 depending on which parts were tested).
The new TextEdit is now 33% slower than its Wrapper counterpart when inserting text into a WordWrapped TextEdit.
The new TextEdit is now 25% faster than its Wrapper counterpart when inserting text into a NON-WordWrapped TextEdit.
Interestingly, the reason for this difference is Wrapper. Widgetry is basically the same speed (within 1%) for either mode, while Wrapper differs substantially.
The numbers above come from inserting text into a HUGE text (some 1090 lines not wrapped, over 36000 characters) 100 times, at 100 different positions.
This version also contains many class comment updates from Kevin. He has gone in and fixed all the places where my childish mind can't seem to remember the difference between it's and its. He has also added some subclassResponsibility additions as well as a one sadly mis-typed method call fix and the removal of two iVars that were never used.
This version also contains many "Stop The Line" fixes. These include:
- Fixes to the Tree and TreeView to handle roots with no children
- DragDrop to allow dropping into an empty EnumerationPane (ListBox, TreeView and Grid).
- A fix to the Grid where it was creating garbage and not cleaning it up
- A fix to the TabControl where the tab labels were not centered
- A fix to Scrollbars that when clicked in the paging area didn't redraw the background of the Scrollbar
- A "new" browserIcon for Scrollbars that will load into a pre 7.5 image
- A fix to TabControl when you add a Page/Form that has a FractionalFrame
- Changed the default line height in a Grid from 1 to "line grid" for better approximation of preferredExtent before opening a grid.
- Fixed a Numeric InputField (inputFormat: '0') bug
- Fixed tabbing out of a field with a selection still shows the selection
- Fixed InputField in Grid doesn't select all when tabbing in
- Fixed the page ID for tab pages is not taken from the added form
- Fixed Grid columns cannot be resized when #allowColumnReordering is false.
That should do for now!
What's next:
Grid optimization. It's a pig and "flashy."
And So It GoesSames