[UPDATES] 20 more for 2.8alpha
Dan.Ingalls at disney.com
Wed Mar 8 22:58:29 UTC 2000
Herewith a number of bug fixes and enhancements from the last few weeks.
See the summaries below...
1900symbolFix-tkNM -- Ted Kaehler -- 29 February 2000
All image segments, whether local or exported must have the Symbols held by real pointer, not WeakArrays. Checks for this and calls (Symbol useArrayTables)"
1901WelcomeWindowFix -- Dan Ingalls -- 7 March 2000
Bert Freudenberg noted that the edit menu doesn't work in the MVC welcome window.
The postscript to this changeSet fixes the problem.
1902Dependents-sma -- Stefan Matthias Aust -- 29 February 2000
Refactored dependency framework."
1903EvtSystem-sma -- Stefan Matthias Aust -- 29 February 2000
This changeset adds a fast and lightweight event notification framework to Squeak which could eventually replace the existing changed/update mechanism. This system is compatible to Dolphin Smalltalk (and VSE I think) and supports the following methods:
The following methods register a message send (consisting of a selector and a receiver object) which should be performed when anEventSymbol is triggered by the receiver.
when: anEventSymbol send: aSelector to: anObject
when: anEventSymbol send: aSelector to: anObject with: aParameter
when: anEventSymbol send: aSelector to: anObject withArguments: anArray
when: anEventSymbol sendTo: anObject
The first method will unregister all message sends towards the given object. The latter method will remove all registered message sends for any receiving objects.
These methods are typically called by the object which wants to fire an event. The first methods simply evaluates all registered message sends. The other methods additionally pass more arguments. It's the responsibility of the user to make sure that the right number of arguments is passed.
trigger: anEventSymbol with: aParameter
trigger anEventSymbol withArguments: anArray
The method evaluates a block without the receiver triggering any events. This is useful for modifying objects using writing accessor methods which normally would trigger events but where the modification would otherwise lead to an endless recursion.
1904Nitpick-sma -- Stefan Matthias Aust -- 3 March 2000
Andy Valencia noticed a wrong comment in Collection>initialize"
1905FIBUsageFixes-sge -- Steve Elkins -- 13 February 2000
Avoids various difficulties (usually walkbacks) that occur when the user chooses 'cancel' after causing a FillInTheBlank dialog to appear. Some of the changes might fall into a 'user cosmetics' category.
1. BookMorph.goToPage is changed because it relied on the fact that sending #asNumber to an empty string answers 0 and this didn't appear deliberate.
2. DictionaryInspector.addEntry allows a nil key. Left it alone.
3. EnvelopeEditorMorph.chooseFrom:durationItem: allows the user to set duration to 0 because sending #asNumber to an empty string answers 0. Left it alone.
4. MorphicModel.addPartNameLike:withValue: and (MorphicModel class).chooseNewName may have problems. How to test?
5. PasteUpMorph.saveAsWorld may have a problem, but has no senders.
6. ScriptEditorMorph.typeInFrequency appears to rely deliberately on the fact that sending #asNumber to an empty string answers 0.
7. ThreeDSParser.parseStream: may have a problem. How to test?"
1906TimeProfileFixes-dew -- Doug Way -- 4 March 2000
Fixes a couple of parsing bugs with the TimeProfileBrowser. It no longer truncates the first character of each line, and class-side non-super methods now show up properly.
The browser no longer throws an exception when clicking on something other than a method. --sma"
1907BrowseTallyMenu-dew -- Doug Way -- 4 March 2000
Adds a 'start/browse MessageTally' item to the debug... menu. This opens a TimeProfileBrowser on the MessageTally results, rather than a text editor."
1908PrintArrayFix-sma -- Stefan Matthias Aust -- 3 March 2000
Teamwork: Russell Swan noticed a bug, Bert Freudenberg suggested a fix and I implemented it.
Actually, this became a complete pretty printing and refactoring of the plugin. I added a var:type: method which reduced the need to repeat the varName in var:declareC: and always because this is both error-prone and space consuming."
1909CrLfWaring-tpr -- Tim Rowledge, tim at sumeru.stanford.edu -- 27 February 2000
Check that the first few characters of the fected source code matches the first part of the selector. There is a good chance of a mismatch implying that the source file was incorrectly ftp'd or otherwise CR/LF mangled.
I like the idea but I changed and error: into a notifier and rewrote the error text in a more user friendly way. --sma"
1910IntervalCopy-acg -- Andrew C Green -- 1 March 2000
Andrew P Black noticed a bug in Interval>>copy and Andrew provided a fix --sma"
1911Fix1898-sma -- Stefan Matthias Aust -- 3 March 2000
Fixes a problem introduced in #1898 and also do some small refactorings to reduce the number of different ways to initialize a BlockNode."
1912ProgressMorph-mir -- Michael Rueger -- 1 March 2000
A progress indicator. You can provide a top and a sub label indicating the progress (see #label: and #subLabel:). The progress value can either be set using absolute values between 0.0 - 1.0 using #done:, or by specifying the incremental progress with #incrDone:.
I made the sublabel smaller than the top label, removed the Current class var and added some menu commands to the FlashProgressMorph on which this morph is based. --sma"
1913TextMorph-mir -- Michael Rueger -- 3 August 1999
Changes to the textstyle are not always propagated to the internal paragraph. Changing the alignment after setting the textstyle resets the paragraph to its original textstyle.
This fix also introduces methods to specify wrapping with the initialization method and to set explicitly set font and size.
1914TimeSince-mir -- Michael Rueger -- 1 March 2000
Utility methods to find the delta time without the need to check for a rollover every time.
1915bobFreeCell2 -- Bob Arning -- 5 March 2000
Three changes for FreeCell:
- a gradient background for the board to look a bit more interesting
- double-clicking on a card when the free cells are full will search for an empty stack
- auto playing to home is a little smarter"
1916FreeCell3-di -- Dan Ingalls -- 5 March 2000
A couple of simple tweaks:
Removes a number of classes from 'open new morph' choices.
Flashes elapsed time rather than card count when a game has been won.
Tallies FreeCell wins and losses after replays are considered.
Closing the statistics window no longer prevents re-opening it. This used only to work if you used the OK button.
1917DictKeysSortedSafely -- Dan Ingalls -- 8 March 2000
Fixes a recent bug in Dictionary printOn:.
Defines Dictionary>>keysSortedSafely, which is called by both
Also allows final period in brace expressions.
1918ClassComments1 -- Dan Ingalls -- 8 March 2000
A collection (with some minor tweaks) of various class comments that have been submitted recently on the Squeak mail list.
1919ChangeSetUninstall-di -- Dan Ingalls -- 8 March 2000
A hack that has the effect of uninstalling certain simple changeSets.
More information about the Squeak-dev