Marcel Taeumel uploaded a new version of ShoutCore to project The Trunk:
http://source.squeak.org/trunk/ShoutCore-mt.94.mcz
==================== Summary ====================
Name: ShoutCore-mt.94
Author: mt
Time: 3 July 2022, 11:58:30.475581 am
UUID: 6cf4d5f1-6ce3-1049-b8cd-08002edc3025
Ancestors: ShoutCore-mt.93
Adds preference to enforce italic typeset in comments. Enabled by default.
See http://lists.squeakfoundation.org/pipermail/squeak-dev/2022-May/220517.html
=============== Diff against ShoutCore-mt.93 ===============
Item was changed:
SHTextStyler subclass: #SHTextStylerST80
instanceVariableNames: 'classOrMetaClass workspace font parser formatAssignments environment sourceMap processedSourceMap pixelHeight attributesByPixelHeight parseAMethod context'
+ classVariableNames: 'EnforceItalicEmphasisInComments SyntaxHighlightingAsYouTypeAnsiAssignment SyntaxHighlightingAsYouTypeLeftArrowAssignment TextAttributesByPixelHeight'
- classVariableNames: 'SyntaxHighlightingAsYouTypeAnsiAssignment SyntaxHighlightingAsYouTypeLeftArrowAssignment TextAttributesByPixelHeight'
poolDictionaries: ''
category: 'ShoutCore-Styling'!
!SHTextStylerST80 commentStamp: 'tween 8/27/2004 10:55' prior: 0!
I style Smalltalk methods and expressions.
My 'styleTable' class instance var holds an array ofArrays which control how each token is styled/coloured. See my defaultStyleTable class method for its structure.
My styleTable can be changed by either modifying the defaultStyleTable class method and then executing SHTextStylerST80 initialize ; or by giving me a new styleTable through my #styleTable: class method.
My 'textAttributesByPixelSize' class instance var contains a dictionary of dictionaries.
The key is a pixelSize and the value a Dictionary from token type Symbol to TextAttribute array.
It is created/maintained automatically.
I also install these 3 preferences when my class initialize method is executed....
#syntaxHighlightingAsYouType - controls whether methods are styled in browsers
#syntaxHighlightingAsYouTypeAnsiAssignment - controls whether assignments are formatted to be :=
#syntaxHighlightingAsYouTypeLeftArrowAssignment - controls whether assignments are formatted to be _
I reimplement #unstyledTextFrom: so that TextActions are preserved in the unstyled text
!
Item was added:
+ ----- Method: SHTextStylerST80 class>>enforceItalicEmphasisInComments (in category 'preferences') -----
+ enforceItalicEmphasisInComments
+ <preference: 'Enforce Italic in Comments'
+ categoryList: #(browsing Accessibility)
+ description: 'When enabled, always typeset source-code comments in italic, regardless of the current UI theme. When disabled, depend on what the current UI theme prescribes as text attributes for such comments.'
+ type: #Boolean>
+
+ ^ EnforceItalicEmphasisInComments ifNil: [true]!
Item was added:
+ ----- Method: SHTextStylerST80 class>>enforceItalicEmphasisInComments: (in category 'preferences') -----
+ enforceItalicEmphasisInComments: aBooleanOrNil
+
+ EnforceItalicEmphasisInComments = aBooleanOrNil ifTrue: [^ self].
+ EnforceItalicEmphasisInComments := aBooleanOrNil.
+
+ self userInterfaceTheme apply. "Invalidate all styling caches."
+ !
Item was changed:
----- Method: SHTextStylerST80>>createTextAttributesForPixelHeight: (in category 'style table') -----
createTextAttributesForPixelHeight: aNumber
| result |
result := IdentityDictionary new.
result at: #default put: {}. "Required as fall-back for non-existing attributes."
self class themeProperties do: [:each |
| spec element emphasis font color |
element := each first.
spec := self userInterfaceTheme perform: element.
spec isArray ifFalse: [spec := {spec}]. "Support color-only hints."
color := spec first ifNotNil: [:colorSpec | Color colorFrom: colorSpec].
emphasis := spec at: 2 ifAbsent:[nil].
font := spec at: 3 ifAbsent: [nil].
+ (element == #comment and: [self class enforceItalicEmphasisInComments])
+ ifTrue: [
+ emphasis
+ ifNil: [emphasis := TextEmphasis italic]
+ ifNotNil: [
+ emphasis isArray
+ ifFalse: [emphasis := {emphasis}, {TextEmphasis italic}]
+ ifTrue: [emphasis := emphasis, {TextEmphasis italic}].
+ emphasis := emphasis asSet asArray "no double italic"]].
+
"Support for named text styles."
font isString ifTrue: [
| textStyle |
textStyle := TextStyle named: font.
font := textStyle ifNotNil: [textStyle fontOfSize: aNumber]].
(self createAttributeArrayForColor: color emphasis: emphasis font: font)
ifNotEmpty: [:attrArray | result at: element put: attrArray]].
+ ^ result!
- ^ result
- !
Marcel Taeumel uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-kfr.2015.mcz
==================== Summary ====================
Name: Morphic-kfr.2015
Author: kfr
Time: 1 July 2022, 7:20:33.220758 pm
UUID: 4c01e4ed-3290-0848-990e-4a31fd76a48b
Ancestors: Morphic-kfr.2014
Reverting Morphic-kfr.2014. Issue solved in Graphics-kfr.527
=============== Diff against Morphic-kfr.2014 ===============
Item was changed:
----- Method: SketchMorph>>reduceColorPalette: (in category 'menu') -----
reduceColorPalette: evt
"Let the user ask for a reduced number of colors in this sketch"
| str nColors |
- originalForm depth > 16 ifTrue:[^self inform:'Not possible for pictures of 32 bit depth' translated].
str := UIManager default
request: 'Please enter a number greater than one.
(note: this cannot be undone, so answer zero
to abort if you need to make a backup first)' translated
initialAnswer: '256'.
nColors := Integer readFrom: (ReadStream on: str).
(nColors between: 2 and: 256) ifFalse: [^ self].
originalForm := originalForm copyWithColorsReducedTo: nColors.
rotatedForm := nil.
self changed!
Marcel Taeumel uploaded a new version of ReleaseBuilder to project The Trunk:
http://source.squeak.org/trunk/ReleaseBuilder-mt.239.mcz
==================== Summary ====================
Name: ReleaseBuilder-mt.239
Author: mt
Time: 2 July 2022, 12:08:43.90387 pm
UUID: d3c9248c-6e00-2d46-a4d1-87ce3d4c6b49
Ancestors: ReleaseBuilder-mt.238
Trunk is open for contributions again. We are now working on Squeak6.1alpha. All new deprecations go into the package "61Deprecated".
=============== Diff against ReleaseBuilder-mt.238 ===============
Item was changed:
----- Method: ReleaseBuilder class>>initialize (in category 'class initialization') -----
initialize
QAndA ifNil: [self clearQAndA].
"We have to be after AutoStart so that Morphic is up and running."
Smalltalk addToStartUpList: ReleaseBuilder after: AutoStart.
+ SystemVersion newVersion: 'Squeak6.1alpha'!
- SystemVersion newVersion: 'Squeak6.0rc1'!
Item was changed:
----- Method: ReleaseBuilder class>>versionStringAlpha (in category 'accessing') -----
versionStringAlpha
"Result format is specified in SystemVersion."
+ ^ 'Squeak{1}.{2}alpha' format: {self releaseVersionMajor. self releaseVersionMinor}!
- ^ 'Squeak{1}.{2}alpha' format: {self releaseVersionMajor. self releaseVersionMinor+1}!
Marcel Taeumel uploaded a new version of MorphicExtras to project The Trunk:
http://source.squeak.org/trunk/MorphicExtras-mt.319.mcz
==================== Summary ====================
Name: MorphicExtras-mt.319
Author: mt
Time: 2 July 2022, 11:36:14.473753 am
UUID: 11add77d-f302-4448-8358-342af37c9489
Ancestors: MorphicExtras-mt.318
Fixes invalid category...
=============== Diff against MorphicExtras-mt.318 ===============
Item was changed:
+ ----- Method: StoryboardBookMorph>>intoWorld: (in category 'initialization') -----
- ----- Method: StoryboardBookMorph>>intoWorld: (in category 'nil') -----
intoWorld: world
zoomController openInWorld.!