[squeak-dev] The Inbox: Tools-fbs.319.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Mar 17 11:20:33 UTC 2011

A new version of Tools was added to project The Inbox:

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

Name: Tools-fbs.319
Author: fbs
Time: 17 March 2011, 8:04:19.952 am
UUID: 5e75e863-05c2-7940-9225-65cba1947970
Ancestors: Tools-fbs.318

#selectMessageNamed:, and adding setters for selectedMessageName in the rest of the safe places where we directly set messageListIndex.

=============== Diff against Tools-fbs.318 ===============

Item was changed:
  ----- Method: Browser>>contentsSelection (in category 'accessing') -----
  	"Return the interval of text in the code pane to select when I set the pane's contents"
+ 	self hasMessageCategorySelected & (self hasMessageSelected not)
- 	messageCategoryListIndex > 0 & (messageListIndex = 0)
  		ifTrue: [^ 1 to: 500]	"entire empty method template"
  		ifFalse: [^ 1 to: 0]  "null selection"!

Item was changed:
  ----- Method: Browser>>hasMessageSelected (in category 'message list') -----
+ 	^ self selectedMessageName notNil.!
- 	^ messageListIndex ~= 0.!

Item was added:
+ ----- Method: Browser>>selectMessageNamed: (in category 'message list') -----
+ selectMessageNamed: aSymbolOrString
+ 	| name |
+ 	name := aSymbolOrString ifNil: [ 0] ifNotNil: [ aSymbolOrString asSymbol ].
+ 	self messageListIndex: (self messageList indexOf: name).!

Item was changed:
  ----- Method: Browser>>selectSystemCategory: (in category 'system category list') -----
  selectSystemCategory: aSymbol
  	"Set the selected system category. Update all other selections to be deselected."
  	selectedSystemCategory := aSymbol.
  	selectedClassName := nil.
  	messageCategoryListIndex := 0.
  	messageListIndex := 0.
+ 	selectedMessageName := nil.
  	self editSelection: ( aSymbol isNil ifTrue: [#none] ifFalse: [#newClass]).
  	metaClassIndicated := false.
  	self setClassOrganizer.
  	contents := nil.
  	self changed: #systemCategorySelectionChanged.
  	self changed: #systemCategoryListIndex.	"update my selection"
  	self changed: #classList.
  	self changed: #messageCategoryList.
  	self changed: #messageList.
  	self changed: #relabel.
  	self contentsChanged!

Item was changed:
  ----- Method: Browser>>veryDeepInner: (in category 'copying') -----
  veryDeepInner: deepCopier
  	"Copy all of my instance variables.  Some need to be not copied at all, but shared.  See DeepCopier class comment."
  super veryDeepInner: deepCopier.
  "systemOrganizer := systemOrganizer. 	clone has the old value. we share it"
  "classOrganizer := classOrganizer		clone has the old value. we share it"
  "metaClassOrganizer 	:= metaClassOrganizer	clone has the old value. we share it"
  selectedSystemCategory := selectedSystemCategory veryDeepCopyWith: deepCopier.
  selectedClassName := selectedClassName veryDeepCopyWith: deepCopier.
  messageCategoryListIndex := messageCategoryListIndex veryDeepCopyWith: deepCopier.
  messageListIndex := messageListIndex veryDeepCopyWith: deepCopier.
+ selectedMessageName := selectedMessageName veryDeepCopyWith: deepCopier.
  editSelection := editSelection veryDeepCopyWith: deepCopier.
  metaClassIndicated := metaClassIndicated veryDeepCopyWith: deepCopier.

Item was changed:
  ----- Method: HierarchyBrowser>>assureSelectionsShow (in category 'class list') -----
  	"This is a workaround for the fact that a hierarchy browser, when launched, often does not show the selected class"
+ 	| saveCatIndex saveMsgName |
- 	| saveCatIndex saveMsgIndex |
  	saveCatIndex := messageCategoryListIndex.
+ 	saveMsgName := self selectedMessageName.
- 	saveMsgIndex := messageListIndex.
  	self selectClassNamed: selectedClassName.
  	self messageCategoryListIndex: saveCatIndex.
+ 	self selectMessageNamed: saveMsgName!
- 	self messageListIndex: saveMsgIndex!

Item was changed:
  ----- Method: PackagePaneBrowser>>packageListIndex: (in category 'package list') -----
  packageListIndex: anInteger 
  	"Set anInteger to be the index of the current package selection."
  	packageListIndex := anInteger.
  	anInteger = 0
  		ifFalse: [package := self packageList at: packageListIndex].
  	messageCategoryListIndex := 0.
  	self selectSystemCategory: nil.
  	messageListIndex := 0.
+ 	selectedMessageName := nil.
  	selectedClassName := nil.
  	self setClassOrganizer.
  	self changed: #packageSelectionChanged.
  	self changed: #packageListIndex.	"update my selection"
  	self changed: #systemCategoryList.	"update the category list"
  	self selectSystemCategory: nil.	"update category list selection"

More information about the Squeak-dev mailing list