[updates] 14 for 3.2alpha

Dan Ingalls Dan at SqueakLand.org
Fri Nov 30 05:32:38 UTC 2001


Folks -

Herewith a number of bug fixes and enhancements now out on the servers.

Enjoy
	- Dan
-----------------------
4553PolyFixes-ar -- Andreas Raab -- 26 November 2001
Fixes two problems (reported by Kim) when using border styles with polygons:
	* gribblies when changing the border width
	* division by zero for certain border widths

4554JPEG2Fixes-ar -- Andreas Raab -- 27 November 2001
Fixes a problem with JPEG2Plugin - if not present you get #primitiveFailures rather than using the default plugin.
Also optimizes various bits of code, removing (unneeded) argument tests against the receiver (which would have pointlessly prevented renaming JPEGReadWriter2 into something else).
WARNING: The changes (in particular the first fix) require a new plugin to be build."

4555noAudioDir-mir -- Michael Rueger -- 27 November 2001
The 'audio' dir for ChatNotes is now only created if really needed."

4556avoidThumbnailing-sw -- Scott Wallace -- 27 November 2001
Fixes a bug in the mechanism provided for avoiding thumbnailing of certain morphs for parts-bin purposes."

4557haloMenu-sw -- Scott Wallace -- 27 November 2001
An attempt at rationalization of the now hopelessly-unwieldy red-halo menu for morphs.  
* the clustering together of most (all?) of the standard checkbox-bearing items
* the factoring of groups of items into separate methods which return coherent submenus.
* menu items mirroring halo actions are provided generically; this allowed deletion of a number of custom methods that had served only to offer halo-action functionality.
* full access to all the new border styles is now available via menu.
* a new checkbox item governing whether an object should resist removal is added.  When set, user confirmation is required before a dismiss-via-halo is carried out.
* a few minor rewordings tried out (those in love with 'sticky' might scream.)
* a slight regrouping of the world menu, and a fresh factoring of the world's halo menu.
* balloon-help provided for all top-level items in standard world menu.
* the old #addAddHand... protocol is left behind (though retained for backward compatibility with client code) -- it was *never* used for its announced purpose, and thus only added confusion.  All morph-specific additions are now channeled through #addCustomMenuItems...
* if the new #selectiveHalos preference is true, then inappropriate halo handles are no longer offered in a halo.  Thus, for example, if a morph is marked as being resistant to removal, it will not offer pink (dismiss) handle.
NOTE: to regain the former comfort of the old regime, set the selectiveHalos preference back to false.  This update sets it to true so you can immediately feel the difference."
Preferences addPreference: #selectiveHalos categories: #( Halos) default: true balloonHelp: 'When this is set to true, halo handles that are deemed inappropriate are not shown.  Thus, for example, if a morph is marked as resistant to removal, it will not offer a pink ''dismiss''.'.

4558FixPolygonScale-di -- Dan Ingalls -- 28 November 2001
Polygons and related shapes (Curves, Stars) do not need a flex shell to change their size and rotate.  However, the Player logic that controls scaling and rotation expects a flex shell to be used.
This caused walkbacks in the past, and has been worked around recently by no-oping these operations.
This changeSet causes a flex shell to be used when players are involved, but continues the non-flexed control from the halos, owing to its better visual results and consistency with constant border widths when resizing, eg, ellipses and rectangles from the halo.

4559MinesTweaks-di -- Dan Ingalls -- 26 November 2001
Two changes specific to Mines, and one generic to Morphic that greatly speed up creation of the board.

4560noSelectiveHalos-sw -- Scott Wallace -- 29 November 2001
Resets the experimental selectiveHalos preference to false.
Relaxes the check for whether a resize handle is wanted."

4561haloCatOops-sw -- Scott Wallace -- 29 November 2001
Fixes a capitalization error in the category of a recently added preference.  You'll need to get a fresh Preferences Panel to feel the difference.  Change set consists of this preamble only"
Preferences setCategoryList: #(halos) forPreferenceNamed: #selectiveHalos

