Marcel Taeumel uploaded a new version of 51Deprecated to project The Trunk:
http://source.squeak.org/trunk/51Deprecated-mt.32.mcz
==================== Summary ====================
Name: 51Deprecated-mt.32
Author: mt
Time: 13 July 2016, 11:57:37.183252 am
UUID: 7be81836-e59d-8945-a4ba-5a43c8e55b62
Ancestors: 51Deprecated-mt.31
Deprecate old drop handler for image streams. There is a new one in #defaultImageHandler. Still unused because we have more flexible file services for that.
=============== Diff against 51Deprecated-mt.31 ===============
Item was added:
+ ----- Method: ExternalDropHandler class>>registerStandardExternalDropHandlers (in category '*51Deprecated') -----
+ registerStandardExternalDropHandlers
+ "ExternalDropHandler registerStandardExternalDropHandlers"
+
+ self registeredHandlers add: (
+ ExternalDropHandler
+ type: 'image/'
+ extension: nil
+ action: [:stream :pasteUp :event |
+ pasteUp addMorph: (World drawingClass withForm: (Form fromBinaryStream: stream binary)) centeredNear: event position])!
Marcel Taeumel uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-mt.837.mcz
==================== Summary ====================
Name: System-mt.837
Author: mt
Time: 13 July 2016, 11:54:51.034252 am
UUID: 2f906c4c-c55b-614b-af91-73b8444b0be0
Ancestors: System-eem.836
When dropping image files into Squeak, use the file services instead of a single drop handler. Then the user can, for example, directly set the image as project background instead of creating a SketchMorph with it.
=============== Diff against System-eem.836 ===============
Item was changed:
----- Method: ExternalDropHandler class>>cleanUp (in category 'class initialization') -----
cleanUp
"Reset and reinstall the drop handlers"
+ self initialize.!
- self resetRegisteredHandlers.
- self registerStandardExternalDropHandlers.!
Item was changed:
----- Method: ExternalDropHandler class>>initialize (in category 'class initialization') -----
initialize
"ExternalDropHandler initialize"
self resetRegisteredHandlers.
self
+ "registerHandler: self defaultImageHandler;" "we have file services for images"
- registerHandler: self defaultImageHandler;
registerHandler: self defaultGZipHandler;
registerHandler: self defaultProjectHandler!
Item was removed:
- ----- Method: ExternalDropHandler class>>registerStandardExternalDropHandlers (in category 'class initialization') -----
- registerStandardExternalDropHandlers
- "ExternalDropHandler registerStandardExternalDropHandlers"
-
- self registeredHandlers add: (
- ExternalDropHandler
- type: 'image/'
- extension: nil
- action: [:stream :pasteUp :event |
- pasteUp addMorph: (World drawingClass withForm: (Form fromBinaryStream: stream binary)) centeredNear: event position])!
Marcel Taeumel uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-mt.1190.mcz
==================== Summary ====================
Name: Morphic-mt.1190
Author: mt
Time: 13 July 2016, 11:52:56.625252 am
UUID: 9858df29-ea18-0b49-bd51-4d23707bf2f7
Ancestors: Morphic-eem.1189
Propagate the current project background for new projects created from within the current one.
=============== Diff against Morphic-eem.1189 ===============
Item was changed:
----- Method: MorphicProject>>initialize (in category 'initialize') -----
initialize
"Initialize a new Morphic Project"
super initialize.
world := PasteUpMorph newWorldForProject: self.
+ world fillStyle: (Project current isMorphic ifTrue: [Project current world fillStyle] ifFalse: [self class defaultFill]).
- world color: self class defaultFill.
Locale switchToID: CurrentProject localeID.
Preferences useVectorVocabulary ifTrue: [world installVectorVocabulary]!
Marcel Taeumel uploaded a new version of Graphics to project The Trunk:
http://source.squeak.org/trunk/Graphics-mt.352.mcz
==================== Summary ====================
Name: Graphics-mt.352
Author: mt
Time: 13 July 2016, 11:49:58.442252 am
UUID: 0095e815-99ca-bf48-ab99-3770d376d079
Ancestors: Graphics-mt.351
Show the current ressource imports after adding another one via file service.
=============== Diff against Graphics-mt.351 ===============
Item was added:
+ ----- Method: Form class>>importImageAndShowImports: (in category 'file list services') -----
+ importImageAndShowImports: fullName
+
+ self importImage: fullName.
+ Imports default explore.!
Item was changed:
----- Method: Form class>>serviceImageImports (in category 'file list services') -----
serviceImageImports
"Answer a service for reading a graphic into ImageImports"
^ SimpleServiceEntry
provider: self
label: 'read graphic into ImageImports'
+ selector: #importImageAndShowImports:
- selector: #importImage:
description: 'Load a graphic, placing it in the ImageImports repository.'
buttonLabel: 'import'!
Tobias Pape uploaded a new version of EToys to project The Trunk:
http://source.squeak.org/trunk/EToys-topa.138.mcz
==================== Summary ====================
Name: EToys-topa.138
Author: topa
Time: 12 July 2016, 12:05:41.656363 am
UUID: 20c4c7a2-acb3-4a37-a66c-15e2f17fa329
Ancestors: EToys-pre.137
Fix spurious point in literal array
=============== Diff against EToys-pre.137 ===============
Item was changed:
----- Method: Morph>>abstractAModel (in category '*Etoys-card in a stack') -----
abstractAModel
"Find data-containing fields in me. Make a new class, whose instance variables are named for my fields, and whose values are the values I am showing. Use a CardPlayer for now. Force the user to name the fields. Make slots for text, Number Watchers, SketchMorphs, and ImageMorphs."
| unnamed ans player twoListsOfMorphs holdsSepData docks oldPlayer instVarNames |
(oldPlayer := self player) ifNotNil:
[oldPlayer belongsToUniClass
ifTrue:
["Player"
oldPlayer class instVarNames notEmpty
ifTrue:
[self
inform: 'I already have a regular Player, so I can''t have a CardPlayer'.
^true]]].
twoListsOfMorphs := StackMorph discoverSlots: self.
holdsSepData := twoListsOfMorphs first.
instVarNames := ''.
holdsSepData do:
[:ea | | iVarName |
iVarName := Scanner wellFormedInstanceVariableNameFrom: ea knownName.
iVarName = ea knownName ifFalse: [ea name: iVarName].
instVarNames := instVarNames , iVarName , ' '].
unnamed := twoListsOfMorphs second. "have default names"
instVarNames isEmpty
ifTrue:
[self
inform: 'No named fields were found.
Please get a halo on each field and give it a name.
Labels or non-data fields should be named "shared xxx".'.
^false].
unnamed notEmpty
ifTrue:
[ans := (UIManager default
chooseFrom: #(
+ 'All other fields are non-data fields'
+ 'Stop. Let me give a name to some more fields'
- 'All other fields are non-data fields'.
- 'Stop. Let me give a name to some more fields'.
) title: 'Data fields are ' , instVarNames printString
, ('\Some fields are not named. Are they labels or non-data fields?'
, '\Please get a halo on each data field and give it a name.') withCRs) = 1.
ans ifFalse: [^false]].
unnamed
withIndexDo: [:mm :ind | mm setName: 'shared label ' , ind printString].
"Make a Player with instVarNames. Make me be the costume"
player := CardPlayer instanceOfUniqueClassWithInstVarString: instVarNames
andClassInstVarString: ''.
self player: player.
player costume: self.
"Fill in the instance values. Make docks first."
docks := OrderedCollection new.
holdsSepData do:
[:morph |
morph setProperty: #shared toValue: true. "in case it is deeply embedded"
morph setProperty: #holdsSeparateDataForEachInstance toValue: true.
player class compileInstVarAccessorsFor: morph knownName.
morph isSyntaxMorph ifTrue: [morph setTarget: player]. "hookup the UpdatingString!!"
docks addAll: morph variableDocks].
player class newVariableDocks: docks.
docks do: [:dd | dd storeMorphDataInInstance: player].
"oldPlayer class mdict do: [:assoc | move to player]. move methods to new class?"
"oldPlayer become: player."
^true "success"!
Tobias Pape uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-topa.1033.mcz
==================== Summary ====================
Name: Kernel-topa.1033
Author: topa
Time: 11 July 2016, 10:17:45.427905 am
UUID: 5d65d061-4973-4968-a0a2-533b9dc334ef
Ancestors: Kernel-eem.1032
Collect perform with 5 args.
=============== Diff against Kernel-eem.1032 ===============
Item was added:
+ ----- Method: Object>>perform:with:with:with:with:with: (in category 'message handling') -----
+ perform: aSymbol with: firstObject with: secondObject with: thirdObject with: fourthObject with: fifthObject
+ "Send the selector, aSymbol, to the receiver with the given arguments.
+ Fail if the number of arguments expected by the selector is not five.
+ Primitive. Optional. See Object documentation whatIsAPrimitive."
+
+ <primitive: 83>
+ ^ self perform: aSymbol
+ withArguments: (Array with: firstObject with: secondObject with: thirdObject with: fourthObject with: fifthObject)!
Tobias Pape uploaded a new version of CollectionsTests to project The Trunk:
http://source.squeak.org/trunk/CollectionsTests-topa.266.mcz
==================== Summary ====================
Name: CollectionsTests-topa.266
Author: topa
Time: 10 July 2016, 9:15:50.348455 pm
UUID: 802d5712-f7aa-488e-9af5-dccaf7a3f7c8
Ancestors: CollectionsTests-topa.265
Fix class comment
=============== Diff against CollectionsTests-topa.265 ===============
Item was changed:
TestCase subclass: #Ascii85ConverterTest
instanceVariableNames: 'decoded encoded'
classVariableNames: ''
poolDictionaries: ''
category: 'CollectionsTests-Streams'!
+ !Ascii85ConverterTest commentStamp: 'topa 7/10/2016 21:04' prior: 0!
+ This is the unit test for the class Ascii85Converter.!
- !Ascii85ConverterTest commentStamp: '<historical>' prior: 0!
- This is the unit test for the class Base64MimeConverter. Unit tests are a good way to exercise the functionality of your system in a repeatable and automatic manner. They are therefore recommended if you plan to release anything. For more information, see:
- - http://www.c2.com/cgi/wiki?UnitTest
- - http://minnow.cc.gatech.edu/squeak/1547
- - the sunit class category!