Eliot Miranda uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-eem.1045.mcz
==================== Summary ====================
Name: Kernel-eem.1045
Author: eem
Time: 12 October 2016, 12:10:33.006651 pm
UUID: d91d38c6-bb5b-4fcd-a28b-1bdbc867a33e
Ancestors: Kernel-nice.1044
Add support for creating DoubleByte (isShorts) and DoubleWord (isLongs) variable classes.
=============== Diff against Kernel-nice.1044 ===============
Item was changed:
----- Method: Behavior>>isBytes (in category 'testing') -----
isBytes
+ "Answer whether the receiver's instances have indexed 8-bit integer instance variables.
- "Answer whether the receiver has 8-bit instance variables.
Above Cog Spur the class format is
<5 bits inst spec><16 bits inst size>
where the 5-bit inst spec is
0 = 0 sized objects (UndefinedObject True False et al)
1 = non-indexable objects with inst vars (Point et al)
2 = indexable objects with no inst vars (Array et al)
3 = indexable objects with inst vars (MethodContext AdditionalMethodState et al)
4 = weak indexable objects with inst vars (WeakArray et al)
5 = weak non-indexable objects with inst vars (ephemerons) (Ephemeron)
6 = unused
7 = immediates (SmallInteger, Character)
8 = unused
9 = 64-bit indexable
10-11 = 32-bit indexable (Bitmap)
12-15 = 16-bit indexable
16-23 = 8-bit indexable
24-31 = compiled methods (CompiledMethod)"
^self instSpec >= 16!
Item was added:
+ ----- Method: Behavior>>isLongs (in category 'testing') -----
+ isLongs
+ "Answer whether the receiver's instances have indexed 64-bit integer instance variables.
+ Above Cog Spur the class format is
+ <5 bits inst spec><16 bits inst size>
+ where the 5-bit inst spec is
+ 0 = 0 sized objects (UndefinedObject True False et al)
+ 1 = non-indexable objects with inst vars (Point et al)
+ 2 = indexable objects with no inst vars (Array et al)
+ 3 = indexable objects with inst vars (MethodContext AdditionalMethodState et al)
+ 4 = weak indexable objects with inst vars (WeakArray et al)
+ 5 = weak non-indexable objects with inst vars (ephemerons) (Ephemeron)
+ 6 = unused
+ 7 = immediates (SmallInteger, Character)
+ 8 = unused
+ 9 = 64-bit indexable
+ 10-11 = 32-bit indexable (Bitmap)
+ 12-15 = 16-bit indexable
+ 16-23 = 8-bit indexable
+ 24-31 = compiled methods (CompiledMethod)"
+ ^self instSpec = 9!
Item was added:
+ ----- Method: Behavior>>isShorts (in category 'testing') -----
+ isShorts
+ "Answer whether the receiver's instances have indexed 16-bit integer instance variables.
+ Above Cog Spur the class format is
+ <5 bits inst spec><16 bits inst size>
+ where the 5-bit inst spec is
+ 0 = 0 sized objects (UndefinedObject True False et al)
+ 1 = non-indexable objects with inst vars (Point et al)
+ 2 = indexable objects with no inst vars (Array et al)
+ 3 = indexable objects with inst vars (MethodContext AdditionalMethodState et al)
+ 4 = weak indexable objects with inst vars (WeakArray et al)
+ 5 = weak non-indexable objects with inst vars (ephemerons) (Ephemeron)
+ 6 = unused
+ 7 = immediates (SmallInteger, Character)
+ 8 = unused
+ 9 = 64-bit indexable
+ 10-11 = 32-bit indexable (Bitmap)
+ 12-15 = 16-bit indexable
+ 16-23 = 8-bit indexable
+ 24-31 = compiled methods (CompiledMethod)"
+ ^self instSpec = 12!
Item was changed:
----- Method: Behavior>>isWords (in category 'testing') -----
isWords
+ "Answer whether the receiver's instances have indexed 32-bit integer instance variables.
+ Above Cog Spur the class format is
+ <5 bits inst spec><16 bits inst size>
+ where the 5-bit inst spec is
+ 0 = 0 sized objects (UndefinedObject True False et al)
+ 1 = non-indexable objects with inst vars (Point et al)
+ 2 = indexable objects with no inst vars (Array et al)
+ 3 = indexable objects with inst vars (MethodContext AdditionalMethodState et al)
+ 4 = weak indexable objects with inst vars (WeakArray et al)
+ 5 = weak non-indexable objects with inst vars (ephemerons) (Ephemeron)
+ 6 = unused
+ 7 = immediates (SmallInteger, Character)
+ 8 = unused
+ 9 = 64-bit indexable
+ 10-11 = 32-bit indexable (Bitmap)
+ 12-15 = 16-bit indexable
+ 16-23 = 8-bit indexable
+ 24-31 = compiled methods (CompiledMethod)"
+ ^self instSpec = 10!
- "Answer true if the receiver is made of 32-bit instance variables."
-
- ^self isBytes not!
Item was changed:
----- Method: Class>>variableByteSubclass:instanceVariableNames:classVariableNames:poolDictionaries:category: (in category 'subclass creation') -----
variableByteSubclass: t instanceVariableNames: f
classVariableNames: d poolDictionaries: s category: cat
"This is the standard initialization message for creating a new class as a
subclass of an existing class (the receiver) in which the subclass is to
+ have indexable 8-bit byte-sized nonpointer variables."
+ ^ClassBuilder new
- have indexable byte-sized nonpointer variables."
- ^(ClassBuilder new)
superclass: self
variableByteSubclass: t
instanceVariableNames: f
classVariableNames: d
poolDictionaries: s
+ category: cat!
- category: cat
- !
Item was changed:
----- Method: Class>>variableByteSubclass:uses:instanceVariableNames:classVariableNames:poolDictionaries:category: (in category 'subclass creation') -----
variableByteSubclass: t uses: aTraitCompositionOrArray instanceVariableNames: f
classVariableNames: d poolDictionaries: s category: cat
"This is the standard initialization message for creating a new class as a
subclass of an existing class (the receiver) in which the subclass is to
+ have indexable 8-bit byte-sized nonpointer variables."
- have indexable byte-sized nonpointer variables."
| newClass copyOfOldClass |
copyOfOldClass := self copy.
newClass := self
variableByteSubclass: t
instanceVariableNames: f
classVariableNames: d
poolDictionaries: s
category: cat.
newClass setTraitComposition: aTraitCompositionOrArray asTraitComposition.
SystemChangeNotifier uniqueInstance
classDefinitionChangedFrom: copyOfOldClass to: newClass.
+ ^newClass!
- ^newClass
- !
Item was added:
+ ----- Method: Class>>variableDoubleByteSubclass:instanceVariableNames:classVariableNames:poolDictionaries:category: (in category 'subclass creation') -----
+ variableDoubleByteSubclass: t instanceVariableNames: f
+ classVariableNames: d poolDictionaries: s category: cat
+ "This is the standard initialization message for creating a new class as a
+ subclass of an existing class (the receiver) in which the subclass is to
+ have indexable 16-bit double byte-sized nonpointer variables."
+ ^ClassBuilder new
+ superclass: self
+ variableDoubleByteSubclass: t
+ instanceVariableNames: f
+ classVariableNames: d
+ poolDictionaries: s
+ category: cat!
Item was added:
+ ----- Method: Class>>variableDoubleByteSubclass:uses:instanceVariableNames:classVariableNames:poolDictionaries:category: (in category 'subclass creation') -----
+ variableDoubleByteSubclass: t uses: aTraitCompositionOrArray instanceVariableNames: f
+ classVariableNames: d poolDictionaries: s category: cat
+ "This is the standard initialization message for creating a new class as a
+ subclass of an existing class (the receiver) in which the subclass is to
+ have indexable 16-bit double byte-sized nonpointer variables."
+
+ | newClass copyOfOldClass |
+ copyOfOldClass := self copy.
+ newClass := self
+ variableDoubleByteSubclass: t
+ instanceVariableNames: f
+ classVariableNames: d
+ poolDictionaries: s
+ category: cat.
+
+ newClass setTraitComposition: aTraitCompositionOrArray asTraitComposition.
+ SystemChangeNotifier uniqueInstance
+ classDefinitionChangedFrom: copyOfOldClass to: newClass.
+ ^newClass!
Item was added:
+ ----- Method: Class>>variableDoubleWordSubclass:instanceVariableNames:classVariableNames:poolDictionaries:category: (in category 'subclass creation') -----
+ variableDoubleWordSubclass: t instanceVariableNames: f
+ classVariableNames: d poolDictionaries: s category: cat
+ "This is the standard initialization message for creating a new class as a
+ subclass of an existing class (the receiver) in which the subclass is to
+ have indexable 64-bit word-sized nonpointer variables."
+ ^ClassBuilder new
+ superclass: self
+ variableDoubleWordSubclass: t
+ instanceVariableNames: f
+ classVariableNames: d
+ poolDictionaries: s
+ category: cat!
Item was added:
+ ----- Method: Class>>variableDoubleWordSubclass:uses:instanceVariableNames:classVariableNames:poolDictionaries:category: (in category 'subclass creation') -----
+ variableDoubleWordSubclass: t uses: aTraitCompositionOrArray instanceVariableNames: f
+ classVariableNames: d poolDictionaries: s category: cat
+ "This is the standard initialization message for creating a new class as a
+ subclass of an existing class (the receiver) in which the subclass is to
+ have indexable 64-bit word-sized nonpointer variables."
+
+ | newClass copyOfOldClass |
+ copyOfOldClass := self copy.
+ newClass := self
+ variableDoubleWordSubclass: t
+ instanceVariableNames: f
+ classVariableNames: d
+ poolDictionaries: s
+ category: cat.
+
+ newClass setTraitComposition: aTraitCompositionOrArray asTraitComposition.
+ SystemChangeNotifier uniqueInstance
+ classDefinitionChangedFrom: copyOfOldClass to: newClass.
+ ^newClass!
Item was changed:
----- Method: Class>>variableWordSubclass:instanceVariableNames:classVariableNames:poolDictionaries:category: (in category 'subclass creation') -----
variableWordSubclass: t instanceVariableNames: f
classVariableNames: d poolDictionaries: s category: cat
"This is the standard initialization message for creating a new class as a
subclass of an existing class (the receiver) in which the subclass is to
+ have indexable 32-bit word-sized nonpointer variables."
+ ^ClassBuilder new
- have indexable word-sized nonpointer variables."
- ^(ClassBuilder new)
superclass: self
variableWordSubclass: t
instanceVariableNames: f
classVariableNames: d
poolDictionaries: s
+ category: cat!
- category: cat
- !
Item was changed:
----- Method: Class>>variableWordSubclass:uses:instanceVariableNames:classVariableNames:poolDictionaries:category: (in category 'subclass creation') -----
variableWordSubclass: t uses: aTraitCompositionOrArray instanceVariableNames: f
classVariableNames: d poolDictionaries: s category: cat
"This is the standard initialization message for creating a new class as a
subclass of an existing class (the receiver) in which the subclass is to
+ have indexable 32-bit word-sized nonpointer variables."
- have indexable word-sized nonpointer variables."
| newClass copyOfOldClass |
copyOfOldClass := self copy.
newClass := self
variableWordSubclass: t
instanceVariableNames: f
classVariableNames: d
poolDictionaries: s
category: cat.
newClass setTraitComposition: aTraitCompositionOrArray asTraitComposition.
SystemChangeNotifier uniqueInstance
classDefinitionChangedFrom: copyOfOldClass to: newClass.
+ ^newClass !
- ^newClass
- !
Item was changed:
----- Method: ClassBuilder>>superclass:variableByteSubclass:instanceVariableNames:classVariableNames:poolDictionaries:category: (in category 'public') -----
superclass: aClass
+ variableByteSubclass: t instanceVariableNames: f
- variableByteSubclass: t instanceVariableNames: f
classVariableNames: d poolDictionaries: s category: cat
+ "This is the standard initialization message for creating a new class as a subclass of an
+ existing class in which the subclass is to have indexable 8-bit byte-sized nonpointer variables."
- "This is the standard initialization message for creating a new class as a
- subclass of an existing class in which the subclass is to
- have indexable byte-sized nonpointer variables."
| oldClassOrNil actualType env |
+ aClass instSize > 0
- (aClass instSize > 0)
ifTrue: [^self error: 'cannot make a byte subclass of a class with named fields'].
+ (aClass isVariable and: [aClass isBytes not])
+ ifTrue: [^self error: 'cannot make an 8-bit byte subclass of a class with 16, 32 or 64 bit fields'].
- (aClass isVariable and: [aClass isWords])
- ifTrue: [^self error: 'cannot make a byte subclass of a class with word fields'].
(aClass isVariable and: [aClass isPointers])
ifTrue: [^self error: 'cannot make a byte subclass of a class with pointer fields'].
oldClassOrNil := aClass environment at: t ifAbsent:[nil].
actualType := (oldClassOrNil notNil
and: [oldClassOrNil typeOfClass == #compiledMethod])
ifTrue: [#compiledMethod]
ifFalse: [#bytes].
env := CurrentEnvironment signal ifNil: [aClass environment].
^self
name: t
inEnvironment: env
subclassOf: aClass
type: actualType
instanceVariableNames: f
classVariableNames: d
poolDictionaries: s
category: cat!
Item was added:
+ ----- Method: ClassBuilder>>superclass:variableDoubleByteSubclass:instanceVariableNames:classVariableNames:poolDictionaries:category: (in category 'public') -----
+ superclass: aClass
+ variableDoubleByteSubclass: t instanceVariableNames: f
+ classVariableNames: d poolDictionaries: s category: cat
+ "This is the standard initialization message for creating a new class as a subclass of an
+ existing class in which the subclass is to have indexable 16-bit-sized nonpointer variables."
+ | oldClassOrNil env |
+ aClass instSize > 0
+ ifTrue: [^self error: 'cannot make a byte subclass of a class with named fields'].
+ (aClass isVariable and: [aClass isShorts not])
+ ifTrue: [^self error: 'cannot make a 16-bit short subclass of a class with 8, 32 or 64 bit fields'].
+ (aClass isVariable and: [aClass isPointers])
+ ifTrue: [^self error: 'cannot make a byte subclass of a class with pointer fields'].
+ oldClassOrNil := aClass environment at: t ifAbsent:[nil].
+ env := CurrentEnvironment signal ifNil: [aClass environment].
+ ^self
+ name: t
+ inEnvironment: env
+ subclassOf: aClass
+ type: #shorts
+ instanceVariableNames: f
+ classVariableNames: d
+ poolDictionaries: s
+ category: cat!
Item was added:
+ ----- Method: ClassBuilder>>superclass:variableDoubleWordSubclass:instanceVariableNames:classVariableNames:poolDictionaries:category: (in category 'public') -----
+ superclass: aClass
+ variableDoubleWordSubclass: t instanceVariableNames: f
+ classVariableNames: d poolDictionaries: s category: cat
+ "This is the standard initialization message for creating a new class as a subclass of an
+ existing class in which the subclass is to have indexable 16-bit-sized nonpointer variables."
+ | oldClassOrNil env |
+ aClass instSize > 0
+ ifTrue: [^self error: 'cannot make a byte subclass of a class with named fields'].
+ (aClass isVariable and: [aClass isLongs not])
+ ifTrue: [^self error: 'cannot make a 64-bit long subclass of a class with 8, 16 or 32 bit fields'].
+ (aClass isVariable and: [aClass isPointers])
+ ifTrue: [^self error: 'cannot make a byte subclass of a class with pointer fields'].
+ oldClassOrNil := aClass environment at: t ifAbsent:[nil].
+ env := CurrentEnvironment signal ifNil: [aClass environment].
+ ^self
+ name: t
+ inEnvironment: env
+ subclassOf: aClass
+ type: #longs
+ instanceVariableNames: f
+ classVariableNames: d
+ poolDictionaries: s
+ category: cat!
Item was changed:
----- Method: ClassBuilder>>superclass:variableWordSubclass:instanceVariableNames:classVariableNames:poolDictionaries:category: (in category 'public') -----
superclass: aClass
variableWordSubclass: t instanceVariableNames: f
classVariableNames: d poolDictionaries: s category: cat
+ "This is the standard initialization message for creating a new class as a subclass of an
+ existing class in which the subclass is to have indexable 32-bit word-sized nonpointer variables."
- "This is the standard initialization message for creating a new class as a
- subclass of an existing class in which the subclass is to
- have indexable word-sized nonpointer variables."
| env |
+ aClass instSize > 0
- (aClass instSize > 0)
ifTrue: [^self error: 'cannot make a word subclass of a class with named fields'].
+ (aClass isVariable and: [aClass isWords not])
+ ifTrue: [^self error: 'cannot make a 32-bit word subclass of a class with 8, 16 or 64 bit fields'].
- (aClass isVariable and: [aClass isBytes])
- ifTrue: [^self error: 'cannot make a word subclass of a class with byte fields'].
(aClass isVariable and: [aClass isPointers])
ifTrue: [^self error: 'cannot make a word subclass of a class with pointer fields'].
env := CurrentEnvironment signal ifNil: [aClass environment].
^self
name: t
inEnvironment: env
subclassOf: aClass
type: #words
instanceVariableNames: f
classVariableNames: d
poolDictionaries: s
category: cat!
Eliot Miranda uploaded a new version of EToys to project The Trunk:
http://source.squeak.org/trunk/EToys-eem.267.mcz
==================== Summary ====================
Name: EToys-eem.267
Author: eem
Time: 7 October 2016, 9:25:48.070927 am
UUID: 76f37085-fb1e-4d89-ad91-7b470d3133f6
Ancestors: EToys-tfel.266
Remove an undeclared from cleanUpEtoysGarbage (make the reference to SkObject soft).
=============== Diff against EToys-tfel.266 ===============
Item was changed:
----- Method: Project class>>cleanUpEtoysGarbage (in category '*Etoys-Squeakland-utilities') -----
cleanUpEtoysGarbage
"Project cleanUpEtoysGarbage"
"All these should eventuall go away and be fixed, but for now we have this here."
Smalltalk garbageCollect.
"Clear weak message sends to remove modal windows from worlds that are closing."
(WeakMessageSend allInstances select: [:wm |
(wm receiver isKindOf: PasteUpMorph) and: [wm selector = #removeModalWindow]]) do: [:wm | wm receiver: nil].
"Clear the weak dictionary on the class side that keeps node state around in the rewriter"
KedamaEvaluatorNodeState initialize.
"Clear the KedamaEvaluator that holds on to the last Kedama world"
ScriptEditorMorph setDefaultEvaluator.
"Clear the hard references to player classes, "
(Smalltalk organization listAtCategoryNamed: 'UserObjects') do: [:name |
Smalltalk forgetClass: (Smalltalk classNamed: name) logged: false].
Player withAllSubclasses
select: [:c | c isSystemDefined not]
thenDo: [:c | c superclass removeSubclass: c].
"Clear the paste buffer"
HandMorph initialize.
"Clear the reference to the project tree in SkObject"
+ Smalltalk at: #SkObject ifPresent: [:cls| cls initialize].
- SkObject initialize.
PasteUpMorph allInstancesDo: [:m | m presenter ifNotNil: [:p | p flushPlayerListCache]].
+ Smalltalk garbageCollect!
- Smalltalk garbageCollect.!
Patrick Rein uploaded a new version of MonticelloConfigurations to project The Trunk:
http://source.squeak.org/trunk/MonticelloConfigurations-pre.146.mcz
==================== Summary ====================
Name: MonticelloConfigurations-pre.146
Author: pre
Time: 6 October 2016, 6:34:12.000487 pm
UUID: fb8e5e56-8586-1943-b186-e48db629e1da
Ancestors: MonticelloConfigurations-mt.145
Removes the Post button which is based on an API which does not exist anymore and re-names the Store button to Save to be consistent with Monticello vocabulary.
=============== Diff against MonticelloConfigurations-mt.145 ===============
Item was changed:
----- Method: MCConfigurationBrowser>>buttonSpecs (in category 'morphic ui') -----
buttonSpecs
^ #(('Add' addDependency 'Add a dependency')
('Update' updateMenu 'Update dependencies')
('Install' installMenu 'Load/Merge/Upgrade into image')
('Up' up 'Move item up in list' canMoveUp)
('Down' down 'Move item down in list' canMoveDown)
('Remove' remove 'Remove item' canRemove)
+ ('Save' store 'Store the configuration to a repository')
- ('Store' store 'store configuration')
- ('Post' post 'Post this configuration to an update stream')
)!
Patrick Rein uploaded a new version of Help-Squeak-CorePackages to project The Trunk:
http://source.squeak.org/trunk/Help-Squeak-CorePackages-pre.1.mcz
==================== Summary ====================
Name: Help-Squeak-CorePackages-pre.1
Author: pre
Time: 6 October 2016, 6:15:21.412487 pm
UUID: fd531696-fd5a-344d-b269-0a45c3609f20
Ancestors:
Introduces a new help topic which adds short descriptions for every core package as an overview and first point of information for someone not familiar with the image.
==================== Snapshot ====================
SystemOrganization addCategory: #'Help-Squeak-CorePackages'!
CustomHelp subclass: #SqueakCorePackagesHelp
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'Help-Squeak-CorePackages'!
----- Method: SqueakCorePackagesHelp class>>bookName (in category 'as yet unclassified') -----
bookName
^ 'Core Packages'!
----- Method: SqueakCorePackagesHelp class>>chronology (in category 'pages') -----
chronology
"This method was automatically generated. Edit it using:"
"SqueakCorePackagesHelp edit: #chronology"
^(HelpTopic
title: 'Chronology'
contents:
'Everything related to time, time spans, durations, time stamps, etc. For the subtleties of the single classes read the class comments of: Duration, Timespan, and DateAndTime.
!!
]style[(138 8 2 8 6 11 2),LDuration Comment;,,LTimespan Comment;,,LDateAndTime Comment;,!!' readStream nextChunkText)
key: #chronology!
----- Method: SqueakCorePackagesHelp class>>collections (in category 'pages') -----
collections
"This method was automatically generated. Edit it using:"
"SqueakCorePackagesHelp edit: #collections"
^(HelpTopic
title: 'Collections'
contents:
'Everything related to working with multiple objects such as Array, String (Collection of characters), Stream, Set, and Dictionary.!!
]style[(60 5 2 6 29 6 2 3 6 10 1),dArray browse;;,,dString browse;;,,dStream browse;;,,dSet browse;;,,dDictionary browse;;,!!' readStream nextChunkText)
key: #collections!
----- Method: SqueakCorePackagesHelp class>>compiler (in category 'pages') -----
compiler
"This method was automatically generated. Edit it using:"
"SqueakCorePackagesHelp edit: #compiler"
^(HelpTopic
title: 'Compiler'
contents:
'This package contains the Squeak Smalltalk compiler. It includes a Scanner, Parser, and Compiler. In order to restore source code from byte code., it also includes a Decompiler. !!
]style[(67 7 2 6 6 8 70 10 2),dScanner browse;;,,dParser browse;;,,dCompiler browse;;,,dDecompiler browse;;,!!' readStream nextChunkText)
key: #compiler!
----- Method: SqueakCorePackagesHelp class>>files (in category 'pages') -----
files
"This method was automatically generated. Edit it using:"
"SqueakCorePackagesHelp edit: #files"
^(HelpTopic
title: 'Files'
contents:
'The Files package provides access to the local file system through streams. It contains the FileDirectory class for listing and navigating folders.
Besides the usual synchronous API it also provides a AsyncFile class for asynchronous reading from files.!!
]style[(92 14 96 9 43),dFileDirectory browse;;,,LAsyncFile Comment;,!!' readStream nextChunkText)
key: #files!
----- Method: SqueakCorePackagesHelp class>>graphics (in category 'as yet unclassified') -----
graphics
"This method was automatically generated. Edit it using:"
"SqueakCorePackagesHelp edit: #graphics"
^(HelpTopic
title: 'Graphics'
contents:
'This package includes core classes for Smalltalk graphic objects as well as facilities and applications for operating on graphic objects. Key classes include Form and BitBlt.
It further includes classes for rendering fonts and reading png, gif, or jpeg files.!!
]style[(158 4 5 6 87),dForm browse;;,,dBitBlt browse;;,!!' readStream nextChunkText)
key: #graphics!
----- Method: SqueakCorePackagesHelp class>>kernel (in category 'pages') -----
kernel
"This method was automatically generated. Edit it using:"
"SqueakCorePackagesHelp edit: #kernel"
^HelpTopic
title: 'Kernel'
contents:
'This package provides the most basic Smalltalk objects. It contains classes for: Code compilation, class (hierarchy) (re-)definition, basic exception handling, process scheduling and synchronization, user input events, and primitive types such as numbers and Boolean values.!!' readStream nextChunkText!
----- Method: SqueakCorePackagesHelp class>>network (in category 'pages') -----
network
"This method was automatically generated. Edit it using:"
"SqueakCorePackagesHelp edit: #network"
^(HelpTopic
title: 'Network'
contents:
'The network package provides means to fetch network resources. Includes support for UDP, TCP, HTTP, FTP, Telnet, SMTP, and POP3. Some of them are implemented as Sockets, others are implemented as Protocol clients. Additionally, it includes classes for handling URIs, Urls, email addresses, and UUIDs.
If SqueakSSL is installed properly it can also provide HTTPS support.!!
]style[(161 6 94 3 30 5 73),LSocket Hierarchy;,,LURI Comment;,,dUUID browse;;,!!' readStream nextChunkText)
key: #network!
----- Method: SqueakCorePackagesHelp class>>pages (in category 'as yet unclassified') -----
pages
^ self class selectors copyWithoutAll: #(bookName pages)!
----- Method: SqueakCorePackagesHelp class>>sound (in category 'pages') -----
sound
"This method was automatically generated. Edit it using:"
"SqueakCorePackagesHelp edit: #sound"
^(HelpTopic
title: 'Sound'
contents:
'The sound package manages audible output and reading various sound file formats. It includes support for FM, WAVE, and MIDI. It also includes classes for synthesizing sound. Try for example:
(AbstractSound majorScaleOn: PluckedSound default) play!!
]style[(191 55),d(AbstractSound majorScaleOn: PluckedSound default) play;;!!' readStream nextChunkText)
key: #sound!
----- Method: SqueakCorePackagesHelp class>>system (in category 'pages') -----
system
"This method was automatically generated. Edit it using:"
"SqueakCorePackagesHelp edit: #system"
^(HelpTopic
title: 'System'
contents:
'The System package includes classes dealing with code change notifications, object events, weak arrays and finalization, object serialization, and the concept of projects.
It also provides general system infrastructure such as the AppRegistry or classes for localization.
Additionally, it includes the SmalltalkImage class which can be accessed through Smalltalk.!!
]style[(232 11 61 14 37 9 1),LAppRegistry Comment;,,LSmalltalkImage Comment;,,dSmalltalk inspect;;,!!' readStream nextChunkText)
key: #system!
SqueakCorePackagesHelp subclass: #SqueakFurtherCorePackagesHelp
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'Help-Squeak-CorePackages'!
----- Method: SqueakFurtherCorePackagesHelp class>>balloonPackage (in category 'as yet unclassified') -----
balloonPackage
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #balloonPackage"
^(HelpTopic
title: 'Balloon'
contents:
'The Balloon package provides an engine for complex 2-D graphic objects and fast 2-D graphics rendering including anti-aliasing. It was originally written to render Flash. The main interface is BalloonCanvas which is used to render Morphs using the BalloonEngine. It also provides the FillStyle classes which enable gradient or form fill styles for Morphs.
It has nothing to do with the Balloon help concept which shows help texts on mouse over.!!
]style[(193 13 239),dBalloonCanvas browse;;,!!' readStream nextChunkText)
key: #balloonPackage!
----- Method: SqueakFurtherCorePackagesHelp class>>bookName (in category 'as yet unclassified') -----
bookName
^ 'Further'!
----- Method: SqueakFurtherCorePackagesHelp class>>commandLine (in category 'as yet unclassified') -----
commandLine
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #commandLine"
^(HelpTopic
title: 'CommandLine'
contents:
'The CommandLine package provides classes for running Squeak in headless mode while dealing with events requiring user input. Essentially, it introduces a special ToolSet (CommandLineToolSet) which handles tool requests.!!
]style[(162 7 2 18 30),dToolSet browse;;,,dCommandLineToolSet browse;;,!!' readStream nextChunkText)
key: #commandLine!
----- Method: SqueakFurtherCorePackagesHelp class>>etoys (in category 'pages') -----
etoys
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #etoys"
^HelpTopic
title: 'Etoys'
contents:
'The Etoys package includes all of the Etoys system with extended Morphs, a tile-based scripting language user interface and interpreter, and several applications based upon that.
This package also includes the Kedama project which provides means to create simulations with large numbers of objects based on a columnar storage.!!' readStream nextChunkText!
----- Method: SqueakFurtherCorePackagesHelp class>>monticello (in category 'pages') -----
monticello
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #monticello"
^(HelpTopic
title: 'Monticello'
contents:
'The Monticello package implements the infastructure and tools for working with the Monticello version control system. The package is split up into several categories: Monticello version control abstractions, serialization logic, repository management, tools, and monticello configuration management.
Monticello configurations denote a combination of version from different packages which form a consistent state together.!!' readStream nextChunkText)
key: #monticello!
----- Method: SqueakFurtherCorePackagesHelp class>>morphicExtras (in category 'pages') -----
morphicExtras
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #morphicExtras"
^(HelpTopic
title: 'MorphicExtras'
contents:
'MorphicExtras contains a collection of additional Morphs which are either graphical tools or provide an extended API, such as the BookMorph class. Many of these can be found in the Objects tool. Additionally, it includes extensions to the Morphic UI such as Flaps.
!!
]style[(130 9 42 12 72),dBookMorph browse;;,,dObjectsTool newStandAlone openInWorld;;,!!' readStream nextChunkText)
key: #morphicExtras!
----- Method: SqueakFurtherCorePackagesHelp class>>multilingual (in category 'as yet unclassified') -----
multilingual
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #multilingual"
^(HelpTopic
title: 'Multilingual'
contents:
'The Multilingual package adds support for multiple languages to Squeak. This includes the capabilities to import text in different encodings (think copy-and-paste), and render all kinds of fonts.
An interesting multilingual method of the String class is #encodedCharSetAt:.
!!' readStream nextChunkText)
key: #multilingual!
----- Method: SqueakFurtherCorePackagesHelp class>>nebraska (in category 'as yet unclassified') -----
nebraska
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #nebraska"
^(HelpTopic
title: 'Nebraska'
contents:
'Nebraska is a toolkit for building remote interactions with Morphic in Squeak. It is modelled somewhat after Kansas, although as yet it''s a much simpler system. There is a shared world on some server on a network, and other people can connect to that world from afar. Whenever the shared world tries to draw to its screen, it sends drawing commands across the network. Whenever a user tries to perform a mouse or keyboard interaction, those interactions are forwarded to the server where a RemoteControlledHand acts on their behalf.
See also http://wiki.squeak.org/squeak/1356!!
]style[(543 34),Rhttp://wiki.squeak.org/squeak/1356;!!' readStream nextChunkText)
key: #nebraska!
----- Method: SqueakFurtherCorePackagesHelp class>>packageInfoPage (in category 'pages') -----
packageInfoPage
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #packageInfoPage"
^(HelpTopic
title: 'PackageInfo'
contents:
'The PackageInfo package provides classes providing a view on the classes in the system with respect to packages. These objects are only cached and represent no stored information. For more information look into the PackageInfo class.!!
]style[(215 11 7),LPackageInfo Comment;,!!' readStream nextChunkText)
key: #packageInfoPage!
----- Method: SqueakFurtherCorePackagesHelp class>>pages (in category 'as yet unclassified') -----
pages
^ self class selectors copyWithoutAll: #(bookName pages)!
----- Method: SqueakFurtherCorePackagesHelp class>>preferenceBrowser (in category 'pages') -----
preferenceBrowser
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #preferenceBrowser"
^HelpTopic
title: 'PreferenceBrowser'
contents:
'The PreferenceBrowser package contains the implementation of the preference browser tool which is currently only available in Morphic and thus does not reside with the ToolBuilder-based tools.!!' readStream nextChunkText!
----- Method: SqueakFurtherCorePackagesHelp class>>protocols (in category 'as yet unclassified') -----
protocols
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #protocols"
^(HelpTopic
title: 'Protocols'
contents:
'This package deals with vocabularies as they are used in Etoys. A vocabulary is the set of words understood by an object when viewed from Etoys. You can see examples of vocabularies in methods named ''additionsTo[some vocabulary category name]''.
Most of the methods behind a vocabulary term are implemented in Player which then often forward them to an implementation in its costume (often a Morph).
See also: http://wiki.squeak.org/squeak/3944!!
]style[(411 34),Rhttp://wiki.squeak.org/squeak/3944;!!' readStream nextChunkText)
key: #protocols!
----- Method: SqueakFurtherCorePackagesHelp class>>releaseBuilder (in category 'pages') -----
releaseBuilder
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #releaseBuilder"
^HelpTopic
title: 'ReleaseBuilder'
contents:
'This package contains the script for preparing a new release from a trunk image.!!' readStream nextChunkText!
----- Method: SqueakFurtherCorePackagesHelp class>>servicesPage (in category 'pages') -----
servicesPage
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #servicesPage"
^(HelpTopic
title: 'Services'
contents:
'Services are a concept for extending menus. You can register a service for a menu/application. A good starting point is the ServiceProvider.!!
]style[(124 15 1),LServiceProvider Comment;,!!' readStream nextChunkText)
key: #servicesPage!
----- Method: SqueakFurtherCorePackagesHelp class>>shout (in category 'as yet unclassified') -----
shout
"This method was automatically generated. Edit it using:"
"ShoutHelp edit: #introduction"
^HelpTopic
title: 'Shout'
contents:
'The Shout package provides parsing and syntax highlighting for Smalltalk code. It can be used to create alternative highlighting mechanisms. !!
]style[(141)f1!!' readStream nextChunkText!
----- Method: SqueakFurtherCorePackagesHelp class>>squeakSSL (in category 'pages') -----
squeakSSL
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #squeakSSL"
^HelpTopic
title: 'SqueakSSL'
contents:
'The SqueakSSL provides the SecureSocket class which enables SSL encrpyted connections. For this to work the SqueakSSL plugin has to be installed. !!' readStream nextChunkText!
----- Method: SqueakFurtherCorePackagesHelp class>>st80 (in category 'as yet unclassified') -----
st80
"This method was automatically generated. Edit it using:"
"ST80Help edit: #introduction"
^HelpTopic
title: 'ST80'
contents:
'The ST80 package bundles the MVC tool implementations in Squeak. They can be used through opening a MVC project. This is useful for example for debugging Morphic projects.!!
]style[(171)f1!!' readStream nextChunkText!
----- Method: SqueakFurtherCorePackagesHelp class>>systemReporter (in category 'pages') -----
systemReporter
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #systemReporter"
^HelpTopic
title: 'SystemReporter'
contents:
'SystemReporter provides the tool with the same name which provides information on the system such as VM or image versions, hardware information, or access to the debug log.!!
]style[(28 4 140),dSystemReporter open;;,!!' readStream nextChunkText!
----- Method: SqueakFurtherCorePackagesHelp class>>tests (in category 'pages') -----
tests
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #tests"
^(HelpTopic
title: 'Tests'
contents:
'This package includes tests for many parts of the core system where core packages do not provide tests themselves.!!' readStream nextChunkText)
key: #tests!
----- Method: SqueakFurtherCorePackagesHelp class>>trueType (in category 'pages') -----
trueType
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #trueType"
^(HelpTopic
title: 'TrueType'
contents:
'The TrueType package includes classes for handling TrueType fonts. It provides domain abstractions as well as classes for importing TrueType fonts from files. A starting point is the TTCFont class.!!
]style[(183 7 7),LTTCFont Comment;,!!' readStream nextChunkText)
key: #trueType!
----- Method: SqueakFurtherCorePackagesHelp class>>updateStream (in category 'pages') -----
updateStream
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #updateStream"
^(HelpTopic
title: 'UpdateStream'
contents:
'This package provides scripts for updating all core packages within the image from a server. All these scripts are on the class side of UpdateStreamDownloader. !!
]style[(136 22 2),dUpdateStreamDownloader browse;;,!!' readStream nextChunkText)
key: #updateStream!
----- Method: SqueakFurtherCorePackagesHelp class>>versionNumber (in category 'pages') -----
versionNumber
"This method was automatically generated. Edit it using:"
"SqueakFurtherCorePackagesHelp edit: #versionNumber"
^HelpTopic
title: 'VersionNumber'
contents:
'This package includes domain specific code for handling version numbers either as a single VersionNumber or as a VersionHistory.
It is used in the SqueakMap package.!!
]style[(91 13 9 14 39),LVersionNumber Comment;,,LVersionHistory Comment;,!!' readStream nextChunkText!
SqueakCorePackagesHelp subclass: #SqueakUsefulCorePackagesHelp
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'Help-Squeak-CorePackages'!
----- Method: SqueakUsefulCorePackagesHelp class>>bookName (in category 'as yet unclassified') -----
bookName
^ 'Commonly Used'!
----- Method: SqueakUsefulCorePackagesHelp class>>compression (in category 'pages') -----
compression
"This method was automatically generated. Edit it using:"
"SqueakUsefulCorePackagesHelp edit: #compression"
^(HelpTopic
title: 'Compression'
contents:
'The Compression package provides classes for dealing with compressed files or compressed data in general. Compression-Archives contains most of the file-handling classes (for example Archive). Compression-Streams provides streams which can compress data written to them. !!
]style[(183 7 81),dArchive browse;;,!!' readStream nextChunkText)
key: #compression!
----- Method: SqueakUsefulCorePackagesHelp class>>installer (in category 'pages') -----
installer
"This method was automatically generated. Edit it using:"
"SqueakUsefulCorePackagesHelp edit: #installer"
^(HelpTopic
title: 'Installer'
contents:
'This package provides the Installer tool which can be used to install packages from various sources including Monticello or SqueakMap. !!' readStream nextChunkText)
key: #installer!
----- Method: SqueakUsefulCorePackagesHelp class>>morphic (in category 'pages') -----
morphic
"This method was automatically generated. Edit it using:"
"SqueakUsefulCorePackagesHelp edit: #morphic"
^HelpTopic
title: 'Morphic'
contents:
'Morphic contains the Morphic UI framework including event handling, basic drawing of Morphs, and the implementation of the Morphic UI. The main API is in the Morph class and the event loop of the framework can be found in WorldState.
The package also includes several example Morphs such as the ClickExerciser.
The main entrance point for working with Morphs is by composing or subclassing Morph subclasses.!!
]style[(222 10 65 14 82 5 12),dWorldState browse;;,,dClickExerciser new openInWorld;;,,dMorph browse;;,!!' readStream nextChunkText!
----- Method: SqueakUsefulCorePackagesHelp class>>pages (in category 'as yet unclassified') -----
pages
^ self class selectors copyWithoutAll: #(bookName pages)!
----- Method: SqueakUsefulCorePackagesHelp class>>regex (in category 'as yet unclassified') -----
regex
"This method was automatically generated. Edit it using:"
"SqueakUsefulCorePackagesHelp edit: #regex"
^(HelpTopic
title: 'Regex'
contents:
'Regex provides a regex matching engine. It is mainly used through the interface exposed on String objects. See the *Regex-Core category on String.
For the syntax of Squeak regular expressions see: RxParser class>>#a:introduction: and the subsequent methods on RxParser class. For more involved usages of regular expressions see the Regex-Core class category.!!
]style[(139 6 53 32 129),dString browse;;,,LRxParser class>>#a:introduction:;,!!' readStream nextChunkText)
key: #regex!
----- Method: SqueakUsefulCorePackagesHelp class>>squeakMap (in category 'as yet unclassified') -----
squeakMap
"This method was automatically generated. Edit it using:"
"SqueakUsefulCorePackagesHelp edit: #squeakMap"
^(HelpTopic
title: 'SM'
contents:
'This package contains the model and the UI of SqueakMap, which is a repository for packages and applications in Squeak. You can access the SqueakMap catalog from the Apps menu item.
Information on how to use SqueakMap can be found here: http://wiki.squeak.org/squeak/2726
The server resides at: http://http://map.squeak.org/
You can get an account to publish packages at: http://map.squeak.org/newaccount!!' readStream nextChunkText)
key: #squeakMap!
----- Method: SqueakUsefulCorePackagesHelp class>>sunit (in category 'as yet unclassified') -----
sunit
"This method was automatically generated. Edit it using:"
"SqueakUsefulCorePackagesHelp edit: #sunit"
^(HelpTopic
title: 'SUnit and SUnitGUI'
contents:
'The SUnit package provides testing abstractions for unit tests. These comply to the XUnit testing model.
The common use case is to subclass TestCase. However, SUnit-Extensions also contains TestCases for special use cases. The rest of the API is explained in SUnit-Tests.
SUnitGUI contains the definition of the SUnit TestRunner which you can find in the world menu or the docking bar under Tools.!!
]style[(141 8 250),Rcode://TestCase;,!!' readStream nextChunkText)
key: #sunit!
----- Method: SqueakUsefulCorePackagesHelp class>>toolBuilder (in category 'as yet unclassified') -----
toolBuilder
"This method was automatically generated. Edit it using:"
"SqueakUsefulCorePackagesHelp edit: #toolBuilder"
^(HelpTopic
title: 'ToolBuilder'
contents:
'ToolBuilder provides means to describe graphical user interfaces independently from the actual graphics framework used (e.g. MVC or Morphic). Examples of tools built with it are the Debugger, the system browser, or the monticello repository browser.
To read about how to build tools start reading the ToolBuilder class comment.!!
]style[(182 8 112 11 15)f1,dDebugger browse;;,f1,LToolBuilder Comment;,f1!!' readStream nextChunkText)
key: #toolBuilder!
----- Method: SqueakUsefulCorePackagesHelp class>>traitsPage (in category 'as yet unclassified') -----
traitsPage
"This method was automatically generated. Edit it using:"
"SqueakUsefulCorePackagesHelp edit: #traitsPage"
^(HelpTopic
title: 'Traits'
contents:
'Traits are an additional composition and reuse concept in Squeak allowing sideways composition of behavior. Traits are similar to MixIns. You can read about them here: http://scg.unibe.ch/archive/papers/Scha03aTraits.pdf!!
]style[(168 52)f1,Rhttp://scg.unibe.ch/archive/papers/Scha03aTraits.pdf;!!' readStream nextChunkText)
key: #traitsPage!
----- Method: SqueakUsefulCorePackagesHelp class>>xml (in category 'as yet unclassified') -----
xml
"This method was automatically generated. Edit it using:"
"SqueakUsefulCorePackagesHelp edit: #xml"
^(HelpTopic
title: 'XML'
contents:
'This package provides classes for parsing XML files. You can implement your own Parser by subclassing the XMLParser class.!!
]style[(106 9 7)f1,dXMLParser browse;;,f1!!' readStream nextChunkText)
key: #xml!