The Trunk: MorphicExtras-dtl.216.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: MorphicExtras-dtl.216.mcz

commits-2
David T. Lewis uploaded a new version of MorphicExtras to project The Trunk:
http://source.squeak.org/trunk/MorphicExtras-dtl.216.mcz

==================== Summary ====================

Name: MorphicExtras-dtl.216
Author: dtl
Time: 17 November 2017, 10:20:14.502303 pm
UUID: 58c41a67-c2cb-4776-9cc3-c9edbf70f443
Ancestors: MorphicExtras-dtl.215

Remove unnecessary references to global World.

=============== Diff against MorphicExtras-dtl.215 ===============

Item was changed:
  ----- Method: AtomMorph class>>example (in category 'examples') -----
  example
  "
  AtomMorph example
  "
+ |a world|
+ world := Project current world.
- |a|
  a := AtomMorph new openInWorld.
  a color: Color random.
+   [1000 timesRepeat:  [a bounceIn: world bounds.  (Delay forMilliseconds: 50) wait].
-   [1000 timesRepeat:  [a bounceIn: World bounds.  (Delay forMilliseconds: 50) wait].
  a delete] fork.!

Item was changed:
  ----- Method: InternalThreadNavigationMorph class>>openThreadNamed:atIndex: (in category 'known threads') -----
  openThreadNamed: nameOfThread atIndex: anInteger
 
  | coll nav |
 
  coll := self knownThreads at: nameOfThread ifAbsent: [^self].
+ nav := Project current world
- nav := World
  submorphThat: [ :each | (each isKindOf: self) and: [each threadName = nameOfThread]]
  ifNone: [
  nav := self basicNew.
  nav
  listOfPages: coll;
  threadName: nameOfThread index: anInteger;
  initialize;
  openInWorld;
  positionAppropriately.
  ^self
  ].
  nav
  listOfPages: coll;
  threadName: nameOfThread index: anInteger;
  removeAllMorphs;
  addButtons.
 
  !

Item was changed:
  ----- Method: InternalThreadNavigationMorph class>>openThreadNamed:atIndex:beKeyboardHandler: (in category 'known threads') -----
  openThreadNamed: nameOfThread atIndex: anInteger beKeyboardHandler: aBoolean
  "Activate the thread of the given name, from the given index; set it up to be navigated via desktop keys if indicated"
 
  | coll nav |
 
  coll := self knownThreads at: nameOfThread ifAbsent: [^self].
+ nav := Project current world
- nav := World
  submorphThat: [ :each | (each isKindOf: self) and: [each threadName = nameOfThread]]
  ifNone:
  [nav := self basicNew.
  nav
  listOfPages: coll;
  threadName: nameOfThread index: anInteger;
  initialize;
  openInWorld;
  positionAppropriately.
  aBoolean ifTrue: [ActiveWorld keyboardNavigationHandler: nav].
  ^ self].
  nav
  listOfPages: coll;
  threadName: nameOfThread index: anInteger;
  removeAllMorphs;
  addButtons.
  aBoolean ifTrue: [ActiveWorld keyboardNavigationHandler: nav]
 
  !

Item was changed:
  ----- Method: PostscriptCanvas class>>fontSampler (in category 'font mapping') -----
  fontSampler
  "Produces a Postscript .eps file on disk, returns a Morph."
  "PostscriptCanvas fontSampler"
  "PostscriptCanvas fontSampler openInWorld"
  | morph file |
  morph := Morph new
  layoutPolicy: TableLayout new;
  listDirection: #topToBottom;
  wrapDirection: #leftToRight;
  hResizing: #shrinkWrap;
  vResizing: #shrinkWrap;
  color: Color white.
  TextStyle actualTextStyles keysAndValuesDo: [ :styleName :style |
  { style fontArray first. style fontArray last } do: [ :baseFont | | info |
  0 to: 2 do: [ :i | | font string string2 textMorph row |
  font := baseFont emphasized: i.
  (i isZero or: [ font ~~ baseFont ]) ifTrue: [
  string := font fontNameWithPointSize.
  row := Morph new
  layoutPolicy: TableLayout new;
  listDirection: #topToBottom;
  hResizing: #shrinkWrap;
  vResizing: #shrinkWrap;
  cellSpacing: 20@0;
  color: Color white.
 
  textMorph := TextMorph new hResizing: #spaceFill; backgroundColor: Color white; beAllFont: font; contentsAsIs: string.
  row addMorphBack: (textMorph imageForm asMorph).
 
  info := self postscriptFontInfoForFont: font.
  string2 := String streamContents: [ :stream |
  stream nextPutAll: info first; space; print: (font pixelSize * info second) rounded.
  ].
  textMorph := TextMorph new hResizing: #spaceFill; backgroundColor: Color white; beAllFont: font; contentsAsIs: string2.
  row addMorphBack: textMorph.
 
  morph addMorphBack: row.
  ]
  ]
  ]
  ].
+ morph bounds: Project current world bounds.
- morph bounds: World bounds.
  morph layoutChanged; fullBounds.
  file := (FileDirectory default newFileNamed: 'PSFontSampler.eps').
  Cursor wait showWhile: [
  file nextPutAll: (EPSCanvas morphAsPostscript: morph) ].
  ^morph!

Item was changed:
  ----- Method: ProjectNavigationMorph>>findAProject (in category 'the actions') -----
  findAProject
 
  FileList2
+ morphicViewProjectLoader2InWorld: self world
- morphicViewProjectLoader2InWorld: World
  reallyLoad: true
  dirFilterType: #initialDirectoryList!

Item was changed:
  ----- Method: ProjectSorterMorph>>addControls (in category 'initialization') -----
  addControls
  "Add the control bar at the top of the tool."
 
  | b r partsBinButton newButton aWrapper |
+ newButton := ImageMorph new image: (self world project makeThumbnail scaledToSize: 48@36).
- newButton := ImageMorph new image: (World project makeThumbnail scaledToSize: 48@36).
  newButton on: #mouseDown send: #insertNewProject: to: self.
  newButton setBalloonText: 'Make a new Project' translated.
  (partsBinButton := UpdatingThreePhaseButtonMorph checkBox)
  target: self;
  actionSelector: #togglePartsBinStatus;
  arguments: #();
  getSelector: #getPartsBinStatus.
  (r := AlignmentMorph newRow)
  color: Color transparent;
  borderWidth: 0;
  layoutInset: 0;
  cellInset: 10@0;
  wrapCentering: #center;
  cellPositioning: #leftCenter;
  hResizing: #shrinkWrap;
  vResizing: #shrinkWrap;
  extent: 5@5.
  b := SimpleButtonMorph new target: self; color: self defaultColor darker;
  borderColor: Color black.
  r addMorphBack: (self wrapperFor: (b label: 'Okay' translated font: ScriptingSystem fontForEToyButtons; actionSelector: #acceptSort)).
  b := SimpleButtonMorph new target: self; color: self defaultColor darker;
  borderColor: Color black.
  r addMorphBack: (self wrapperFor: (b label: 'Cancel' translated font: ScriptingSystem fontForEToyButtons; actionSelector: #delete));
  addTransparentSpacerOfSize: 8 @ 0;
  addMorphBack: (self wrapperFor: (newButton));
  addTransparentSpacerOfSize: 8 @ 0.
 
  aWrapper := AlignmentMorph newRow beTransparent.
  aWrapper cellInset: 0; layoutInset: 0; borderWidth: 0.
  aWrapper
  addMorphBack: (self wrapperFor: partsBinButton);
  addMorphBack: (self wrapperFor: (StringMorph contents: 'Parts bin' translated font: ScriptingSystem fontForEToyButtons) lock).
  r addMorphBack: aWrapper.
 
  self addMorphFront: r.
  !

Item was changed:
  ----- Method: SqueakPage>>prePurge (in category 'saving') -----
  prePurge
  "Return self if ready to be purged, or nil if not"
 
  self isContentsInMemory ifFalse: [^ nil].
  contentsMorph ifNil: [^ nil].  "out already"
  url ifNil: [^ nil]. "just to be safe"
+ ^ (Project current world ~~ nil and: [contentsMorph world == Project current world])
- ^ (Project current world ~~ nil and: [contentsMorph world == World])
  ifTrue: [nil "showing now"] ifFalse: [self]!