Changes to Trunk (http://source.squeak.org/trunk.html) in the last 24 hours:
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007535.h…
Name: Tests-eem.311
Ancestors: Tests-eem.310
Eliminate an interactive prompt in the MCEnvironmentLoadTest
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007536.h…
Name: Kernel-bf.899
Ancestors: Kernel-eem.898
Fix random for Really Large Integers.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007537.h…
Name: KernelTests-nice.287
Ancestors: KernelTests-mt.286
Put some higher expectations from #timesTwoPower: fallback code than it can currently handle.
Some of these test will start failing when the primitive is disabled.
Some will fail immediately.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007538.h…
Name: Kernel-nice.900
Ancestors: Kernel-bf.899
Rescue #timesTwoPower: fallback code from freshly discovered flaws.
Don't be sparing of comments, if we ever need some, that gonna be here
Some of us try very hard to make the tests speak in place of comments, I feel that having both don't hurt.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007539.h…
Name: Kernel-eem.901
Ancestors: Kernel-nice.900
Make Integer class>>byte1:byte2:byte3:byte4: 64-bit
Spur savvy, and add a similarly savvy
byte1:byte2:byte3:byte4:byte5:byte6:byte7:byte8:
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007540.h…
Name: KernelTests-eem.288
Ancestors: KernelTests-nice.287
Make the testCreationFromBytes tests 64-bit Spur savvy
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007541.h…
Name: Kernel-nice.902
Ancestors: Kernel-eem.901
Generate large random integers a bit more fairly.
The idea is just to generate a large bit sequence by gathering enough pseudo random chunks.
Note that this implementation knows that Random cannot fairly generate 32 bits, so limit itself to 24 bits chunk.
It knows two much about Random already and should better delegate, but since we have a single Pseudo Random Number Generator so far, don't bother too much.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007542.h…
Name: Kernel.spur-bf.899
Ancestors: Kernel-bf.899, Kernel.spur-eem.898
Kernel-bf.899 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Fix random for Really Large Integers.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007543.h…
Name: Kernel.spur-nice.900
Ancestors: Kernel-nice.900, Kernel.spur-bf.899
Kernel-nice.900 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Rescue #timesTwoPower: fallback code from freshly discovered flaws.
Don't be sparing of comments, if we ever need some, that gonna be here
Some of us try very hard to make the tests speak in place of comments, I feel that having both don't hurt.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007544.h…
Name: Kernel.spur-eem.901
Ancestors: Kernel-eem.901
Kernel-eem.901 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Make Integer class>>byte1:byte2:byte3:byte4: 64-bit
Spur savvy, and add a similarly savvy
byte1:byte2:byte3:byte4:byte5:byte6:byte7:byte8:
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007545.h…
Name: Kernel.spur-nice.902
Ancestors: Kernel-nice.902, Kernel.spur-eem.901
Kernel-nice.902 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Generate large random integers a bit more fairly.
The idea is just to generate a large bit sequence by gathering enough pseudo random chunks.
Note that this implementation knows that Random cannot fairly generate 32 bits, so limit itself to 24 bits chunk.
It knows two much about Random already and should better delegate, but since we have a single Pseudo Random Number Generator so far, don't bother too much.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007546.h…
Name: Kernel-ul.904
Ancestors: Kernel-nice.902
Avoid the frequent time checks, and the clock rollover bug in BlockClosure >> #bench.
Introduced BlockClosure >> #benchFor:, a variant of #bench, which takes the duration of the benchmark as its parameter.
Added more information about the running times to the answer.
E.g.:
[ 10 factorial ] benchFor: 0.1 seconds. "'7,990,000 per second. 125 nanoseconds per run.'"
[ 100 factorial ] benchFor: 10 seconds. "'19,900 per second. 50.3 microseconds per run.'"
[ 1000 factorial ] bench. "'378 per second. 2.65 milliseconds per run.'"
[ 20000 factorial ] bench. "'0.843 per second. 1.19 seconds per run.'"
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007547.h…
Name: KernelTests-eem.289
Ancestors: KernelTests-eem.288
Fix the 64-bitized testCreationFromBytes tests.
The read bytes need to be reversed.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007548.h…
Name: Compiler-bf.293
Ancestors: Compiler-topa.292
Fix deoptimization of ifNil: etc.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007549.h…
Name: Compiler-bf.294
Ancestors: Compiler-bf.293
Accidentally changed method category.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007550.h…
Name: Compiler.spur-bf.293
Ancestors: Compiler-bf.293, Compiler.spur-topa.292
Compiler-bf.293 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Fix deoptimization of ifNil: etc.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007551.h…
Name: Compiler.spur-bf.294
Ancestors: Compiler-bf.294, Compiler.spur-bf.293
Compiler-bf.294 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Accidentally changed method category.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007552.h…
Name: Kernel.spur-ul.904
Ancestors: Kernel-ul.904, Kernel.spur-nice.902
Kernel-ul.904 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Avoid the frequent time checks, and the clock rollover bug in BlockClosure >> #bench.
Introduced BlockClosure >> #benchFor:, a variant of #bench, which takes the duration of the benchmark as its parameter.
Added more information about the running times to the answer.
E.g.:
[ 10 factorial ] benchFor: 0.1 seconds. "'7,990,000 per second. 125 nanoseconds per run.'"
[ 100 factorial ] benchFor: 10 seconds. "'19,900 per second. 50.3 microseconds per run.'"
[ 1000 factorial ] bench. "'378 per second. 2.65 milliseconds per run.'"
[ 20000 factorial ] bench. "'0.843 per second. 1.19 seconds per run.'"
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007553.h…
Name: Morphic-mt.758
Ancestors: Morphic-mt.757
Preferences for gradient* fixed or implemented: Windows, buttons, scrollbars, menus. The gradient fill-styles can now be fully disabled in all standard tools. Default is still "enabled".
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007554.h…
Name: Kernel-topa.905
Ancestors: Kernel-ul.904
Add a convenience method to access arguments of a context.
Also: increases compatibility.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007555.h…
Name: Morphic-topa.759
Ancestors: Morphic-mt.758
Retain scrollBar look now that the pref actually does something (as of Morphic-mt.758)
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007556.h…
Name: ReleaseBuilder-topa.116
Ancestors: ReleaseBuilder-cmm.115
Retain scrollBar look now that the pref actually does something (as of Morphic-mt.758)
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007557.h…
Name: System-topa.704
Ancestors: System-eem.703
Retain scrollBar look now that the pref actually does something (as of Morphic-mt.758)
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007558.h…
Name: Morphic-mt.760
Ancestors: Morphic-topa.759
Corner rounding refactored. Does not rely on (spooky) CornerRounder implementation anymore. Many hacks for that CornerRounder could be removed from Morphic.
A preference can be used to choose the preferred corner radius for rounded morphs. (Preferences > Morphic > Preferred Corner Radius) Subclasses may override the drawing of corners as needed. See draw* methods.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007559.h…
Name: Nebraska-mt.40
Ancestors: Nebraska-bf.39
No CornerRounder anymore. Depended morphs have to round corners themselves. See Morphic-mt.760.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007560.h…
Name: Graphics-mt.307
Ancestors: Graphics-kfr.305
No CornerRounder anymore. Depended morphs have to round corners themselves. See Morphic-mt.760.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007561.h…
Name: Morphic-mt.761
Ancestors: Morphic-mt.760
Make pluggable buttons use the appropriate code for handling rounded corners (e.g. like system windows do).
Corner rounding is now also configurable for buttons. Same preference: 'Preferred corner radius'.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007562.h…
Name: Morphic-mt.762
Ancestors: Morphic-mt.761
Flag added to document that we don't handle rounded corners for roll-over borders. (eToys only?)
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007563.h…
Name: Kernel-ul.906
Ancestors: Kernel-topa.905
Added an implementation of a 30-bit Mersenne Twister (p=521) to Random. All existing Random instances are migrated to the new implementation.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007564.h…
Name: Kernel-ul.907
Ancestors: Kernel-ul.906
Removed the old random number generator implementation from Random.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007565.h…
Name: Kernel-ul.908
Ancestors: Kernel-ul.907
Removed the unused variables from Random.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007566.h…
Name: Morphic-ul.763
Ancestors: Morphic-mt.762, Morphic-ul.754
Merged Morphic-ul.754:
Simplified and improved WorldState >> #interCyclePause:
- don't create a new Delay (along with a new Semaphore) every 20 (or 50) milliseconds
- use #millisecondsSince: to avoid the effects of the clock rollover
- separated the code of time calculation and actual waiting
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007567.h…
Name: Morphic-ul.754
Ancestors: Morphic-bf.753
Simplified and improved WorldState >> #interCyclePause:
- don't create a new Delay (along with a new Semaphore) every 20 (or 50) milliseconds
- use #millisecondsSince: to avoid the effects of the clock rollover
- separated the code of time calculation and actual waiting
Depends on Kernel-ul.893
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007568.h…
Name: Morphic-mt.764
Ancestors: Morphic-ul.763
New pragma-preference for #gradientMenu to update SystemProgressbar instance accordingly. Postload-script will remove the old-style preference.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007569.h…
Name: System-mt.705
Ancestors: System-topa.704
Auto-generated method for #gradientMenu removed because of postload-script in Morphic-mt.764.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007570.h…
Name: System-mt.706
Ancestors: System-mt.705
Re-activated possibility to have multiple categories for a single preference. Worked for old-style preferences, now works again for pragma-style preferences. Use #categoryList: instead of #category: in the pragma and provide an array of strings (or symbols).
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007571.h…
Name: Morphic-mt.765
Ancestors: Morphic-mt.764
Recategorized #preferredCornerRadius into all affected preference categories.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007572.h…
Name: Morphic-mt.766
Ancestors: Morphic-mt.765
Several cosmetic fixes considering dockingbar morphs and menu morphs. #roundedMenuCorners is now a pragma-style preference. Several magic numbers could be removed.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007573.h…
Name: ReleaseBuilder-mt.117
Ancestors: ReleaseBuilder-topa.116
Updated to use pragma-style preference for #roundedMenuCorners.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007574.h…
Name: System-mt.707
Ancestors: System-mt.706
Old-style preference #roundedMenuCorners removed. See Morphic-mt.766 postload-script.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007575.h…
Name: KernelTests-ul.290
Ancestors: KernelTests-eem.289
Updated RandomTest to match the new implementation of Random.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-February/007576.h…
Name: Tools-mt.534
Ancestors: Tools-topa.533
Auto-sort message category list in System Browser. Does not affect internal order of categories in class organization. Only a view thing. Makes 'alphabetize' in the menu somewhat obsolete for this column. Saves some mouse clicks.
However, hides insertion order of message categories. Not that important, right? :-)
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007577.html
Name: Tools-mt.535
Ancestors: Tools-mt.534
New preference for auto-sorting the message category list. Disabled by default.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007578.html
Name: Morphic-mt.767
Ancestors: Morphic-mt.766
Make TransformMorph use #clipSubmorphs: as specified in Morph. Having this, TransforMorphs can have a #layoutPolicy: again. #layoutBounds overwritten to respect local coordinate system.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007579.html
Name: ToolBuilder-Morphic-mt.94
Ancestors: ToolBuilder-Morphic-mt.93
Fixed creation of pluggable scroll pane. Failed to use correct interface for #whenNeeded behavior of scroll bars.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007580.html
Name: Tools-mt.537
Ancestors: Tools-mt.535
Make use of proper abstractions/interface in browser models for message category selection.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007581.html
Name: MorphicExtras-mt.155
Ancestors: MorphicExtras-bf.154
Extended animated image morph so that it can be used with forms coming from animated gifs that only store diff/delta-frames.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007582.html
Name: Morphic-mt.768
Ancestors: Morphic-mt.767
Fixes rounded corners and respects #gradientWindow preference in UserDialogBoxMorph.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007583.html
Name: MorphicExtras-mt.156
Ancestors: MorphicExtras-mt.155
Uses eToys' implementation of AnimatedImageMorph, which works fine with animated GIFs now.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007584.html
Name: MorphicExtras-mt.157
Ancestors: MorphicExtras-mt.156
Reverted eToys-specific changes in AnimatedImageMorph but kept its working core in #step for displaying animated gifs.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007585.html
Name: Kernel-mt.909
Ancestors: Kernel-ul.908
Two utility messages added to classes to find out whether a selector is an override or will be overridden in subclasses.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007586.html
Name: Morphic-mt.769
Ancestors: Morphic-mt.768
Fixes icon access wrt. list filtering.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007587.html
Name: Tools-mt.539
Ancestors: Tools-mt.537
Add icons to class list and message list in browsers. Can be turned off in preferences. Icons are stored in ToolIcons (like MenuIcons and HelpIcons do).
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007588.html
Name: Kernel.spur-topa.905
Ancestors: Kernel-topa.905, Kernel.spur-ul.904
Kernel-topa.905 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Add a convenience method to access arguments of a context.
Also: increases compatibility.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007589.html
Name: Kernel.spur-ul.906
Ancestors: Kernel-ul.906, Kernel.spur-topa.905
Kernel-ul.906 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Added an implementation of a 30-bit Mersenne Twister (p=521) to Random. All existing Random instances are migrated to the new implementation.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007590.html
Name: Kernel.spur-ul.907
Ancestors: Kernel-ul.907, Kernel.spur-ul.906
Kernel-ul.907 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Removed the old random number generator implementation from Random.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007591.html
Name: Kernel.spur-ul.908
Ancestors: Kernel-ul.908, Kernel.spur-ul.907
Kernel-ul.908 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Removed the unused variables from Random.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007592.html
Name: Kernel.spur-mt.909
Ancestors: Kernel-mt.909
Kernel-mt.909 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Two utility messages added to classes to find out whether a selector is an override or will be overridden in subclasses.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007593.html
Name: System.spur-topa.704
Ancestors: System-topa.704, System.spur-eem.703
System-topa.704 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Retain scrollBar look now that the pref actually does something (as of Morphic-mt.758)
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007594.html
Name: System.spur-mt.705
Ancestors: System-mt.705, System.spur-topa.704
System-mt.705 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Auto-generated method for #gradientMenu removed because of postload-script in Morphic-mt.764.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007595.html
Name: System.spur-mt.706
Ancestors: System-mt.706, System.spur-mt.705
System-mt.706 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Re-activated possibility to have multiple categories for a single preference. Worked for old-style preferences, now works again for pragma-style preferences. Use #categoryList: instead of #category: in the pragma and provide an array of strings (or symbols).
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007596.html
Name: System.spur-mt.707
Ancestors: System-mt.707, System.spur-mt.706
System-mt.707 patched for Spur by SpurBootstrapMonticelloPackagePatcher Cog-eem.240
Old-style preference #roundedMenuCorners removed. See Morphic-mt.766 postload-script.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007597.html
Name: Tools-topa.540
Ancestors: Tools-mt.539
Fix ToolIcons to work with PseudoClasses used by File Contents Browser
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007598.html
Name: Morphic-mt.770
Ancestors: Morphic-mt.769
Convenience items added to "Windows" menu in world main docking bar to close multiple or all windows at once.
Idea: Clean up the whole world and start a new task with few clicks.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007599.html
Name: Morphic-mt.771
Ancestors: Morphic-mt.770
Fall-back implementations for drawing rounded rectangles added to abstract Canvas class. Fixes problems with color-mapping canvases.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007600.html
Name: Morphic-mt.772
Ancestors: Morphic-mt.771
Object explorer wrappers prepared to be used in columns. Some comments for tree morph updated.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007601.html
Name: Tools-mt.541
Ancestors: Tools-topa.540
Object explorer now supports two columns: one for the keys and one for the values. Icons are shown in the second column.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007602.html
Name: Morphic-topa.773
Ancestors: Morphic-mt.772
Adapt ColorMappingCanvas and children to also map fill styles.
Rounded-Corner rects are now correctly handled.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2015-March/007603.html
Name: TrueType-topa.30
Ancestors: TrueType-bf.29
Cope for some ttc fonts actually being PostScript-Based opentype fonts our TTF code cannot deal with.
Also: Include system fonts on OS X
=============================================
Tobias Pape uploaded a new version of TrueType to project The Trunk:
http://source.squeak.org/trunk/TrueType-topa.30.mcz
==================== Summary ====================
Name: TrueType-topa.30
Author: topa
Time: 6 March 2015, 10:52:16.177 pm
UUID: cf2b3756-eef6-488c-9072-3b357b939970
Ancestors: TrueType-bf.29
Cope for some ttc fonts actually being PostScript-Based opentype fonts our TTF code cannot deal with.
Also: Include system fonts on OS X
=============== Diff against TrueType-bf.29 ===============
Item was changed:
----- Method: TTFileDescription class>>fontPathsDo: (in category 'font paths') -----
fontPathsDo: aBlock
"Evaluate aBlock with all of the font paths that should be searched on the current platform"
"Start with the current directory"
aBlock value: FileDirectory default pathName.
"Then subdirectory 'fonts'"
aBlock value: (FileDirectory default directoryNamed: 'fonts') pathName.
"Platform specific directories"
Smalltalk platformName caseOf:{
['Win32'] -> [
"Standard Windows fonts directory"
aBlock value: 'C:\Windows\Fonts'.
].
['Mac OS'] -> [
+ "Standard system fonts directories"
+ #('/System/Library/Fonts' '/Library/Fonts') do: [:fontDir |
+ aBlock value: fontDir].
- "Standard system fonts directory"
- aBlock value: '/Library/Fonts'.
].
['unix'] -> [ | base |
"Standard fonts are in /usr/share/fonts/*"
base := '/usr/share/fonts'.
(FileDirectory on: base) directoryNames
do:[:dn| aBlock value: base, '/', dn].
].
} otherwise:[].
!
Item was changed:
----- Method: TTFileDescription>>on:offset: (in category 'initialize') -----
on: aFileName offset: fontOffset
"Initialize the receiver from a file name"
fileName := aFileName.
fileOffset := fontOffset.
self withFileDo:[:fontFile|
+ "Some TTC fonts may actually be collection of PostScript-Based OpenType fonts"
+ (self findTable: 'CFF ' in: fontFile)
+ ifTrue: [^ nil]
+ ifFalse: [fontFile position: fileOffset "reset"].
"Some bitmap fonts are called .ttf; skip anything that doesn't have a header"
(self findTable: 'head' in: fontFile) ifFalse:[^nil].
self processFontHeaderTable: fontFile.
(self findTable: 'maxp' in: fontFile)
ifFalse:[^self error: 'File does not have a profile table'].
self processMaximumProfileTable: fontFile.
(self findTable: 'name' in: fontFile)
ifFalse:[^self error: 'File does not have a naming table'].
self processNamingTable: fontFile.
(self findTable: 'hhea' in: fontFile)
ifFalse:[^self error: 'File does not have a horizontal header table'].
self processHorizontalHeaderTable: fontFile.
(self findTable: 'OS/2' in: fontFile)
ifTrue:[self processOS2Table: fontFile].
(self findTable: 'hmtx' in: fontFile)
ifFalse:[^self error: 'File does not have a horizontal header table'].
hmtxTableOffset := fontFile position.
(self findTable: 'loca' in: fontFile)
ifFalse:[^self error: 'File does not have a naming table'].
indexToLocOffset := fontFile position.
(self findTable: 'glyf' in: fontFile)
ifFalse:[^self error: 'File does not have a naming table'].
glyphTableOffset := fontFile position.
(self findTable: 'cmap' in: fontFile)
ifFalse:[^self error: 'File does not have a header table'].
self processCharacterMappingTable: fontFile.
].!
Hi All,
recent instability seems to have been cured. Please find new VMs at
http://www.mirandabanda.org/files/Cog/VM/VM.r3266. For Squeakers, these
are close to release candidates for the upcoming 5.0 release. I have one
last modification to do with free space handling on start-up in Spur (the
current VMs over-allocate free space), and maybe a minor speed-up of the
LargeIntegersPlugin; other than that I intend bug fixes only.
CogVM binaries as per VMMaker.oscog-eem.1085/r3266
Avoid duplication in fetching active process and scheduler in
process-switch machinery.
Take advantage of endianness for simpler large integer initialization.
Simplify primitiveMakePoint. Include primitiveMethodXray to introspect on
Cog state of methods.
Refactor positive32BitIntegerFor: and signed32BitIntegerFor: in the
realization that these
reduce to essentially integerObjectOf: in 64-bit Spur. The idea is to
inline if in 64-bit Spur
but not if in the 32-bit VMs. Add notOption: processing to allow excluding
noInlineSigned32BitIntegerFor: et al. Add hasSixtyFourBitImmediates to no
longer assume that
wordSize = 8 implies 64-bit immediates.
Use positiveMachineIntegerFor: in place of positive32BitIntegerFor: in some
plugins.
Simplify primitiveDisplayString given isArray:.
Simplify two B3DAcceleratorPlugin prims given topRemappableOop and isArray:
Slang:
Changes to type inferrence/propagation and inlining to better support
64-bit Spur.
See change log of VMMaker.oscog in 1067-1085 range for exhaustive details.
--
best,
Eliot
Hi,
Am 06.03.2015 um 07:44 schrieb commits(a)source.squeak.org:
>
> Idea: Clean up the whole world and start a new task with few clicks.
>
>
In this case I usually open a new Project :-)
Cheers,
Herbert
Hi
On 06.03.2015, at 11:12, commits(a)source.squeak.org wrote:
> + [(cell := scanner upTo: Character tab) notEmpty]
> + whileTrue: [column := column + 1. column = index ifTrue: [^ cell]].
> +
what about #findTokens: here?
Best
-Tobias
Marcel Taeumel uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-mt.772.mcz
==================== Summary ====================
Name: Morphic-mt.772
Author: mt
Time: 6 March 2015, 12:10:55.322 pm
UUID: 01c63ecd-5c74-5946-b459-75db9e82725a
Ancestors: Morphic-mt.771
Object explorer wrappers prepared to be used in columns. Some comments for tree morph updated.
=============== Diff against Morphic-mt.771 ===============
Item was changed:
ListItemWrapper subclass: #ObjectExplorerWrapper
instanceVariableNames: 'itemName parent'
+ classVariableNames: 'ShowContentsInColumns'
- classVariableNames: ''
poolDictionaries: ''
category: 'Morphic-Explorer'!
!ObjectExplorerWrapper commentStamp: '<historical>' prior: 0!
Contributed by Bob Arning as part of the ObjectExplorer package.
!
Item was added:
+ ----- Method: ObjectExplorerWrapper class>>showContentsInColumns (in category 'preferences') -----
+ showContentsInColumns
+ <preference: 'Use columns in object explorer'
+ categoryList: #(Tools exploring)
+ description: 'If enabled, the object explorer will show key in the first column and values in the second column.'
+ type: #Boolean>
+ ^ ShowContentsInColumns ifNil: [true]!
Item was added:
+ ----- Method: ObjectExplorerWrapper class>>showContentsInColumns: (in category 'preferences') -----
+ showContentsInColumns: aBoolean
+
+ ShowContentsInColumns := aBoolean.!
Item was changed:
----- Method: ObjectExplorerWrapper>>asString (in category 'converting') -----
asString
+ | explorerString string separator |
- | explorerString string |
explorerString :=
[item asExplorerString]
on: Error
do: ['<error: ', item class name, ' in asExplorerString: evaluate "' , itemName , ' asExplorerString" to debug>'].
+ separator := self class showContentsInColumns
+ ifTrue: [String tab]
+ ifFalse: [': '].
+ string := (itemName ifNotNil: [itemName, separator] ifNil: ['']) , explorerString.
- string := (itemName ifNotNil: [itemName , ': '] ifNil: ['']) , explorerString.
(string includes: Character cr)
ifTrue: [^ string withSeparatorsCompacted].
^ string!
Item was changed:
----- Method: ObjectExplorerWrapper>>icon (in category 'accessing') -----
icon
"Answer a form to be used as icon"
^ Preferences visualExplorer
+ ifTrue: [(item iconOrThumbnailOfSize: 12)
+ ifNil: [self class showContentsInColumns
+ ifTrue: [ToolIcons iconNamed: #blank]
+ ifFalse: [nil]]]
- ifTrue: [item iconOrThumbnailOfSize: 16]
ifFalse: [nil]!
Item was changed:
----- Method: SimpleHierarchicalListMorph>>autoDeselect: (in category 'initialization') -----
autoDeselect: trueOrFalse
+ "When selecting a selected item, it will be deselected. See #mouseUp:."
+
- "Enable/disable autoDeselect (see class comment)"
autoDeselect := trueOrFalse.!
Item was changed:
----- Method: SimpleHierarchicalListMorph>>columns: (in category 'accessing') -----
columns: anArray
+ "You can specify columns or specs for columns. This depends on the actual morph that is used as item. ObjectExplorers produce items that support exact numbers, blocks, and nil for max width."
+
-
columns := anArray!