[squeak-dev] Daily Commit Log

commits at source.squeak.org commits at source.squeak.org
Wed Aug 3 23:55:05 UTC 2011

Changes to Trunk (http://source.squeak.org/trunk.html) in the last 24 hours:


Name: Tools-fbs.372
Ancestors: Tools-bf.371

When you rename a system category, you should have the newly-named system category selected after the rename.



Name: ST80-nice.131
Ancestors: ST80-cmm.130

cosmetic: use self normalCharacter: rather than self perform: #normalCharacter:



Name: Morphic-nice.558
Ancestors: Morphic-ul.557

ParagraphEditor is an old st-80 class implemented for a polling UI via the use of sensor inst. var..
TextMorphEditor is a glue that enable using a ParagraphEditor in an event driven morphic world.
There was a hack for feeding a sensor fake with morphic events.
This hack was located in TextMorph.
When 100% morphic Cuis-designed TextEditor was introduced in Squeak-trunk, it was made sensor-dependent instead of sensor-less and purely event driven. This should not be so.

This version moves the hack where in belongs to, in TextMorphEditor>>fakeSensorWithEvent:
It also temporarily duplicates it in TextEditor, in the interim before we remove it's sensor inst. var..

NOTE 1: the hack did also previously apply to #mouseUp: #mouseDown: #mouseUp: events.
It does not anymore because I saw no use to it.
If I'm wrong, correct it by sending (self fakeSensorWithEvent: anEvent) in the TextMorphEditor implementation of these messages.

NOTE2: the change does not change the behaviour of MVC projects. Keyboard typing still "works" (cough...)



Name: ST80-nice.132
Ancestors: ST80-nice.131

Let old Paragraph respond to #string like NewParagraph.



Name: Morphic-nice.559
Ancestors: Morphic-nice.558

Let TextEditor be event driven and let us ban sensor usage from it.


I tried to apply Cuis 3.3 methods where possible and kept Squeakism where necessary.

There are unused methods that crept into the Editor classes, but we'll see later about further convergence with Cuis or not...

Like Cuis, I renamed ivar beginTypeInBlock -> beginTypeInIndex because this is an Integer index, not a CharacterBlock.
Code is already long enough to avoid such traps.
I also removed sensor and the structure of the TextEditor did change a lot. So it's hard to say if code is reloadable... The inbox will be a test place.

Like Cuis I removed the typeAheadStream which was useless already since we recompose after each key stroke.
Instead of such stream, the keyboard event is passed as argument to editing methods.

Some small divergences:

I did not define TextEditor>>#processKeyboardEvent: but TextEditor>>#keyStroke:
My rationale was that mouseUp: mouseDown: and mouseMove: were not renamed, so why renaming keyStroke: ?
On the other hand, it would be easier to follow code with different selectors, and maybe also good for a VM to reduce unecessary polymorphism.

I did not define TextEditor>>#dispathOn: but TextEditor>>#dispatchOnKeyboardEvent:
I felt this was more clear... less unecessary polymorphism. My mood was changing ;)

These above two behaviours have not been unified (Cuis only deal with 256 characters and can offer a dispatch table for all characters, we can't).

Unlike Cuis I did not implement multi selection (?).
I also kept the oldInterval and otherInterval ivars because I don't know if I can touch them.
I also kept selectionShowing because I'm totally unaware of these details.

I did not yet imported the SimpleEditor.
Thanks to Juan for leading the process, and cross the fingers to see if update is possible or require intermediate stages.



Name: Morphic-nice.560
Ancestors: Morphic-nice.559

Correct forwardDelete: that I just broke.
Note that (cmd+z) fail to undo this action. I think it was previously the case before I changed anything.



Name: Morphic-nice.561
Ancestors: Morphic-nice.560

Always try to logDebuggerStackToFile first if Preferences is enabled, and discard Errors occuring in this phase.

That can help debugging the emergency situations when the debugger fail to open itself.



Name: ST80-nice.133
Ancestors: ST80-nice.132

Always try to logDebuggerStackToFile first if Preferences is enabled, and discard Errors occuring in this phase.

That can help debugging the emergency situations when the debugger fail to open itself. ESPECIALLY IN MVC CASE...



Name: Morphic-nice.562
Ancestors: Morphic-nice.561

Restore correct behaviour of selecting between delimiters when clicking twice.



Name: Morphic-nice.563
Ancestors: Morphic-nice.562

Also select between vertical bars when clicking twice.


More information about the Squeak-dev mailing list