[squeak-dev] The Trunk: EToys-dtl.87.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Feb 11 17:09:01 UTC 2012


David T. Lewis uploaded a new version of EToys to project The Trunk:
http://source.squeak.org/trunk/EToys-dtl.87.mcz

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

Name: EToys-dtl.87
Author: dtl
Time: 11 February 2012, 12:08:07.755 pm
UUID: bd55f46b-4e07-4ff6-80fd-1538e83bccd1
Ancestors: EToys-ul.86

Make Connectors removable (almost).

Morph>>connections and Morph>>wantsEmbeddingsVocabulary are provided by package Connectors. Remove the stub implementations from Morphic and update Morph>>wantsConnectionVocabulary and Morph>>filterViewerCategoryDictionary: in package Etoys with #respondsTo: checks to break the package dependencies.

Update ObjectPropertiesMorph>>rebuild to match the version provided in Connectors. Move to method category "connectors-visual properties" as a reminder of the override in Connectors.

Follow up needed in Connectors:
Remove Morph>>dismissMorph override
Remove PasteUpMorph>>tellAllContents: override
Remove ObjectPropertiesMorph>>rebuild override

=============== Diff against EToys-ul.86 ===============

Item was changed:
  ----- Method: Morph>>filterViewerCategoryDictionary: (in category '*Etoys-scripting') -----
  filterViewerCategoryDictionary: dict
  	"dict has keys of categories and values of priority.
  	You can re-order or remove categories here."
  
  	self wantsConnectionVocabulary
  		ifFalse: [ dict removeKey: #'connections to me' ifAbsent: [].
  			dict removeKey: #connection ifAbsent: []].
  	self wantsConnectorVocabulary
  		ifFalse: [ dict removeKey: #connector ifAbsent: [] ].
+ 	((self respondsTo: #wantsEmbeddingsVocabulary) "package Connectors"
+ 		and: [self perform: #wantsEmbeddingsVocabulary])
+ 			ifFalse: [dict removeKey: #embeddings ifAbsent: []].
- 	self wantsEmbeddingsVocabulary
- 		ifFalse: [dict removeKey: #embeddings ifAbsent: []].
  	Preferences eToyFriendly
  		ifTrue:
  			[dict removeKey: #layout ifAbsent: []].
  	(Preferences eToyFriendly or: [self isWorldMorph not]) ifTrue:
  		[dict removeKey: #preferences ifAbsent: []].!

Item was changed:
  ----- Method: Morph>>wantsConnectionVocabulary (in category '*Etoys-scripting') -----
  wantsConnectionVocabulary
  	submorphs ifNil: [ ^true ].	"called from EToyVocabulary>>initialize after basicNew"
  
  	^ (Preferences valueOfFlag: #alwaysShowConnectionVocabulary)
+ 		or: [ (self respondsTo: #connections)
+ 				and: [(self perform: #connections) isEmpty not ] ]!
- 		or: [ self connections isEmpty not ]!

Item was changed:
+ ----- Method: ObjectPropertiesMorph>>rebuild (in category 'connectors-visual properties') -----
- ----- Method: ObjectPropertiesMorph>>rebuild (in category 'as yet unclassified') -----
  rebuild
+ 	| buttons |
+ 	
- 
  	self removeAllMorphs.
  	self addARow: {
  		self lockedString: ('Properties for {1}' translated format: {myTarget name}).
  	}.
  	self addARow: {
  		self inAColumn: {
  			self paneForCornerRoundingToggle.
  			self paneForStickinessToggle.
  			self paneForLockedToggle.
  		}.
  	}.
  
  	self addARow: {
  		self paneForMainColorPicker.
  		self paneFor2ndGradientColorPicker.
  	}.
  	self addARow: {
  		self paneForBorderColorPicker.
  		self paneForShadowColorPicker.
  	}.
  
+ 	buttons := OrderedCollection new.
+ 	buttons addAll: {
+ 	self 
- 	self addARow: {
- 		self 
  			buttonNamed: 'Accept' translated action: #doAccept color: color lighter 
  			help: 'keep changes made and close panel' translated.
  		self 
  			buttonNamed: 'Cancel' translated action: #doCancel color: color lighter 
  			help: 'cancel changes made and close panel' translated.
+ 	}.
+ 	
+ 	self addOptionalButtonsTo: buttons.
+ 	self addARow: buttons.
- 	}, self rebuildOptionalButtons.
  
  	thingsToRevert := Dictionary new.
  	"thingsToRevert at: #fillStyle: put: myTarget fillStyle."
  	myTarget isSystemWindow ifTrue: [
  		thingsToRevert at: #setWindowColor: put: myTarget paneColorToUse
  	].
  	thingsToRevert at: #hasDropShadow: put: myTarget hasDropShadow.
  	thingsToRevert at: #shadowColor: put: myTarget shadowColor.
  	(myTarget respondsTo: #borderColor:) ifTrue: [
  		thingsToRevert at: #borderColor: put: myTarget borderColor.
  	].
  
  	thingsToRevert at: #borderWidth: put: myTarget borderWidth.
  	thingsToRevert at: #cornerStyle: put: myTarget cornerStyle.
  	thingsToRevert at: #sticky: put: myTarget isSticky.
  	thingsToRevert at: #lock: put: myTarget isLocked.
  !



More information about the Squeak-dev mailing list