4562GenieUpdateToV202 -- Nathanael Scharli and Stephan Rudlof -- 15 August 2001
***  Genie v2.02 (Update from Genie 1.0)  ***
This changeset updates Genie to version 2.02. The new features are:
- More than 10 times faster lookup (with VM plugin)
	- New VM plugin (by Stephan Rudlof) and optimized image level code
	- Execute 'CRRecognizer checkPluginVersion' and watch the Transcript output in order
	to check availability/compatibility of the VM plugin.
- Faster graphical feedback (especially imporant for PDAs)
- New dictionary format
	- Old dictionaries are automatically converted to the new format. This convertion includes
	modification of the parameters 'speed' and 'curvature relevance'. This is necessary to retain
	the behavior of the dictionaries with the optimized algorithms.
	- The new format is backwards compatible. This means that new dictionaries can still be used
	with Genie v1.0. However, the parameters 'speed' and 'curveture relevance' are interpreted
	slightly different, which may lead to slower recognition or inaccuracies in Genie v1.0.
- Improved UI (Improved morphs to inspect/modify gesture dictionaries resp. display properties)
- BugFixes
IMPORTANT information about the Genie VM plugin
The Genie VM plugin makes Genie about 10 to 20 times faster. Especially on slower machines (PDA, etc.), it is really worth using it and it makes Genie much more fun!!
Testing the plugin
To see whether the plugin is available and compatible to the image level code execute 'CRRecognizer checkPluginVersion' and watch the Transcript output.
To compare the performance of the primitive to the original performance do the following:
1) Load the gesture dictionary 'http://www.iam.unibe.ch/~schaerli/genie2/GenieTest.ggd' in your image.
2) Execute 'CRStrokeFeature testPrimitivePerformance' and watch the transcript output.
3) Execute 'CRStrokeFeature testOriginalPerformance' and watch the transcript output.
4) Compare the output of steps 2) and 3). The primitive should be about 50 times faster.
If you are not sure whether the primitive works correctly, do the following:
1) Load the gesture dictionary 'http://www.iam.unibe.ch/~schaerli/genie2/GenieTest.ggd' in your image.
2) Execute 'CRStrokeFeature testPrimitive' and watch the transcript output.
Compiling and installing the plugin
The Genie plugin may already be part of your VM (execute 'CRRecognizer checkPluginVersion' to check). If not, you can compile and install it yourself, by doing the following:
1) Generate the C-file by executing 'GeniePlugin translate'. This writes the file 'GeniePlugin.c' into the subdiretory 'GeniePlugin'. 
2) Compile the plugin and make the resulting dynamic library available for the VM. (This step is platform dependent. On Windows, you have to get the VM sources, build the plugin (enter 'build GeniePlugin.dll') and copy the resulting file GeniePlugin.dll into the Squeak VM folder).
--> For more information about Genie, see the class comment of the class AGenieIntroduction."

4563DirectionHandles-ar -- Andreas Raab -- 29 November 2001
Makes the direction handles option a per-morph on/off preference. Only stores its value if the morph goes against the system wide pref."

4564arrowDeltaEtc-sw -- Scott Wallace -- 29 November 2001
Allows the deltas applied via little green arrows on numeric readout tiles to be specified (formerly, the delta had always been one) -- and uses this to make the stepsize of the arrows for #scaleFactor be .1.  Also makes the default float precision of #scaleFactor be such that one decimal place is always shown."

4565FixPolygonHeading-di -- Dan Ingalls -- 29 November 2001
Further to the changes of 'FixPolygonScale', this changeSet (by removing a method ;-) causes heading to be reported correctly for both flexed and unflexed polygons.

4566TextSuccessorFix-di -- Dan Ingalls -- 29 November 2001
Kim Rose reported a while ago that there was a walkback when trying to turn a GeeMail from 1-column book to a 2-column book and Leo Burd recently noted the same problem.  Bob Arning reported a related problem with simple TextMorphs:
	In a new TextMorph choose 'add successor' from its menu
	Try to add text to first TM, get 'Error: Inconsistency in text editor'
This change fixes the simple manifestation of this problem, and hopefully the GeeMail problem as well, though I have not tested it.





More information about the Squeak-dev mailing list