[squeak-dev] The Trunk: MorphicExtras-ct.266.mcz
commits at source.squeak.org
commits at source.squeak.org
Thu Apr 15 14:54:07 UTC 2021
Marcel Taeumel uploaded a new version of MorphicExtras to project The Trunk:
http://source.squeak.org/trunk/MorphicExtras-ct.266.mcz
==================== Summary ====================
Name: MorphicExtras-ct.266
Author: ct
Time: 21 September 2019, 4:37:53.910719 pm
UUID: 925300c8-ccdd-3e44-9274-d5ccf593822b
Ancestors: MorphicExtras-mt.263
Refactor ScorePlayerMorph initialization
As the current #onScorePlayer:title: implementation does not use the title, I think we can deprecate it? In this case, there are further senders in the image which need to be updated. If you confirm that, I will also move the method into *60Deprecated.
Please note this commit also includes some convenience constructors apart from deprectations.
=============== Diff against MorphicExtras-mt.263 ===============
Item was added:
+ ----- Method: ScorePlayerMorph class>>on: (in category 'system hookup') -----
+ on: aScore
+
+ | player |
+ player := ScorePlayer onScore: aScore.
+ ^ self new onScorePlayer: player!
Item was added:
+ ----- Method: ScorePlayerMorph class>>openOn: (in category 'system hookup') -----
+ openOn: aScore
+
+ (self on: aScore) openInWorld.!
Item was changed:
----- Method: ScorePlayerMorph>>addNewScore (in category 'menu') -----
addNewScore
"Open a MIDI score and re-init controls..."
| score player |
score := MIDIScore new.
score tracks: (Array with: Array new).
score trackInfo: #('Instrument').
player := ScorePlayer onScore: score.
+ ^self onScorePlayer: player!
- ^self onScorePlayer: player title: 'new'!
Item was changed:
----- Method: ScorePlayerMorph>>addTrackToScore (in category 'menu') -----
addTrackToScore
"add a instrument track to the current score"
| score tracks trackInfo player |
score := scorePlayer score.
tracks := score tracks copyWith:#().
score tracks: tracks.
trackInfo := score trackInfo copyWith: 'Instrument'.
score trackInfo: trackInfo.
player := ScorePlayer onScore: score.
+ ^self onScorePlayer: player!
- ^self onScorePlayer: player title: 'new'!
Item was changed:
----- Method: ScorePlayerMorph>>initialize (in category 'initialization') -----
initialize
"initialize the state of the receiver"
super initialize.
""
self listDirection: #topToBottom;
wrapCentering: #center;
cellPositioning: #topCenter;
hResizing: #shrinkWrap;
vResizing: #shrinkWrap;
layoutInset: 3;
+ onScorePlayer: ScorePlayer new initialize;
- onScorePlayer: ScorePlayer new initialize title: ' ';
extent: 20 @ 20 !
Item was added:
+ ----- Method: ScorePlayerMorph>>onScorePlayer: (in category 'initialization') -----
+ onScorePlayer: aScorePlayer
+ | divider col r |
+ scorePlayer := aScorePlayer.
+ scorePlayer ifNotNil:
+ [scorePlayer reset.
+ instrumentSelector := Array new: scorePlayer score tracks size].
+
+ self removeAllMorphs.
+ self addMorphBack: self makeControls.
+ scorePlayer ifNil: [^ self].
+
+ r := self makeRow
+ hResizing: #spaceFill;
+ vResizing: #shrinkWrap.
+ r addMorphBack: self rateControl;
+ addMorphBack: (Morph newBounds: (0 at 0 extent: 20 at 0) color: Color transparent);
+ addMorphBack: self volumeControl.
+ self addMorphBack: r.
+ self addMorphBack: self scrollControl.
+
+ col := AlignmentMorph newColumn color: color; layoutInset: 0.
+ self addMorphBack: col.
+ 1 to: scorePlayer trackCount do: [:trackIndex |
+ divider := AlignmentMorph new
+ extent: 10 at 1;
+ layoutInset: 0;
+ borderStyle: (BorderStyle raised width: 1);
+ color: color;
+ hResizing: #spaceFill;
+ vResizing: #rigid.
+ col addMorphBack: divider.
+ col addMorphBack: (self trackControlsFor: trackIndex)].
+
+ LastMIDIPort ifNotNil: [
+ "use the most recently set MIDI port"
+ scorePlayer openMIDIPort: LastMIDIPort].!
Item was changed:
----- Method: ScorePlayerMorph>>onScorePlayer:title: (in category 'initialization') -----
onScorePlayer: aScorePlayer title: scoreName
- | divider col r |
- scorePlayer := aScorePlayer.
- scorePlayer ifNotNil:
- [scorePlayer reset.
- instrumentSelector := Array new: scorePlayer score tracks size].
+ self deprecated: 'Use #onScorePlayer:'.
+ ^ self onScorePlayer: aScorePlayer
- self removeAllMorphs.
- self addMorphBack: self makeControls.
- scorePlayer ifNil: [^ self].
-
- r := self makeRow
- hResizing: #spaceFill;
- vResizing: #shrinkWrap.
- r addMorphBack: self rateControl;
- addMorphBack: (Morph newBounds: (0 at 0 extent: 20 at 0) color: Color transparent);
- addMorphBack: self volumeControl.
- self addMorphBack: r.
- self addMorphBack: self scrollControl.
-
- col := AlignmentMorph newColumn color: color; layoutInset: 0.
- self addMorphBack: col.
- 1 to: scorePlayer trackCount do: [:trackIndex |
- divider := AlignmentMorph new
- extent: 10 at 1;
- layoutInset: 0;
- borderStyle: (BorderStyle raised width: 1);
- color: color;
- hResizing: #spaceFill;
- vResizing: #rigid.
- col addMorphBack: divider.
- col addMorphBack: (self trackControlsFor: trackIndex)].
-
- LastMIDIPort ifNotNil: [
- "use the most recently set MIDI port"
- scorePlayer openMIDIPort: LastMIDIPort].
!
More information about the Squeak-dev
mailing list
|