[Pkg] The Trunk: Tools-topa.558.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Mar 25 12:24:39 UTC 2015


Tobias Pape uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-topa.558.mcz

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

Name: Tools-topa.558
Author: topa
Time: 25 March 2015, 1:24:14.025 pm
UUID: 22b48459-f2b7-444f-b7b1-8c8b37220819
Ancestors: Tools-topa.557, Tools-topa.556

Merge.

=============== Diff against Tools-topa.557 ===============

Item was changed:
  ----- Method: Browser>>classListMenu: (in category 'class functions') -----
  classListMenu: aMenu 
+ 	"Conveniently fit for backward compatibility with old browers stored in image segments"
+ 	<classListMenuShifted: false>
+ 	aMenu addList: #(
+ 		-
+ 		('browse full (b)'			browseMethodFull)
+ 		('browse hierarchy (h)'		spawnHierarchy)
+ 		('browse protocol (p)'		browseFullProtocol)
+ 		-
+ 		('printOut'					printOutClass)
+ 		('fileOut'					fileOutClass)
+ 		-
+ 		('show hierarchy'			hierarchy)
+ 		('show definition'			editClass)
+ 		('show comment'			editComment)
+ 		-
+ 		('references... (r)'			browseVariableReferences)
+ 		('assignments... (a)'			browseVariableAssignments)
+ 		('class refs (N)'				browseClassRefs)
+ 		-
+ 		('rename class ...'			renameClass)
+ 		('copy class'				copyClass)
+ 		('remove class (x)'			removeClass)
+ 		-
+ 		('find method...'				findMethod)
+ 		-
+ 		('more...'					offerShiftedClassListMenu)).
+ 	^ aMenu
+ !
- 	"For backward compatibility with old browers stored in image segments"
- 
- 	^ self classListMenu: aMenu shifted: false!

Item was changed:
  ----- Method: Browser>>classListMenu:shifted: (in category 'class functions') -----
  classListMenu: aMenu shifted: shifted
  	"Set up the menu to apply to the receiver's class list, honoring the #shifted boolean"
+ 	^ self menu: aMenu for: #(classListMenu classListMenuShifted:) shifted: shifted.
- 	self 
- 		menuHook: aMenu 
- 		named: #classListMenu 
- 		shifted: shifted.
- 	Preferences useOnlyServicesInMenu ifTrue:[^aMenu].
- 	shifted ifTrue:[^ self shiftedClassListMenu: aMenu].
- 	aMenu addList: #(
- 		-
- 		('browse full (b)'			browseMethodFull)
- 		('browse hierarchy (h)'		spawnHierarchy)
- 		('browse protocol (p)'		browseFullProtocol)
- 		-
- 		('printOut'					printOutClass)
- 		('fileOut'					fileOutClass)
- 		-
- 		('show hierarchy'			hierarchy)
- 		('show definition'			editClass)
- 		('show comment'			editComment)
- 		-
- 		('references... (r)'			browseVariableReferences)
- 		('assignments... (a)'			browseVariableAssignments)
- 		('class refs (N)'				browseClassRefs)
- 		-
- 		('rename class ...'			renameClass)
- 		('copy class'				copyClass)
- 		('remove class (x)'			removeClass)
- 		-
- 		('find method...'				findMethod)
- 		-
- 		('more...'					offerShiftedClassListMenu)).
- 	^ aMenu
  !

Item was added:
+ ----- Method: Browser>>classListMenuHook:shifted: (in category 'pluggable menus - hooks') -----
+ classListMenuHook: aMenu shifted: aBoolean
+ 	<classListMenu>
+ 	^ self menuHook: aMenu named: #classListMenu shifted: aBoolean.
+ !

Item was removed:
- ----- Method: Browser>>codePaneMenu:shifted: (in category 'code pane') -----
- codePaneMenu: aMenu shifted: shifted 
- 	self 
- 		menuHook: aMenu 
- 		named: #codePaneMenu 
- 		shifted: shifted.
- 	Preferences useOnlyServicesInMenu ifTrue:[^aMenu].
- 	^super codePaneMenu: aMenu shifted: shifted.!

Item was added:
+ ----- Method: Browser>>mainMessageCategoryMenu: (in category 'message category functions') -----
+ mainMessageCategoryMenu: aMenu
+ 	<messageCategoryMenu>
+ 	^ aMenu addList: #(
+ 			('browse'						buildMessageCategoryBrowser)
+ 			('print out'						printOutMessageCategories)
+ 			('file out'						fileOutMessageCategories)
+ 			-
+ 			('reorganize'					editMessageCategories)
+ 			('alphabetize'					alphabetizeMessageCategories)
+ 			('remove empty categories'	removeEmptyCategories)
+ 			('categorize all uncategorized'	categorizeAllUncategorizedMethods)
+ 			('new category...'				addCategory)
+ 			-
+ 			('rename...'						renameCategory)
+ 			('remove'						removeMessageCategory));
+ 		yourself
+ !

Item was added:
+ ----- Method: Browser>>mainMessageListMenu: (in category 'message functions') -----
+ mainMessageListMenu: aMenu
+ 	<messageListMenuShifted: false>
+ 	^ aMenu addList: #(
+ 			('what to show...'			offerWhatToShowMenu)
+ 			('toggle break on entry'		toggleBreakOnEntry)
+ 			-
+ 			('browse full (b)' 			browseMethodFull)
+ 			('browse hierarchy (h)'			classHierarchy)
+ 			('browse method (O)'			openSingleMessageBrowser)
+ 			('browse protocol (p)'			browseFullProtocol)
+ 			-
+ 			('fileOut'					fileOutMessage)
+ 			('printOut'					printOutMessage)
+ 			('copy selector (c)'			copySelector)
+ 			('copy reference (C)'		copyReference)
+ 			-
+ 			('senders of... (n)'			browseSendersOfMessages)
+ 			('implementors of... (m)'		browseMessages)
+ 			('inheritance (i)'			methodHierarchy)
+ 			('versions (v)'				browseVersions)
+ 			-
+ 			('references... (r)'			browseVariableReferences)
+ 			('assignments... (a)'			browseVariableAssignments)
+ 			('class refs (N)'			browseClassRefs)
+ 			-
+ 			('remove method (x)'			removeMessage)
+ 			('explore method'			exploreMethod)
+ 			('inspect method'			inspectMethod));
+ 		yourself
+ !

Item was added:
+ ----- Method: Browser>>mainSystemCategoryMenu: (in category 'system category functions') -----
+ mainSystemCategoryMenu: aMenu
+ 	<systemCategoryMenu>
+ 	^ aMenu addList: #(
+ 			('find class... (f)'			findClass)
+ 			('back... (b)'				recent)
+ 			-
+ 			('browse all'			browseAllClasses)
+ 			('browse'				buildSystemCategoryBrowser)
+ 			-
+ 			('printOut'				printOutSystemCategory)
+ 			('fileOut'				fileOutSystemCategory)
+ 			-
+ 			('reorganize'			editSystemCategories)
+ 			('alphabetize'			alphabetizeSystemCategories)
+ 			-
+ 			('update'				updateSystemCategories)
+ 			('add item...'				addSystemCategory)
+ 			('rename...'				renameSystemCategory)
+ 			('remove'				removeSystemCategory));
+ 		yourself
+ !

Item was changed:
  ----- Method: Browser>>messageCategoryMenu: (in category 'message category functions') -----
  messageCategoryMenu: aMenu
+ 	^ self menu: aMenu for: #(messageCategoryMenu messageCategoryMenuShifted:)
- 	self 
- 		menuHook: aMenu 
- 		named: #messageCategoryMenu 
- 		shifted: false.
- 	Preferences useOnlyServicesInMenu ifTrue:[^aMenu].
- 	^ aMenu labels:
- 'browse
- printOut
- fileOut
- reorganize
- alphabetize
- remove empty categories
- categorize all uncategorized
- new category...
- rename...
- remove'
- 		lines: #(3 8)
- 		selections:
- 		#(buildMessageCategoryBrowser printOutMessageCategories fileOutMessageCategories
- 		editMessageCategories alphabetizeMessageCategories removeEmptyCategories
- 		categorizeAllUncategorizedMethods addCategory renameCategory removeMessageCategory)
  !

Item was added:
+ ----- Method: Browser>>messageCategoryMenuHook:shifted: (in category 'pluggable menus - hooks') -----
+ messageCategoryMenuHook: aMenu shifted: aBoolean
+ 	<messageCategoryMenu>
+ 	^ self menuHook: aMenu named: #messageCategoryMenu shifted: aBoolean.
+ !

Item was changed:
  ----- Method: Browser>>messageListMenu:shifted: (in category 'message functions') -----
  messageListMenu: aMenu shifted: shifted 
  	"Answer the message-list menu"
+ 	^ self menu: aMenu for: #(messageListMenu messageListMenuShifted:) shifted: shifted
+ !
- 	self 
- 		menuHook: aMenu 
- 		named: #messageListMenu 
- 		shifted: shifted.
- 	Preferences useOnlyServicesInMenu ifTrue:[^aMenu].
- 	shifted ifTrue: [^ self shiftedMessageListMenu: aMenu].
- 	aMenu addList: #(
- 			('what to show...'			offerWhatToShowMenu)
- 			('toggle break on entry'		toggleBreakOnEntry)
- 			-
- 			('browse full (b)' 			browseMethodFull)
- 			('browse hierarchy (h)'			classHierarchy)
- 			('browse method (O)'			openSingleMessageBrowser)
- 			('browse protocol (p)'			browseFullProtocol)
- 			-
- 			('fileOut'					fileOutMessage)
- 			('printOut'					printOutMessage)
- 			('copy selector (c)'			copySelector)
- 			('copy reference (C)'		copyReference)
- 			-
- 			('senders of... (n)'			browseSendersOfMessages)
- 			('implementors of... (m)'		browseMessages)
- 			('inheritance (i)'			methodHierarchy)
- 			('versions (v)'				browseVersions)
- 			-
- 			('references... (r)'			browseVariableReferences)
- 			('assignments... (a)'			browseVariableAssignments)
- 			('class refs (N)'			browseClassRefs)
- 			-
- 			('remove method (x)'			removeMessage)
- 			('explore method'			exploreMethod)
- 			('inspect method'			inspectMethod)
- 			-
- 			('more...'				shiftedYellowButtonActivity)).
- 	^ aMenu!

Item was added:
+ ----- Method: Browser>>messageListMenuHook:shifted: (in category 'pluggable menus - hooks') -----
+ messageListMenuHook: aMenu shifted: aBoolean
+ 	<messageListMenu>
+ 	^ self menuHook: aMenu named: #messageListMenu shifted: aBoolean.
+ !

Item was changed:
  ----- Method: Browser>>shiftedClassListMenu: (in category 'class functions') -----
  shiftedClassListMenu: aMenu
+ 	<classListMenuShifted: true>
  	"Set up the menu to apply to the receiver's class list when the shift key is down"
  
  	^ aMenu addList: #(
  			-
  			('unsent methods'			browseUnusedMethods	'browse all methods defined by this class that have no senders')
  			('unreferenced inst vars'	showUnreferencedInstVars	'show a list of all instance variables that are not referenced in methods')
  			('unreferenced class vars'	showUnreferencedClassVars	'show a list of all class variables that are not referenced in methods')
  			('subclass template'			makeNewSubclass		'put a template into the code pane for defining of a subclass of this class')
  			-
  			('sample instance'			makeSampleInstance		'give me a sample instance of this class, if possible')
  			('inspect instances'			inspectInstances			'open an inspector on all the extant instances of this class')
  			('inspect subinstances'		inspectSubInstances		'open an inspector on all the extant instances of this class and of all of its subclasses')
  			-
  			('add all meths to current chgs'		addAllMethodsToCurrentChangeSet
  																'place all the methods defined by this class into the current change set')
  			('create inst var accessors'	createInstVarAccessors	'compile instance-variable access methods for any instance variables that do not yet have them')
  			-
  			('more...'					offerUnshiftedClassListMenu	'return to the standard class-list menu'))!

Item was changed:
  ----- Method: Browser>>shiftedMessageListMenu: (in category 'message functions') -----
  shiftedMessageListMenu: aMenu
+ 	<messageListMenuShifted: true>
  	"Fill aMenu with the items appropriate when the shift key is held down"
  
  	aMenu addStayUpItem.
  	aMenu addList: #(
  		('toggle diffing (D)'						toggleDiffing)
  		('implementors of sent messages'			browseAllMessages)
  		-
  		('local senders of...'						browseLocalSendersOfMessages)
  		('local implementors of...'				browseLocalImplementors)
  		-
  		('spawn sub-protocol'					spawnProtocol)
  		('spawn full protocol'					spawnFullProtocol)
  		-
  		('sample instance'						makeSampleInstance)
  		('inspect instances'						inspectInstances)
  		('inspect subinstances'					inspectSubInstances)).
  
  	self addExtraShiftedItemsTo: aMenu.
  	aMenu addList: #(
  		-
  		('change category...'					changeCategory)).
  
  	self canShowMultipleMessageCategories ifTrue: [aMenu addList:
  		 #(('show category (C)'						showHomeCategory))].
  	aMenu addList: #(
  		-
  		('change sets with this method'			findMethodInChangeSets)
  		('revert to previous version'				revertToPreviousVersion)
  		('remove from current change set'		removeFromCurrentChanges)
  		('revert & remove from changes'		revertAndForget)
  		('add to current change set'				adoptMessageInCurrentChangeset)
+ 		('copy up or copy down...'				copyUpOrCopyDown)).
- 		('copy up or copy down...'				copyUpOrCopyDown)
- 		-
- 		('more...' 								unshiftedYellowButtonActivity)).
  	^ aMenu
  !

Item was changed:
  ----- Method: Browser>>systemCategoryMenu: (in category 'system category functions') -----
  systemCategoryMenu: aMenu
+ 	^ self menu: aMenu for: #(systemCategoryMenu systemCategoryMenuShifted:)
+ !
- 	self 
- 		menuHook: aMenu 
- 		named: #systemCategoryMenu 
- 		shifted: false.
- 	Preferences useOnlyServicesInMenu ifTrue:[^aMenu].
- 
- 	^ aMenu labels:
- 'find class... (f)
- back... (b)
- browse all
- browse
- printOut
- fileOut
- reorganize
- alphabetize
- update
- add item...
- rename...
- remove' 
- 	lines: #(2 4 6 8)
- 	selections:
- 		#(findClass recent browseAllClasses buildSystemCategoryBrowser
- 		printOutSystemCategory fileOutSystemCategory
- 		editSystemCategories alphabetizeSystemCategories updateSystemCategories
- 		addSystemCategory renameSystemCategory removeSystemCategory )!

Item was added:
+ ----- Method: Browser>>systemCategoryMenuHook:shifted: (in category 'pluggable menus - hooks') -----
+ systemCategoryMenuHook: aMenu shifted: aBoolean
+ 	<systemCategoryMenu>
+ 	^ self menuHook: aMenu named: #systemCategoryMenu shifted: aBoolean.
+ !

Item was changed:
  ----- Method: ChangeList>>changeListMenu: (in category 'menu actions') -----
  changeListMenu: aMenu
+ 	^ self menu: aMenu for: #(changeListMenu changeListMenuShifted)
- 	"Fill aMenu up so that it comprises the primary changelist-browser menu"
- 
- 	aMenu addTitle: 'change list'.
- 	aMenu addStayUpItemSpecial.
- 
- 	aMenu addList: #(
- 
- 	('fileIn selections'							fileInSelections						'import the selected items into the image')
- 	('fileOut selections...	'						fileOutSelections						'create a new file containing the selected items')
- 	-
- 	('compare to current'						compareToCurrentVersion			'open a separate window which shows the text differences between the on-file version and the in-image version.' )
- 	('toggle diffing (D)'							toggleDiffing						'start or stop showing diffs in the code pane.')
- 	-
- 	('select conflicts with any changeset'		selectAllConflicts					'select methods in the file which also occur in any change-set in the system')
- 	('select conflicts with current changeset'	selectConflicts						'select methods in the file which also occur in the current change-set')
- 	('select conflicts with...'						selectConflictsWith					'allows you to designate a file or change-set against which to check for code conflicts.')
- 	-
- 	('select unchanged definitions'				selectUnchangedDefinitions			'select class definitions, class comments and methods in the file whose in-image versions are the same as their in-file counterparts' )
- 	('select unchanged methods'					selectUnchangedMethods				'select methods in the file whose in-image versions are the same as their in-file counterparts' )
- 	('select new methods'						selectNewMethods					'select methods in the file that do not current occur in the image')
- 	('select methods for this class'				selectMethodsForThisClass			'select all methods in the file that belong to the currently-selected class')
- 	('select methods for extant classes'			selectMethodsForExtantClasses		'select all methods in the file that belong to a class that exists in the image')
- 	('select changes with contents matching'		selectContentsMatching				'select all changes in the file whose text includes a pattern')
- 
- 	-
- 	('select all (a)'								selectAll								'select all the items in the list')
- 	('deselect all'								deselectAll							'deselect all the items in the list')
- 	('invert selections'							invertSelections						'select every item that is not currently selected, and deselect every item that *is* currently selected')
- 	-
- 	('browse all versions of single selection'			browseVersions		'open a version browser showing the versions of the currently selected method')
- 	('browse all versions of selections'			browseAllVersionsOfSelections		'open a version browser showing all the versions of all the selected methods')
- 	('browse current versions of selections'		browseCurrentVersionsOfSelections	'open a message-list browser showing the current (in-image) counterparts of the selected methods')
- 	('destroy current methods of selections'		destroyCurrentCodeOfSelections		'remove (*destroy*) the in-image counterparts of all selected methods')
- 	-
- 	('remove doIts'								removeDoIts							'remove all items that are doIts rather than methods')
- 	('remove older versions'						removeOlderMethodVersions			'remove all but the most recent versions of methods in the list')
- 	('remove up-to-date versions'				removeExistingMethodVersions		'remove all items whose code is the same as the counterpart in-image code')
- 	('remove selected items'						removeSelections					'remove the selected items from the change-list')
- 	('remove unselected items'					removeNonSelections					'remove all the items not currently selected from the change-list')).
- 
- 	^ aMenu
- 
  !

Item was added:
+ ----- Method: ChangeList>>mainChangeListMenu: (in category 'menu actions') -----
+ mainChangeListMenu: aMenu
+ 	"Fill aMenu up so that it comprises the primary changelist-browser menu"
+ 	<changeListMenu>
+ 
+ 	aMenu addTitle: 'change list'.
+ 	aMenu addStayUpItemSpecial.
+ 
+ 	aMenu addList: #(
+ 
+ 	('fileIn selections'							fileInSelections						'import the selected items into the image')
+ 	('fileOut selections...'						fileOutSelections						'create a new file containing the selected items')
+ 	-
+ 	('compare to current'						compareToCurrentVersion			'open a separate window which shows the text differences between the on-file version and the in-image version.' )
+ 	('toggle diffing (D)'							toggleDiffing						'start or stop showing diffs in the code pane.')
+ 	-
+ 	('select conflicts with any changeset'		selectAllConflicts					'select methods in the file which also occur in any change-set in the system')
+ 	('select conflicts with current changeset'	selectConflicts						'select methods in the file which also occur in the current change-set')
+ 	('select conflicts with...'						selectConflictsWith					'allows you to designate a file or change-set against which to check for code conflicts.')
+ 	-
+ 	('select unchanged definitions'				selectUnchangedDefinitions			'select class definitions, class comments and methods in the file whose in-image versions are the same as their in-file counterparts' )
+ 	('select unchanged methods'					selectUnchangedMethods				'select methods in the file whose in-image versions are the same as their in-file counterparts' )
+ 	('select new methods'						selectNewMethods					'select methods in the file that do not current occur in the image')
+ 	('select methods for this class'				selectMethodsForThisClass			'select all methods in the file that belong to the currently-selected class')
+ 	('select methods for extant classes'			selectMethodsForExtantClasses		'select all methods in the file that belong to a class that exists in the image')
+ 	('select changes with contents matching'		selectContentsMatching				'select all changes in the file whose text includes a pattern')
+ 
+ 	-
+ 	('select all (a)'								selectAll								'select all the items in the list')
+ 	('deselect all'								deselectAll							'deselect all the items in the list')
+ 	('invert selections'							invertSelections						'select every item that is not currently selected, and deselect every item that *is* currently selected')
+ 	-
+ 	('browse all versions of single selection'			browseVersions		'open a version browser showing the versions of the currently selected method')
+ 	('browse all versions of selections'			browseAllVersionsOfSelections		'open a version browser showing all the versions of all the selected methods')
+ 	('browse current versions of selections'		browseCurrentVersionsOfSelections	'open a message-list browser showing the current (in-image) counterparts of the selected methods')
+ 	('destroy current methods of selections'		destroyCurrentCodeOfSelections		'remove (*destroy*) the in-image counterparts of all selected methods')
+ 	-
+ 	('remove doIts'								removeDoIts							'remove all items that are doIts rather than methods')
+ 	('remove older versions'						removeOlderMethodVersions			'remove all but the most recent versions of methods in the list')
+ 	('remove up-to-date versions'				removeExistingMethodVersions		'remove all items whose code is the same as the counterpart in-image code')
+ 	('remove selected items'						removeSelections					'remove the selected items from the change-list')
+ 	('remove unselected items'					removeNonSelections					'remove all the items not currently selected from the change-list')).
+ 
+ 	^ aMenu
+ 
+ !

Item was added:
+ ----- Method: ChangeSetBrowser>>changeSetMenuForDropInClassCats: (in category 'menu') -----
+ changeSetMenuForDropInClassCats: aMenu
+ 
+ 	^ aMenu!

Item was added:
+ ----- Method: ChangeSetBrowser>>changeSetMenuForModification: (in category 'menu') -----
+ changeSetMenuForModification: aMenu
+ 
+ 	^ aMenu!

Item was added:
+ ----- Method: ChangeSetBrowser>>changeSetMenuForOpposite: (in category 'menu') -----
+ changeSetMenuForOpposite: aMenu
+ 
+ 	^ aMenu!

Item was added:
+ ----- Method: ChangeSetBrowser>>changeSetMenuForPromote: (in category 'menu') -----
+ changeSetMenuForPromote: aMenu
+ 
+ 	^ aMenu!

Item was removed:
- ----- Method: ChangeSetBrowser>>shiftedChangeSetMenu: (in category 'menu') -----
- shiftedChangeSetMenu: aMenu
- 	"Set up aMenu to hold items relating to the change-set-list pane when the shift key is down"
- 
- 	aMenu title: 'Change set (shifted)'.
- 	aMenu addStayUpItemSpecial.
- 	aMenu add: 'conflicts with other change sets' action: #browseMethodConflicts.
- 	aMenu balloonTextForLastItem: 
- 'Browse all methods that occur both in this change set and in at least one other change set.'.
- 
- 	aMenu addLine.
- 	aMenu add: 'check for slips' action: #lookForSlips.
- 	aMenu balloonTextForLastItem: 
- 'Check this change set for halts and references to Transcript.'.
- 
- 	aMenu add: 'check for unsent messages' action: #checkForUnsentMessages.
- 	aMenu balloonTextForLastItem:
- 'Check this change set for messages that are not sent anywhere in the system'.
- 
- 	aMenu add: 'check for uncommented methods' action: #checkForUncommentedMethods.
- 	aMenu balloonTextForLastItem:
- 'Check this change set for methods that do not have comments'.
- 
- 	aMenu add: 'check for uncommented classes' action: #checkForUncommentedClasses.
- 	aMenu balloonTextForLastItem:
- 'Check for classes with code in this changeset which lack class comments'.
- 
- 
- 	Utilities authorInitialsPerSe isEmptyOrNil ifFalse:
- 		[aMenu add: 'check for other authors' action: #checkForAlienAuthorship.
- 		aMenu balloonTextForLastItem:
- 'Check this change set for methods whose current authoring stamp does not start with "', Utilities authorInitials, '"'.
- 
- 		aMenu add: 'check for any other authors' action: #checkForAnyAlienAuthorship.
- 		aMenu balloonTextForLastItem:
- 'Check this change set for methods any of whose previous authoring stamps do not start with "', Utilities authorInitials, '"'].
- 
- 	aMenu add: 'check for uncategorized methods' action: #checkForUnclassifiedMethods.
- 	aMenu balloonTextForLastItem:
- 'Check to see if any methods in the selected change set have not yet been assigned to a category.  If any are found, open a browser on them.'.
- 	aMenu addLine.
- 
- 	aMenu add: 'inspect change set' action: #inspectChangeSet.
- 	aMenu balloonTextForLastItem: 
- 'Open an inspector on this change set. (There are some details in a change set which you don''t see in a change sorter.)'.
- 
- 	aMenu add: 'update' action: #update.
- 	aMenu balloonTextForLastItem: 
- 'Update the display for this change set.  (This is done automatically when you activate this window, so is seldom needed.)'.
- 
- 	aMenu add: 'go to change set''s project' action: #goToChangeSetsProject.
- 	aMenu balloonTextForLastItem: 
- 'If this change set is currently associated with a Project, go to that project right now.'.
- 
- 	aMenu add: 'trim history' action: #trimHistory.
- 	aMenu balloonTextForLastItem: 
- ' Drops any methods added and then removed, as well as renaming and reorganization of newly-added classes.  NOTE: can cause confusion if later filed in over an earlier version of these changes'.
- 
- 	aMenu add: 'clear this change set' action: #clearChangeSet.
- 	aMenu balloonTextForLastItem: 
- 'Reset this change set to a pristine state where it holds no information. CAUTION: this is destructive and irreversible!!'.
- 	aMenu add: 'expunge uniclasses' action: #expungeUniclasses.
- 	aMenu balloonTextForLastItem:
- 'Remove from the change set all memory of uniclasses, e.g. classes added on behalf of etoys, fabrik, etc., whose classnames end with a digit.'.
- 
- 	aMenu add: 'uninstall this change set' action: #uninstallChangeSet.
- 	aMenu balloonTextForLastItem: 
- 'Attempt to uninstall this change set. CAUTION: this may not work completely and is irreversible!!'.
- 
- 	aMenu addLine.
- 
- 	aMenu add: 'more...' action: #offerUnshiftedChangeSetMenu.
- 	aMenu balloonTextForLastItem: 
- 'Takes you back to the primary change-set menu.'.
- 
- 	^ aMenu!

Item was changed:
  ----- Method: ChangeSorter>>changeSetMenu:shifted: (in category 'changeSet menu') -----
  changeSetMenu: aMenu shifted: isShifted 
- 	"Set up aMenu to hold commands for the change-set-list pane.  This could be for a single or double changeSorter"
  
+ 	^ self menu: aMenu for: #( changeSetMenu changeSetMenuShifted: ) shifted: isShifted
+ !
- 	isShifted ifTrue: [^ self shiftedChangeSetMenu: aMenu].
- 	Smalltalk isMorphic
- 		ifTrue:
- 			[aMenu title: 'Change Set']
- 		ifFalse:
- 			[aMenu title: 'Change Set:
- ' , myChangeSet name].
- 	aMenu addStayUpItemSpecial.
- 
- 	aMenu add: 'make changes go to me (m)' action: #newCurrent.
- 	aMenu addLine.
- 	aMenu add: 'new change set... (n)' action: #newSet.
- 	aMenu add: 'find...(f)' action: #findCngSet.
- 	aMenu add: 'select change set...' action: #chooseCngSet.
- 	aMenu addLine.
- 	aMenu add: 'rename change set (r)' action: #rename.
- 	aMenu add: 'file out (o)' action: #fileOut.
- 	aMenu add: 'mail to list' action: #mailOut.
- 	aMenu add: 'browse methods (b)' action: #browseChangeSet.
- 	aMenu add: 'browse change set (B)' action: #openChangeSetBrowser.
- 	aMenu addLine.
- 	parent
- 		ifNotNil: 
- 			[aMenu add: 'copy all to other side (c)' action: #copyAllToOther.
- 			aMenu add: 'submerge into other side' action: #submergeIntoOtherSide.
- 			aMenu add: 'subtract other side (-)' action: #subtractOtherSide.
- 			aMenu addLine].
- 	myChangeSet hasPreamble
- 		ifTrue: 
- 			[aMenu add: 'edit preamble (p)' action: #addPreamble.
- 			aMenu add: 'remove preamble' action: #removePreamble]
- 		ifFalse: [aMenu add: 'add preamble (p)' action: #addPreamble].
- 	myChangeSet hasPostscript
- 		ifTrue: 
- 			[aMenu add: 'edit postscript...' action: #editPostscript.
- 			aMenu add: 'remove postscript' action: #removePostscript]
- 		ifFalse: [aMenu add: 'add postscript...' action: #editPostscript].
- 	aMenu addLine.
- 
- 	aMenu add: 'destroy change set (x)' action: #remove.
- 	aMenu addLine.
- 	aMenu add: 'more...' action: #offerShiftedChangeSetMenu.
- 	^ aMenu!

Item was added:
+ ----- Method: ChangeSorter>>changeSetMenuForDropInClassCats: (in category 'changeSet menu') -----
+ changeSetMenuForDropInClassCats: aMenu
+ 	
+ 	aMenu add: 'remove contained in class categories...' action: #removeContainedInClassCategories.
+ 	aMenu balloonTextForLastItem: ' Drops any changes in given class categories'.
+ 
+ 	^ aMenu
+ !

Item was added:
+ ----- Method: ChangeSorter>>changeSetMenuForModification: (in category 'changeSet menu') -----
+ changeSetMenuForModification: aMenu
+ 
+ 	aMenu addLine.
+ 
+ 	aMenu add: 'file into new...' action: #fileIntoNewChangeSet.
+ 	aMenu balloonTextForLastItem: 
+ 'Load a fileout from disk and place its changes into a new change set (seldom needed -- much better to do this from a file-list browser these days.)'.
+ 
+ 	aMenu add: 'reorder all change sets' action: #reorderChangeSets.
+ 	aMenu balloonTextForLastItem:
+ 'Applies a standard reordering of all change-sets in the system -- at the bottom will come the sets that come with the release; next will come all the numbered updates; finally, at the top, will come all other change sets'.
+ 
+ 
+ 	^ aMenu!

Item was added:
+ ----- Method: ChangeSorter>>changeSetMenuForOpposite: (in category 'changeSet menu') -----
+ changeSetMenuForOpposite: aMenu
+ 
+ 	parent ifNotNil:
+ 		[aMenu add: 'conflicts with change set opposite' action: #methodConflictsWithOtherSide.
+ 			aMenu balloonTextForLastItem: 
+ 'Browse all methods that occur both in this change set and in the one on the opposite side of the change sorter.'.].
+ 	^ aMenu!

Item was added:
+ ----- Method: ChangeSorter>>changeSetMenuForPromote: (in category 'changeSet menu') -----
+ changeSetMenuForPromote: aMenu
+ 
+ 	aMenu add: 'promote to top of list' action: #promoteToTopChangeSet.
+ 	aMenu balloonTextForLastItem:
+ 'Make this change set appear first in change-set lists in all change sorters.'.
+ 
+ 	^ aMenu!

Item was changed:
  ----- Method: ChangeSorter>>classListMenu:shifted: (in category 'class list') -----
  classListMenu: aMenu shifted: shifted
  	"Fill aMenu with items appropriate for the class list"
+ 	^ self menu: aMenu for: #(classListMenu classListMenuShifted:) shifted: shifted
+ !
- 
- 	aMenu title: 'class list'.
- 	aMenu addStayUpItemSpecial.
- 	(parent notNil and: [shifted not])
- 		ifTrue: [aMenu addList: #( "These two only apply to dual change sorters"
- 			('copy class chgs to other side'			copyClassToOther)	
- 			('move class chgs to other side'			moveClassToOther))].
- 
- 	aMenu addList: (shifted
- 		ifFalse: [#(
- 			-
- 			('delete class from change set (d)'		forgetClass)
- 			('remove class from system (x)'			removeClass)
- 			-
- 			('browse full (b)'						browseMethodFull)
- 			('browse hierarchy (h)'					spawnHierarchy)
- 			('browse protocol (p)'					browseFullProtocol)
- 			-
- 			('printOut'								printOutClass)
- 			('fileOut'								fileOutClass)
- 			-
- 			('references... (r)'						browseVariableReferences)
- 			('assignments... (a)'						browseVariableAssignments)
- 			('class refs (N)'							browseClassRefs)
- 			-
- 			('more...'								offerShiftedClassListMenu))]
- 
- 		ifTrue: [#(
- 			-
- 			('unsent methods'						browseUnusedMethods)
- 			('unreferenced inst vars'				showUnreferencedInstVars)
- 			('unreferenced class vars'				showUnreferencedClassVars)
- 			-
- 			('sample instance'						makeSampleInstance)
- 			('inspect instances'						inspectInstances)
- 			('inspect subinstances'					inspectSubInstances)
- 			-
- 			('more...'								offerUnshiftedClassListMenu ))]).
- 	^ aMenu!

Item was added:
+ ----- Method: ChangeSorter>>mainClassListMenu: (in category 'class list') -----
+ mainClassListMenu: aMenu
+ 	"Fill aMenu with items appropriate for the class list"
+ 
+ 	<classListMenuShifted: false>
+ 	aMenu title: 'class list'.
+ 	aMenu addStayUpItemSpecial.
+ 	parent ifNotNil: [
+ 		aMenu addList: #( "These two only apply to dual change sorters"
+ 			('copy class chgs to other side'			copyClassToOther)	
+ 			('move class chgs to other side'			moveClassToOther))].
+ 
+ 	aMenu addList: #(
+ 			-
+ 			('delete class from change set (d)'		forgetClass)
+ 			('remove class from system (x)'			removeClass)
+ 			-
+ 			('browse full (b)'						browseMethodFull)
+ 			('browse hierarchy (h)'					spawnHierarchy)
+ 			('browse protocol (p)'					browseFullProtocol)
+ 			-
+ 			('printOut'								printOutClass)
+ 			('fileOut'								fileOutClass)
+ 			-
+ 			('references... (r)'						browseVariableReferences)
+ 			('assignments... (a)'						browseVariableAssignments)
+ 			('class refs (N)'							browseClassRefs)
+ 			-
+ 			('more...'								offerShiftedClassListMenu)).
+ 
+ 	^ aMenu!

Item was changed:
  ----- Method: ChangeSorter>>messageMenu:shifted: (in category 'message list') -----
  messageMenu: aMenu shifted: shifted
  	"Fill aMenu with items appropriate for the message list; could be for a single or double changeSorter"
  
+ 	^ self menu: aMenu for: #(messageListMenu messageListMenuShifted:) shifted: shifted!
- 	shifted ifTrue: [^ self shiftedMessageMenu: aMenu].
- 
- 	aMenu title: 'message list'.
- 	aMenu addStayUpItemSpecial.
- 
- 	parent ifNotNil:
- 		[aMenu addList: #(
- 			('copy method to other side'			copyMethodToOther)
- 			('move method to other side'			moveMethodToOther))].
- 
- 	aMenu addList: #(
- 			('delete method from changeSet (d)'	forget)
- 			-
- 			('remove method from system (x)'	removeMessage)
- 				-
- 			('browse full (b)'					browseMethodFull)
- 			('browse hierarchy (h)'				spawnHierarchy)
- 			('browse method (O)'				openSingleMessageBrowser)
- 			('browse protocol (p)'				browseFullProtocol)
- 			-
- 			('fileOut'							fileOutMessage)
- 			('printOut'							printOutMessage)
- 			-
- 			('senders of... (n)'					browseSendersOfMessages)
- 			('implementors of... (m)'				browseMessages)
- 			('inheritance (i)'					methodHierarchy)
- 			('versions (v)'						browseVersions)
- 			-
- 			('more...'							shiftedYellowButtonActivity)).
- 	^ aMenu
- !

Item was changed:
  ----- Method: ChangeSorter>>shiftedChangeSetMenu: (in category 'changeSet menu') -----
  shiftedChangeSetMenu: aMenu
  	"Set up aMenu to hold items relating to the change-set-list pane when the shift key is down"
  
+ 	<changeSetMenuShifted: true>
+ 
  	aMenu title: 'Change set (shifted)'.
  	aMenu addStayUpItemSpecial.
  
  	"CONFLICTS SECTION"
  	aMenu add: 'conflicts with other change sets' action: #browseMethodConflicts.
  	aMenu balloonTextForLastItem: 
  'Browse all methods that occur both in this change set and in at least one other change set.'.
+ 	self changeSetMenuForOpposite: aMenu.
- 	parent ifNotNil:
- 		[aMenu add: 'conflicts with change set opposite' action: #methodConflictsWithOtherSide.
- 			aMenu balloonTextForLastItem: 
- 'Browse all methods that occur both in this change set and in the one on the opposite side of the change sorter.'.].
  	aMenu addLine.
  
  	"CHECKS SECTION"
  	aMenu add: 'check for slips' action: #lookForSlips.
  	aMenu balloonTextForLastItem: 
  'Check this change set for halts and references to Transcript.'.
  
  	aMenu add: 'check for unsent messages' action: #checkForUnsentMessages.
  	aMenu balloonTextForLastItem:
  'Check this change set for messages that are not sent anywhere in the system'.
  
  	aMenu add: 'check for uncommented methods' action: #checkForUncommentedMethods.
  	aMenu balloonTextForLastItem:
  'Check this change set for methods that do not have comments'.
  
  	aMenu add: 'check for uncommented classes' action: #checkForUncommentedClasses.
  	aMenu balloonTextForLastItem:
  'Check for classes with code in this changeset which lack class comments'.
  
  	Utilities authorInitialsPerSe isEmptyOrNil ifFalse:
  		[aMenu add: 'check for other authors' action: #checkForAlienAuthorship.
  		aMenu balloonTextForLastItem:
  'Check this change set for methods whose current authoring stamp does not start with "', Utilities authorInitials, '"'.
  
  	aMenu add: 'check for any other authors' action: #checkForAnyAlienAuthorship.
  	aMenu balloonTextForLastItem:
  'Check this change set for methods any of whose authoring stamps do not start with "', Utilities authorInitials, '"'].
  
  	aMenu add: 'check for uncategorized methods' action: #checkForUnclassifiedMethods.
  	aMenu balloonTextForLastItem:
  'Check to see if any methods in the selected change set have not yet been assigned to a category.  If any are found, open a browser on them.'.
  	aMenu addLine.
  
  	aMenu add: 'inspect change set' action: #inspectChangeSet.
  	aMenu balloonTextForLastItem: 
  'Open an inspector on this change set. (There are some details in a change set which you don''t see in a change sorter.)'.
  
  	aMenu add: 'update' action: #update.
  	aMenu balloonTextForLastItem: 
  'Update the display for this change set.  (This is done automatically when you activate this window, so is seldom needed.)'.
  
  	aMenu add: 'go to change set''s project' action: #goToChangeSetsProject.
  	aMenu balloonTextForLastItem: 
  'If this change set is currently associated with a Project, go to that project right now.'.
  
+ 	self changeSetMenuForPromote: aMenu.
- 	aMenu add: 'promote to top of list' action: #promoteToTopChangeSet.
- 	aMenu balloonTextForLastItem:
- 'Make this change set appear first in change-set lists in all change sorters.'.
  
  	aMenu add: 'trim history' action: #trimHistory.
  	aMenu balloonTextForLastItem: 
  ' Drops any methods added and then removed, as well as renaming and reorganization of newly-added classes.  NOTE: can cause confusion if later filed in over an earlier version of these changes'.
  
+ 	self changeSetMenuForDropInClassCats: aMenu.
+ 	
- 	aMenu add: 'remove contained in class categories...' action: #removeContainedInClassCategories.
- 	aMenu balloonTextForLastItem: ' Drops any changes in given class categories'.
- 
  	aMenu add: 'clear this change set' action: #clearChangeSet.
  	aMenu balloonTextForLastItem: 
  'Reset this change set to a pristine state where it holds no information. CAUTION: this is destructive and irreversible!!'.
  	aMenu add: 'expunge uniclasses' action: #expungeUniclasses.
  	aMenu balloonTextForLastItem:
  'Remove from the change set all memory of uniclasses, e.g. classes added on behalf of etoys, fabrik, etc., whose classnames end with a digit.'.
  
  	aMenu add: 'uninstall this change set' action: #uninstallChangeSet.
  	aMenu balloonTextForLastItem: 
  'Attempt to uninstall this change set. CAUTION: this may not work completely and is irreversible!!'.
  
+ 	self changeSetMenuForModification: aMenu.
- 	aMenu addLine.
- 	aMenu add: 'file into new...' action: #fileIntoNewChangeSet.
- 	aMenu balloonTextForLastItem: 
- 'Load a fileout from disk and place its changes into a new change set (seldom needed -- much better to do this from a file-list browser these days.)'.
  
- 	aMenu add: 'reorder all change sets' action: #reorderChangeSets.
- 	aMenu balloonTextForLastItem:
- 'Applies a standard reordering of all change-sets in the system -- at the bottom will come the sets that come with the release; next will come all the numbered updates; finally, at the top, will come all other change sets'.
- 
  	aMenu addLine.
  
  	aMenu add: 'more...' action: #offerUnshiftedChangeSetMenu.
  	aMenu balloonTextForLastItem: 
  'Takes you back to the primary change-set menu.'.
  
  	^ aMenu!

Item was added:
+ ----- Method: ChangeSorter>>shiftedClassListMenu: (in category 'class list') -----
+ shiftedClassListMenu: aMenu
+ 	"Fill aMenu with items appropriate for the class list"
+ 	<classListMenuShifted: true>
+ 
+ 	aMenu title: 'class list'.
+ 	aMenu addStayUpItemSpecial.
+ 
+ 	aMenu addList: #(
+ 			-
+ 			('unsent methods'						browseUnusedMethods)
+ 			('unreferenced inst vars'				showUnreferencedInstVars)
+ 			('unreferenced class vars'				showUnreferencedClassVars)
+ 			-
+ 			('sample instance'						makeSampleInstance)
+ 			('inspect instances'						inspectInstances)
+ 			('inspect subinstances'					inspectSubInstances)
+ 			-
+ 			('more...'								offerUnshiftedClassListMenu )).
+ 
+ 	^ aMenu!

Item was changed:
  ----- Method: ChangeSorter>>shiftedMessageMenu: (in category 'message list') -----
  shiftedMessageMenu: aMenu
  	"Arm the menu so that it holds items appropriate to the message-list while the shift key is down.  Answer the menu."
+ 	<messageListMenuShifted: true>
- 
  	^ aMenu addList: #(
  		-
  		('toggle diffing (D)'					toggleDiffing)
  		('implementors of sent messages'		browseAllMessages)
  		('change category...'				changeCategory)
  			-
  		('sample instance'					makeSampleInstance)
  		('inspect instances'					inspectInstances)
  		('inspect subinstances'				inspectSubInstances)
  		-
  		('change sets with this method'		findMethodInChangeSets)
  		('revert to previous version'			revertToPreviousVersion)
+ 		('revert & remove from changes'	revertAndForget));
+ 	yourself
+ !
- 		('revert & remove from changes'	revertAndForget)
- 		-
- 		('more...'							unshiftedYellowButtonActivity))!

Item was added:
+ ----- Method: ChangeSorter>>unshiftedChangeSetMenu: (in category 'changeSet menu') -----
+ unshiftedChangeSetMenu: aMenu
+ 	"Set up aMenu to hold commands for the change-set-list pane.  This could be for a single or double changeSorter"
+ 	<changeSetMenuShifted: false>
+ 	Smalltalk isMorphic
+ 		ifTrue:
+ 			[aMenu title: 'Change Set']
+ 		ifFalse:
+ 			[aMenu title: 'Change Set:
+ ' , myChangeSet name].
+ 	aMenu addStayUpItemSpecial.
+ 
+ 	aMenu add: 'make changes go to me (m)' action: #newCurrent.
+ 	aMenu addLine.
+ 	aMenu add: 'new change set... (n)' action: #newSet.
+ 	aMenu add: 'find...(f)' action: #findCngSet.
+ 	aMenu add: 'select change set...' action: #chooseCngSet.
+ 	aMenu addLine.
+ 	aMenu add: 'rename change set (r)' action: #rename.
+ 	aMenu add: 'file out (o)' action: #fileOut.
+ 	aMenu add: 'mail to list' action: #mailOut.
+ 	aMenu add: 'browse methods (b)' action: #browseChangeSet.
+ 	aMenu add: 'browse change set (B)' action: #openChangeSetBrowser.
+ 	aMenu addLine.
+ 	parent
+ 		ifNotNil: 
+ 			[aMenu add: 'copy all to other side (c)' action: #copyAllToOther.
+ 			aMenu add: 'submerge into other side' action: #submergeIntoOtherSide.
+ 			aMenu add: 'subtract other side (-)' action: #subtractOtherSide.
+ 			aMenu addLine].
+ 	myChangeSet hasPreamble
+ 		ifTrue: 
+ 			[aMenu add: 'edit preamble (p)' action: #addPreamble.
+ 			aMenu add: 'remove preamble' action: #removePreamble]
+ 		ifFalse: [aMenu add: 'add preamble (p)' action: #addPreamble].
+ 	myChangeSet hasPostscript
+ 		ifTrue: 
+ 			[aMenu add: 'edit postscript...' action: #editPostscript.
+ 			aMenu add: 'remove postscript' action: #removePostscript]
+ 		ifFalse: [aMenu add: 'add postscript...' action: #editPostscript].
+ 	aMenu addLine.
+ 
+ 	aMenu add: 'destroy change set (x)' action: #remove.
+ 	aMenu addLine.
+ 	aMenu add: 'more...' action: #offerShiftedChangeSetMenu.
+ 	^ aMenu!

Item was added:
+ ----- Method: ChangeSorter>>unshiftedMessageMenu: (in category 'message list') -----
+ unshiftedMessageMenu: aMenu
+ 	"Fill aMenu with items appropriate for the message list; could be for a single or double changeSorter"
+ 
+ 	<messageListMenuShifted: false>
+ 
+ 	aMenu title: 'message list'.
+ 	aMenu addStayUpItemSpecial.
+ 
+ 	parent ifNotNil:
+ 		[aMenu addList: #(
+ 			('copy method to other side'			copyMethodToOther)
+ 			('move method to other side'			moveMethodToOther))].
+ 
+ 	aMenu addList: #(
+ 			('delete method from changeSet (d)'	forget)
+ 			-
+ 			('remove method from system (x)'	removeMessage)
+ 				-
+ 			('browse full (b)'					browseMethodFull)
+ 			('browse hierarchy (h)'				spawnHierarchy)
+ 			('browse method (O)'				openSingleMessageBrowser)
+ 			('browse protocol (p)'				browseFullProtocol)
+ 			-
+ 			('fileOut'							fileOutMessage)
+ 			('printOut'							printOutMessage)
+ 			-
+ 			('senders of... (n)'					browseSendersOfMessages)
+ 			('implementors of... (m)'				browseMessages)
+ 			('inheritance (i)'					methodHierarchy)
+ 			('versions (v)'						browseVersions)).
+ 	^ aMenu
+ !

Item was added:
+ ----- Method: ClassCommentVersionsBrowser>>listSelectionVersionsMenu: (in category 'menu') -----
+ listSelectionVersionsMenu: aMenu
+ 
+ 	^ aMenu addTranslatedList: #(
+ 		('compare to current'		compareToCurrentVersion		'compare selected version to the current version')
+ 		('revert to selected version'	fileInSelections					'resubmit the selected version, so that it becomes the current version'));
+ 	yourself
+ !

Item was removed:
- ----- Method: ClassCommentVersionsBrowser>>versionsMenu: (in category 'menu') -----
- versionsMenu: aMenu
- 	"Fill aMenu with menu items appropriate to the receiver"
- 
- 	aMenu title: 'versions'.
- 	aMenu addStayUpItemSpecial.
- 	^ aMenu addList: #(
- 
- 		('compare to current'		compareToCurrentVersion		'compare selected version to the current version')
- 		('revert to selected version'	fileInSelections					'resubmit the selected version, so that it becomes the current version')
- 		('remove from changes'		removeMethodFromChanges		'remove this method from the current change set, if present')
- 		('edit current method (O)'	openSingleMessageBrowser		'open a single-message browser on the current version of this method')		
- 		-
- 		('toggle diffing (D)'			toggleDiffing					'toggle whether or not diffs should be shown here')
- 		('update list'				reformulateList					'reformulate the list of versions, in case it somehow got out of synch with reality')
- 		-
- 		('help...'					offerVersionsHelp				'provide an explanation of the use of this tool'))
- !

Item was added:
+ ----- Method: CodeHolder>>messageListMenuMore: (in category 'message list menu') -----
+ messageListMenuMore: aMenu
+ 	" The 'more..' link that toggles between shifted and unshifted menus
+ 	in message lists and context stacks "
+ 	<messageListMenuShifted: false>
+ 	<contextStackMenuShifted: false>
+ 	<menuPriority: 1000>
+ 	^ aMenu addList: #(
+ 			-
+ 			('more...'				shiftedYellowButtonActivity));
+ 		yourself
+ !

Item was added:
+ ----- Method: CodeHolder>>shiftedMessageListMore: (in category 'message list menu') -----
+ shiftedMessageListMore: aMenu
+ 	" The 'more..' link that toggles between shifted and unshifted menus
+ 	in message lists and context stacks "
+ 	<messageListMenuShifted: true>
+ 	<contextStackMenuShifted: true>
+ 	<menuPriority: 1000>
+ 	^ aMenu addList: #(
+ 			-
+ 			('more...'				unshiftedYellowButtonActivity));
+ 		yourself
+ !

Item was removed:
- ----- Method: Debugger>>codePaneMenu:shifted: (in category 'code pane menu') -----
- codePaneMenu: aMenu shifted: shifted
- 	aMenu
- 		add: 'run to here' target: self selector: #runToSelection: argument: self codePaneSelectionInterval;
- 		add: 'run until...' target: self selector: #runUntil;
- 		addLine.
- 	super codePaneMenu: aMenu shifted: shifted.
- 	^aMenu.
- !

Item was changed:
  ----- Method: Debugger>>contextStackMenu:shifted: (in category 'context stack menu') -----
  contextStackMenu: aMenu shifted: shifted
  	"Set up the menu appropriately for the context-stack-list, either shifted or unshifted as per the parameter provided"
  
+ 	^ self menu: aMenu for: #(contextStackMenu contextStackMenuShifted:) shifted: shifted
+ !
- 	^ shifted ifFalse:[
- 		aMenu addList: {
- 			{'fullStack (f)'.		#fullStack}.
- 			{'restart (r)'.		#restart}.
- 			{'proceed (p)'.		#proceed}.
- 			{'step (t)'.			#doStep}.
- 			{'step through (T)'.	#stepIntoBlock}.
- 			{'send (e)'.			#send}.
- 			{'where (w)'.		#where}.
- 			{'peel to first like this'.		#peelToFirst}.
- 			#-.
- 			{'return entered value'.		#returnValue}.
- 			#-.
- 			{'toggle break on entry'.	#toggleBreakOnEntry}.
- 			{'senders of... (n)'.			#browseSendersOfMessages}.
- 			{'implementors of... (m)'.	#browseMessages}.
- 			{'inheritance (i)'.	#methodHierarchy}.
- 			#-.
- 			{'versions (v)'.		#browseVersions}.
- 			#-.
- 			{'references... (r)'.		#browseVariableReferences}.
- 			{'assignments... (a)'.	#browseVariableAssignments}.
- 			#-.
- 			{'class refs (N)'.		#browseClassRefs}.
- 			{'browse full (b)'.	#browseMethodFull}.
- 			{'file out '.			#fileOutMessage}.
- 			#-.
- 			{'mail out bug report'.	#mailOutBugReport}.
- 			{'more...'.		#shiftedYellowButtonActivity}.
- 		}.
- 	] ifTrue: [
- 		aMenu addList: {
- 			{'browse class hierarchy'.	#classHierarchy}.
- 			{'browse class'.				#browseClass}.
- 			{'browse method (O)'.		#openSingleMessageBrowser}.
- 			{'implementors of sent messages'.		#browseAllMessages}.
- 			{'change sets with this method'.		#findMethodInChangeSets}.
- 			#-.
- 			{'inspect instances'.		#inspectInstances}.
- 			{'inspect subinstances'.		#inspectSubInstances}.
- 			#-.
- 			{'revert to previous version'.			#revertToPreviousVersion}.
- 			{'remove from current change set'.		#removeFromCurrentChanges}.
- 			{'revert & remove from changes'.		#revertAndForget}.
- 			#-.
- 			{'more...'.					#unshiftedYellowButtonActivity}. 
- 		}
- 	].!

Item was added:
+ ----- Method: Debugger>>debuggerCodePaneMenu: (in category 'code pane menu') -----
+ debuggerCodePaneMenu: aMenu
+ 	<codePaneMenu>
+ 	<menuPriority: 200>
+ 	^ aMenu
+ 		add: 'run to here' target: self selector: #runToSelection: argument: self codePaneSelectionInterval;
+ 		add: 'run until...' target: self selector: #runUntil;
+ 		addLine;
+ 		yourself
+ !

Item was added:
+ ----- Method: Debugger>>mainContextStackMenu: (in category 'context stack menu') -----
+ mainContextStackMenu: aMenu
+ 	"Set up the menu appropriately for the context-stack-list, unshifted"
+ 	<contextStackMenuShifted: false>
+ 	^ aMenu addList: #(
+ 			('fullStack (f)' 				fullStack) 
+ 			('restart (r)' 				restart) 
+ 			('proceed (p)' 				proceed) 
+ 			('step (t)' 					doStep) 
+ 			('step through (T)'	 		stepIntoBlock) 
+ 			('send (e)' 					send) 
+ 			('where (w)' 				where) 
+ 			('peel to first like this' 		peelToFirst) 
+ 			- 
+ 			('return entered value' 		returnValue) 
+ 			- 
+ 			('toggle break on entry'	toggleBreakOnEntry) 
+ 			('senders of    (n)' 			browseSendersOfMessages) 
+ 			('implementors of    (m)' 	browseMessages) 
+ 			('inheritance (i)' 			methodHierarchy) 
+ 			- 
+ 			('versions (v)' 				browseVersions) 
+ 			- 
+ 			('references    (r)' 			browseVariableReferences) 
+ 			('assignments    (a)' 		browseVariableAssignments) 
+ 			- 
+ 			('class refs (N)' 				browseClassRefs) 
+ 			('browse full (b)' 			browseMethodFull) 
+ 			('file out ' 			 		fileOutMessage) 
+ 			- 
+ 			('mail out bug report' 		mailOutBugReport));
+ 		yourself
+ !

Item was added:
+ ----- Method: Debugger>>shiftedContextStackMenu: (in category 'context stack menu') -----
+ shiftedContextStackMenu: aMenu
+ 	"Set up the menu appropriately for the context-stack-list, shifted"
+ 	<contextStackMenuShifted: true>
+ 	^ aMenu addList: #(
+ 			('browse class hierarchy'				classHierarchy)
+ 			('browse class'							browseClass)
+ 			('browse method (O)'					openSingleMessageBrowser)
+ 			('implementors of sent messages'		browseAllMessages)
+ 			('change sets with this method'			findMethodInChangeSets)
+ 			-	
+ 			('inspect instances'						inspectInstances)
+ 			('inspect subinstances'					inspectSubInstances)
+ 			-	
+ 			('revert to previous version'			revertToPreviousVersion)
+ 			('remove from current change set'		removeFromCurrentChanges)
+ 			('revert & remove from changes'		revertAndForget));
+ 		yourself
+ !

Item was removed:
- ----- Method: DictionaryInspector>>fieldListMenu: (in category 'menu') -----
- fieldListMenu: aMenu
- 
- 	^ aMenu labels:
- 'inspect
- inspect key
- copy name
- references
- objects pointing to this value
- senders of this key
- refresh view
- add key
- rename key
- remove
- basic inspect'
- 	lines: #(6 9)
- 	selections: #(inspectSelection inspectKey copyName selectionReferences objectReferencesToSelection sendersOfSelectedKey refreshView addEntry renameEntry removeSelection inspectBasic)
- !

Item was added:
+ ----- Method: DictionaryInspector>>mainFieldListMenu: (in category 'menu') -----
+ mainFieldListMenu: aMenu
+ 
+ 	^ aMenu addList: #(	
+ 		('inspect'							inspectSelection)
+ 		('inspect key'						inspectKey)
+ 		('copy name'						copyName)
+ 		('references'						selectionReferences)
+ 		('objects pointing to this value'		objectReferencesToSelection)
+ 		('senders of this key'				sendersOfSelectedKey)
+ 		-
+ 		('refresh view'						refreshView)
+ 		('add key'							addEntry)
+ 		('rename key'						renameEntry)
+ 		-
+ 		('remove'							removeSelection)
+ 		('basifc inspect'					inspectBasic));
+ 	yourself
+ !

Item was changed:
  ----- Method: FileContentsBrowser>>buildSystemCatListSingletonWith: (in category 'toolbuilder') -----
  buildSystemCatListSingletonWith: builder
  	| listSpec |
  	listSpec := builder pluggableListSpec new.
  	listSpec 
  			model: self;
  			list: #systemCategorySingleton; 
  			getIndex: #indexIsOne; 
  			setIndex: #indexIsOne:; 
+ 			menu: #packageListMenu:shifted:; 
- 			menu: #packageListMenu:; 
  			keyPress: #packageListKey:from:.
  	^listSpec!

Item was changed:
  ----- Method: FileContentsBrowser>>buildSystemCategoryListWith: (in category 'toolbuilder') -----
  buildSystemCategoryListWith: builder
  	| listSpec |
  	listSpec := builder pluggableListSpec new.
  	listSpec 
  			model: self;
  			list: #systemCategoryList; 
  			getIndex: #systemCategoryListIndex; 
  			setIndex: #systemCategoryListIndex:; 
+ 			menu: #packageListMenu:shifted:; 
- 			menu: #packageListMenu:; 
  			keyPress: #packageListKey:from:.
  	^listSpec!

Item was removed:
- ----- Method: FileContentsBrowser>>classListMenu: (in category 'menus') -----
- classListMenu: aMenu
- 
- 	^ aMenu 
- 		labels:
- 'definition
- comment
- browse full (b)
- class refs (N)
- fileIn
- fileOut
- rename...
- remove
- remove existing'
- 		lines: #(2 4 6 8)
- 		selections: #(editClass editComment browseMethodFull browseClassRefs fileInClass fileOutClass renameClass removeClass removeUnmodifiedCategories) 
- 
- !

Item was changed:
  ----- Method: FileContentsBrowser>>classListMenu:shifted: (in category 'menus') -----
+ classListMenu: aMenu shifted: aBool
- classListMenu: aMenu shifted: ignored
- 	"Answer the class list menu, ignoring the state of the shift key in this case"
  
+ 	^ self menu: aMenu for: #(fileClassListMenu fileClassListMenuShifted:) shifted: aBool
+ !
- 	^ self classListMenu: aMenu!

Item was added:
+ ----- Method: FileContentsBrowser>>fileClassListMenu: (in category 'menus') -----
+ fileClassListMenu: aMenu
+ 	"Answer the class list menu, ignoring the state of the shift key in this case"
+ 	<fileClassListMenu>
+ 	aMenu addList: #(
+ 			('definition'		editClass)
+ 			('comment'			editComment)
+ 			-
+ 			('browse full (b)'	browseMethodFull)
+ 			('class refs (N)'	browseClassRefs)
+ 			-
+ 			('fileIn'			fileInClass)
+ 			('fileOut'			fileOutClass)
+ 			-
+ 			('rename...'			renameClass)
+ 			('remove'			removeClass)
+ 			('remove existing'	removeUnmodifiedCategories)).
+ 	^ aMenu
+ !

Item was added:
+ ----- Method: FileContentsBrowser>>fileMessageCategoryMenu: (in category 'menus') -----
+ fileMessageCategoryMenu: aMenu
+ 	<fileMessageCategoryMenu>
+ 	^ aMenu addList: #(
+ 		('file in'				fileInMessageCategories)
+ 		('file out'			fileOutMessageCategories)
+ 		-
+ 		('reorganize'		editMessageCategories)
+ 		-
+ 		('add item...'			addCategory)
+ 		('rename...'			renameCategory)
+ 		('remove'			removeMessageCategory)
+ 		-
+ 		('remove existing'	removeUnmodifiedMethods));
+ 		yourself
+ !

Item was added:
+ ----- Method: FileContentsBrowser>>fileMessageListMenu: (in category 'menus') -----
+ fileMessageListMenu: aMenu
+ 	<fileMessageListMenu>
+ 	aMenu addList: #(
+ 		('fileIn'						fileInMessage)
+ 		('fileOut'					fileOutMessage)
+ 		-
+ 		('senders (n)'				browseSenders)
+ 		('implementors (m)'			browseImplementors)
+ 		('method inheritance (h)'	methodHierarchy)
+ 		('versions (v)'				browseVersions)
+ 		-
+ 		('remove'					removeMessage)).
+ 	^ aMenu
+ !

Item was added:
+ ----- Method: FileContentsBrowser>>filePackageListMenu: (in category 'menus') -----
+ filePackageListMenu: aMenu
+ 	<filePackageListMenu>
+ 	^ aMenu addList: #(
+ 			('find class... (f)'		findClass)
+ 			-
+ 			('file in'			fileInPackage)
+ 			('file into new changeset'	fileIntoNewChangeSet)
+ 			('file out'			fileOutPackage)
+ 			-
+ 			('remove'			removePackage)
+ 			-
+ 			('remove existing'		removeUnmodifiedClasses));
+ 		yourself
+ !

Item was changed:
  ----- Method: FileContentsBrowser>>messageCategoryMenu: (in category 'menus') -----
  messageCategoryMenu: aMenu
+ 	^ self menu: aMenu for: #(fileMessageCategoryMenu fileMessageCategoryMenuShifted:)
+ !
- 
- 	^ aMenu 
- 		labels:
- 'fileIn
- fileOut
- reorganize
- add item...
- rename...
- remove
- remove existing'
- 		lines: #(2 3 6)
- 		selections: #(fileInMessageCategories fileOutMessageCategories editMessageCategories addCategory renameCategory removeMessageCategory removeUnmodifiedMethods)!

Item was changed:
  ----- Method: FileContentsBrowser>>messageListMenu:shifted: (in category 'menus') -----
  messageListMenu: aMenu shifted: aBool
  
+ 	^ self menu: aMenu for: #(fileMessageListMenu fileMessageListMenuShifted:) shifted: aBool
- 	^ aMenu 
- 		labels:
- 'fileIn
- fileOut
- senders (n)
- implementors (m)
- method inheritance (h)
- versions (v)
- remove'
- 		lines: #(2 6)
- 		selections: #(fileInMessage fileOutMessage
- browseSenders browseImplementors methodHierarchy browseVersions
- removeMessage).
  !

Item was removed:
- ----- Method: FileContentsBrowser>>packageListMenu: (in category 'menus') -----
- packageListMenu: aMenu
- 	^ aMenu 
- 		labels:
- 'find class... (f)
- fileIn
- file into new changeset
- fileOut
- remove
- remove existing'
- 		lines: #(1 4 5)
- 		selections: #(findClass fileInPackage fileIntoNewChangeSet fileOutPackage removePackage removeUnmodifiedClasses)!

Item was added:
+ ----- Method: FileContentsBrowser>>packageListMenu:shifted: (in category 'menus') -----
+ packageListMenu: aMenu shifted: shifted
+ 
+ 	^ self menu: aMenu for: #(filePackageListMenu filePackageListMenuShifted:) shifted: shifted
+ !

Item was changed:
  ----- Method: FileList>>fileContentsMenu:shifted: (in category 'file list menu') -----
  fileContentsMenu: aMenu shifted: shifted
  	"Construct aMenu to have items appropriate for the file browser's code pane, given the shift state provided"
+ 	^ self menu: aMenu for: #(fileContentsMenu fileContentsMenuShifted:) shifted: shifted!
- 
- 	| services maybeLine extraLines |
- 	shifted ifTrue:
- 		[^ aMenu addList: StringHolder shiftedYellowButtonMenuItems].
- 	fileName ifNotNil:
- 		[services := OrderedCollection new.
- 		(#(briefHex briefFile needToGetBriefHex needToGetBrief) includes: brevityState) ifTrue:
- 			[services add: self serviceGet].
- 		(#(fullHex briefHex needToGetFullHex needToGetBriefHex) includes: brevityState) ifFalse:
- 			[services add: self serviceGetHex].
- 		(#(needToGetShiftJIS needToGetEUCJP needToGetCNGB needToGetEUCKR needToGetUTF8) includes: brevityState) ifFalse:
- 			[services add: self serviceGetEncodedText].
- 		maybeLine := services size.
- 		(FileStream sourceFileSuffixes includes: self suffixOfSelectedFile) ifTrue:
- 			[services addAll:
- 				(self servicesFromSelectorSpecs:
- 					#(fileIntoNewChangeSet: fileIn: browseChangesFile: browseFile:))].
- 
- 		extraLines := OrderedCollection new.
- 		maybeLine > 0 ifTrue: [extraLines add: maybeLine].
- 		services size > maybeLine ifTrue: [extraLines add: services size].
- 		aMenu 
- 			addServices: services
- 			for: self
- 			extraLines: extraLines].
- 
- 	aMenu addList: {
- 			{'find...(f)' translated.		#find}.
- 			{'find again (g)' translated.		#findAgain}.
- 			{'set search string (h)' translated.	#setSearchString}.
- 			#-.
- 			{'do again (j)' translated.		#again}.
- 			{'undo (z)' translated.			#undo}.
- 			#-.
- 			{'copy (c)' translated.			#copySelection}.
- 			{'cut (x)' translated.			#cut}.
- 			{'paste (v)' translated.		#paste}.
- 			{'paste...' translated.			#pasteRecent}.
- 			#-.
- 			{'do it (d)' translated.		#doIt}.
- 			{'print it (p)' translated.		#printIt}.
- 			{'inspect it (i)' translated.		#inspectIt}.
- 			{'fileIn selection (G)' translated.	#fileItIn}.
- 			#-.
- 			{'accept (s)' translated.		#accept}.
- 			{'cancel (l)' translated.		#cancel}.
- 			#-.
- 			{'more...' translated.			#shiftedYellowButtonActivity}}.
- 
- 
- 	^ aMenu
- !

Item was changed:
  ----- Method: FileList>>fileListMenu: (in category 'file list menu') -----
  fileListMenu: aMenu
+ 	^ self menu: aMenu for: #(fileListMenu fileListMenuShifted:)
- 
- 	fileName
- 		ifNil: [^ self noFileSelectedMenu: aMenu]
- 		ifNotNil: [^ self fileSelectedMenu: aMenu].
  !

Item was added:
+ ----- Method: FileList>>mainFileContentsMenu: (in category 'file list menu') -----
+ mainFileContentsMenu: aMenu
+ 	"Construct aMenu to have items appropriate for the file browser's code pane, for the unshifted state"
+ 	<fileContentsMenuShifted: false>
+ 	^ aMenu addTranslatedList: #(
+ 			('find...(f)' 				find)
+ 			('find again (g)' 			findAgain)
+ 			('set search string (h)'	setSearchString)
+ 			-
+ 			('do again (j)' 			again)
+ 			('undo (z)' 				undo)
+ 			-
+ 			('copy (c)' 				copySelection)
+ 			('cut (x)' 				cut)
+ 			('paste (v)' 				paste)
+ 			('paste...' 				pasteRecent)
+ 			-
+ 			('do it (d)' 				doIt)
+ 			('print it (p)' 			printIt)
+ 			('inspect it (i)' 			inspectIt)
+ 			('fileIn selection (G)'	fileItIn)
+ 			-
+ 			('accept (s)' 			accept)
+ 			('cancel (l)' 				cancel)
+ 			-
+ 			('more...' 				shiftedYellowButtonActivity));
+ 		yourself
+ !

Item was added:
+ ----- Method: FileList>>mainFileListMenu: (in category 'file list menu') -----
+ mainFileListMenu: aMenu
+ 	<fileListMenu>
+ 	fileName
+ 		ifNil: [^ self noFileSelectedMenu: aMenu]
+ 		ifNotNil: [^ self fileSelectedMenu: aMenu].
+ !

Item was added:
+ ----- Method: FileList>>mainVolumeMenu: (in category 'volume menu') -----
+ mainVolumeMenu: aMenu
+ 	<volumeMenu>
+ 	^ aMenu addTranslatedList: #(
+ 			('recent...'				recentDirs)
+ 			-
+ 			('add server...'			askServerInfo)
+ 			('remove server...'		removeServer)
+ 			-
+ 			('delete directory...'		deleteDirectory)
+ 			-);
+ 		yourself!

Item was added:
+ ----- Method: FileList>>servicesFileContentsMenu: (in category 'file list menu') -----
+ servicesFileContentsMenu: aMenu
+ 	"Construct aMenu to have items appropriate for the file browser's code pane, for the unshifted state"
+ 	<fileContentsMenuShifted: false>
+ 	
+ 	fileName ifNotNil: [| services maybeLine extraLines | 
+ 		services := OrderedCollection new.
+ 		(#(briefHex briefFile needToGetBriefHex needToGetBrief) includes: brevityState) ifTrue:
+ 			[services add: self serviceGet].
+ 		(#(fullHex briefHex needToGetFullHex needToGetBriefHex) includes: brevityState) ifFalse:
+ 			[services add: self serviceGetHex].
+ 		(#(needToGetShiftJIS needToGetEUCJP needToGetCNGB needToGetEUCKR needToGetUTF8) includes: brevityState) ifFalse:
+ 			[services add: self serviceGetEncodedText].
+ 		maybeLine := services size.
+ 		(FileStream sourceFileSuffixes includes: self suffixOfSelectedFile) ifTrue:
+ 			[services addAll:
+ 				(self servicesFromSelectorSpecs:
+ 					#(fileIntoNewChangeSet: fileIn: browseChangesFile: browseFile:))].
+ 
+ 		extraLines := OrderedCollection new.
+ 		maybeLine > 0 ifTrue: [extraLines add: maybeLine].
+ 		services size > maybeLine ifTrue: [extraLines add: services size].
+ 		aMenu 
+ 			addServices: services
+ 			for: self
+ 			extraLines: extraLines].
+ 	^ aMenu
+ !

Item was added:
+ ----- Method: FileList>>servicesVolumeMenu: (in category 'volume menu') -----
+ servicesVolumeMenu: aMenu
+ 	<volumeMenu>
+ 	aMenu
+ 		addServices: (self itemsForDirectory: self directory)
+ 		for: self
+ 		extraLines: #().
+ 	^aMenu.!

Item was added:
+ ----- Method: FileList>>shiftedFileContentsMenu: (in category 'file list menu') -----
+ shiftedFileContentsMenu: aMenu
+ 	"Delegate the shifted menu to the default shifted menu"
+ 	<fileContentsMenuShifted: true>
+ 	^ aMenu addList: self class shiftedYellowButtonMenuItems; yourself
+ !

Item was changed:
  ----- Method: FileList>>volumeMenu: (in category 'volume menu') -----
  volumeMenu: aMenu
+ 	^ self menu: aMenu for: #(volumeMenu volumeMenuShifted:)
+ !
- 	aMenu addList: {
- 			{'recent...' translated.		#recentDirs}.
- 			#-.
- 			{'add server...' translated.		#askServerInfo}.
- 			{'remove server...' translated.		#removeServer}.
- 			#-.
- 			{'delete directory...' translated.	#deleteDirectory}.
- 			#-}.
- 	aMenu
- 		addServices: (self itemsForDirectory: self directory)
- 		for: self
- 		extraLines: #().
- 	^aMenu.!

Item was changed:
  ----- Method: Inspector>>fieldListMenu: (in category 'menu commands') -----
  fieldListMenu: aMenu
  	"Arm the supplied menu with items for the field-list of the receiver"
+ 	^ self menu: aMenu for: #(fieldListMenu fieldListMenuShifted:)
- 
- 	aMenu addStayUpItemSpecial.
- 
- 	aMenu addList: #(
- 		('inspect (i)'						inspectSelection)
- 		('explore (I)'						exploreSelection)).
- 
- 	self addCollectionItemsTo: aMenu.
- 
- 	aMenu addList: #(
- 		-
- 		('method refs to this inst var'		referencesToSelection)
- 		('methods storing into this inst var'	defsOfSelection)
- 		('objects pointing to this value'		objectReferencesToSelection)
- 		('chase pointers'					chasePointers)
- 		('explore pointers'				explorePointers)
- 		-
- 		('browse full (b)'					browseMethodFull)
- 		('browse class'						browseClass)
- 		('browse hierarchy (h)'					classHierarchy)
- 		('browse protocol (p)'				browseFullProtocol)
- 		-
- 		('references... (r)'					browseVariableReferences)
- 		('assignments... (a)'					browseVariableAssignments)
- 		('class refs (N)'						browseClassRefs)
- 		-
- 		('copy name (c)'					copyName)		
- 		('basic inspect'						inspectBasic)).
- 
- 	Smalltalk isMorphic ifTrue:
- 		[aMenu addList: #(
- 			-
- 			('tile for this value	(t)'			tearOffTile)
- 			('viewer for this value (v)'		viewerForValue))].
- 
- 	^ aMenu
- 
- 
- "			-
- 			('alias for this value'			aliasForValue)
- 			('watcher for this slot'			watcherForSlot)"
- 
  !

Item was added:
+ ----- Method: Inspector>>mainFieldListMenu: (in category 'menu commands') -----
+ mainFieldListMenu: aMenu
+ 	"Arm the supplied menu with items for the field-list of the receiver"
+ 	<fieldListMenu>
+ 	"gets overriden by subclasses, _whithout_ the <fieldListMenu>"
+ 	aMenu addStayUpItemSpecial.
+ 
+ 	aMenu addList: #(
+ 		('inspect (i)'						inspectSelection)
+ 		('explore (I)'						exploreSelection)).
+ 
+ 	self addCollectionItemsTo: aMenu.
+ 
+ 	aMenu addList: #(
+ 		-
+ 		('method refs to this inst var'		referencesToSelection)
+ 		('methods storing into this inst var'	defsOfSelection)
+ 		('objects pointing to this value'		objectReferencesToSelection)
+ 		('chase pointers'					chasePointers)
+ 		('explore pointers'				explorePointers)
+ 		-
+ 		('browse full (b)'					browseMethodFull)
+ 		('browse class'						browseClass)
+ 		('browse hierarchy (h)'					classHierarchy)
+ 		('browse protocol (p)'				browseFullProtocol)
+ 		-
+ 		('references... (r)'					browseVariableReferences)
+ 		('assignments... (a)'					browseVariableAssignments)
+ 		('class refs (N)'						browseClassRefs)
+ 		-
+ 		('copy name (c)'					copyName)		
+ 		('basic inspect'						inspectBasic)).
+ 
+ 	Smalltalk isMorphic ifTrue:
+ 		[aMenu addList: #(
+ 			-
+ 			('tile for this value	(t)'			tearOffTile)
+ 			('viewer for this value (v)'		viewerForValue))].
+ 
+ 	^ aMenu
+ 
+ 
+ "			-
+ 			('alias for this value'			aliasForValue)
+ 			('watcher for this slot'			watcherForSlot)"
+ 
+ !

Item was added:
+ ----- Method: MessageNames>>mainSelectorListMenu: (in category 'selector list') -----
+ mainSelectorListMenu: aMenu
+ 	"Answer the menu associated with the selectorList"
+ 	<selectorListMenu>
+ 	aMenu addList: #(
+ 		('senders (n)'				browseSenders		'browse senders of the chosen selector')
+ 		('copy selector to clipboard'	copyName			'copy the chosen selector to the clipboard, for subsequent pasting elsewhere')
+ 		-
+ 		('show only implemented selectors'	showOnlyImplementedSelectors		'remove from the selector-list all symbols that do not represent implemented methods')).
+ 
+ 	^ aMenu!

Item was changed:
  ----- Method: MessageNames>>selectorListMenu: (in category 'selector list') -----
  selectorListMenu: aMenu
  	"Answer the menu associated with the selectorList"
+ 	^ self menu: aMenu for: #(selectorListMenu selectorListMenuShifted:)
+ !
- 
- 	aMenu addList: #(
- 		('senders (n)'				browseSenders		'browse senders of the chosen selector')
- 		('copy selector to clipboard'	copyName			'copy the chosen selector to the clipboard, for subsequent pasting elsewhere')
- 		-
- 		('show only implemented selectors'	showOnlyImplementedSelectors		'remove from the selector-list all symbols that do not represent implemented methods')).
- 
- 	^ aMenu!

Item was added:
+ ----- Method: MessageSet>>mainMessageListMenu: (in category 'message functions') -----
+ mainMessageListMenu: aMenu
+ 	"Answer the message-list menu"
+ 	<messageListMenuShifted: false>
+ 	aMenu addList: #(
+ 			('what to show...'			offerWhatToShowMenu)
+ 			('toggle break on entry'		toggleBreakOnEntry)
+ 			-
+ 			('browse full (b)' 			browseMethodFull)
+ 			('browse hierarchy (h)'			classHierarchy)
+ 			('browse method (O)'			openSingleMessageBrowser)
+ 			('browse protocol (p)'			browseFullProtocol)
+ 			-
+ 			('fileOut'				fileOutMessage)
+ 			('printOut'				printOutMessage)
+ 			('copy selector (c)'		copySelector)
+ 			('copy reference (C)'	copyReference)
+ 			-
+ 			('senders of... (n)'			browseSendersOfMessages)
+ 			('implementors of... (m)'		browseMessages)
+ 			('inheritance (i)'			methodHierarchy)
+ 			('versions (v)'				browseVersions)
+ 			-
+ 			('references... (r)'			browseVariableReferences)
+ 			('assignments... (a)'			browseVariableAssignments)
+ 			('class refs (N)'			browseClassRefs)
+ 			-
+ 			('remove method (x)'			removeMessage)
+ 			('explore method'			exploreMethod)
+ 			('inspect method'			inspectMethod)).
+ 	^ aMenu!

Item was changed:
  ----- Method: MessageSet>>messageListMenu:shifted: (in category 'message functions') -----
  messageListMenu: aMenu shifted: shifted 
  	"Answer the message-list menu"
+ 	^ self menu: aMenu for: #(messageListMenu messageListMenuShifted:) shifted: shifted
+ !
- 	self 
- 		menuHook: aMenu 
- 		named: #messageListMenu 
- 		shifted: shifted.
- 	Preferences useOnlyServicesInMenu ifTrue:[^aMenu].
- 	shifted ifTrue: [^ self shiftedMessageListMenu: aMenu].
- 	aMenu addList: #(
- 			('what to show...'			offerWhatToShowMenu)
- 			('toggle break on entry'		toggleBreakOnEntry)
- 			-
- 			('browse full (b)' 			browseMethodFull)
- 			('browse hierarchy (h)'			classHierarchy)
- 			('browse method (O)'			openSingleMessageBrowser)
- 			('browse protocol (p)'			browseFullProtocol)
- 			-
- 			('fileOut'				fileOutMessage)
- 			('printOut'				printOutMessage)
- 			('copy selector (c)'		copySelector)
- 			('copy reference (C)'	copyReference)
- 			-
- 			('senders of... (n)'			browseSendersOfMessages)
- 			('implementors of... (m)'		browseMessages)
- 			('inheritance (i)'			methodHierarchy)
- 			('versions (v)'				browseVersions)
- 			-
- 			('references... (r)'			browseVariableReferences)
- 			('assignments... (a)'			browseVariableAssignments)
- 			('class refs (N)'			browseClassRefs)
- 			-
- 			('remove method (x)'			removeMessage)
- 			('explore method'			exploreMethod)
- 			('inspect method'			inspectMethod)
- 			-
- 			('more...'				shiftedYellowButtonActivity)).
- 	^ aMenu!

Item was added:
+ ----- Method: MessageSet>>messageListMenuHook:shifted: (in category 'pluggable menus - hooks') -----
+ messageListMenuHook: aMenu shifted: aBoolean
+ 	<messageListMenu>
+ 	^ self menuHook: aMenu named: #messageListMenu shifted: aBoolean.
+ !

Item was changed:
  ----- Method: MessageSet>>shiftedMessageListMenu: (in category 'message functions') -----
  shiftedMessageListMenu: aMenu
  	"Fill aMenu with the items appropriate when the shift key is held down"
+ 	<messageListMenuShifted: true>
  
  	aMenu addStayUpItem.
  	aMenu addList: #(
  		('toggle diffing (D)'						toggleDiffing)
  		('implementors of sent messages'			browseAllMessages)
  		-
  		('local senders of...'						browseLocalSendersOfMessages)
  		('local implementors of...'				browseLocalImplementors)
  		-
  		('spawn sub-protocol'					spawnProtocol)
  		('spawn full protocol'					spawnFullProtocol)
  		-
  		('sample instance'						makeSampleInstance)
  		('inspect instances'						inspectInstances)
  		('inspect subinstances'					inspectSubInstances)).
  
  	self addExtraShiftedItemsTo: aMenu.
  	aMenu addList: #(
  		-
  		('change category...'					changeCategory)).
  
  	self canShowMultipleMessageCategories ifTrue: [aMenu addList:
  		 #(('show category (C)'						showHomeCategory))].
  	aMenu addList: #(
  		-
  		('change sets with this method'			findMethodInChangeSets)
  		('revert to previous version'				revertToPreviousVersion)
  		('remove from current change set'		removeFromCurrentChanges)
  		('revert & remove from changes'		revertAndForget)
  		('add to current change set'				adoptMessageInCurrentChangeset)
+ 		('copy up or copy down...'				copyUpOrCopyDown)).
- 		('copy up or copy down...'				copyUpOrCopyDown)
- 		-
- 		('more...' 								unshiftedYellowButtonActivity)).
  	^ aMenu
  !

Item was changed:
  ----- Method: ObjectExplorer>>codePaneMenu:shifted: (in category 'menus') -----
  codePaneMenu: aMenu shifted: shifted
  	"Note that unless we override perform:orSendTo:, PluggableTextController will respond to all menu items"
+ 	^ StringHolder codePaneMenu: aMenu shifted: shifted
- 	^ StringHolder basicNew codePaneMenu: aMenu shifted: shifted
  !

Item was added:
+ ----- Method: PackagePaneBrowser>>mainPackageMenu: (in category 'package list') -----
+ mainPackageMenu: aMenu
+ 	"Answer a Menu of operations on class packages to be 
+ 	displayed when the operate menu button is pressed."
+ 	<packageListMenu>
+ 	^aMenu addList: #(
+ 			('find class...'		findClass)
+ 			('recent classes...'	recent)
+ 			-
+ 			('reorganize'		editSystemCategories)
+ 			('update'			updatePackages));
+ 		yourself.
+ !

Item was changed:
  ----- Method: PackagePaneBrowser>>packageMenu: (in category 'package list') -----
  packageMenu: aMenu
- 	"Answer a Menu of operations on class packages to be 
- 	displayed when the operate menu button is pressed."
  
+ 	^ self menu: aMenu for: #(packageListMenu packageListMenuShifted:)!
- 	^aMenu
- 			labels: 'find class...\recent classes...\reorganize\update' withCRs
- 			lines: #(2)
- 			selections: #(#findClass #recent #editSystemCategories #updatePackages)!

Item was changed:
  ----- Method: PointerFinder>>menu:shifted: (in category 'pointer-list') -----
  menu: aMenu shifted: shifted
+ 
+ 	^ self menu: aMenu for: #(pointerListMenu pointerListMenuShifted:) shifted: shifted!
- 	^ aMenu
- 		addList: #(
- 			('Inspect (i)' #inspectObject 'Live long and prosper!!')
- 			-
- 			('Search again' #searchAgain 'Search again\for the same object' withCRs));
- 		yourself.!

Item was added:
+ ----- Method: PointerFinder>>pointerListMenu: (in category 'pointer-list') -----
+ pointerListMenu: aMenu
+ 
+ 	<pointerListMenu>	
+ 	^ aMenu
+ 		addList: #(
+ 			('Inspect (i)' #inspectObject 'Live long and prosper!!')
+ 			-
+ 			('Search again' #searchAgain 'Search again\for the same object' withCRs));
+ 		yourself.!

Item was removed:
- ----- Method: RecentMessageSet>>messageListMenu:shifted: (in category 'message functions') -----
- messageListMenu: aMenu shifted: shifted
- 	"Answer the message-list menu"
- 
- 	shifted ifTrue: [^ self shiftedMessageListMenu: aMenu].
- 	aMenu addList:#(
- 			('what to show...'						offerWhatToShowMenu)
- 			-
- 			('browse full (b)' 						browseMethodFull)
- 			('browse hierarchy (h)'					classHierarchy)
- 			('browse method (O)'					openSingleMessageBrowser)
- 			('browse protocol (p)'					browseFullProtocol)
- 			-
- 			('fileOut (o)'								fileOutMessage)
- 			('printOut'								printOutMessage)
- 			('copy selector (c)'						copySelector)
- 			('copy reference (C)'					copyReference)
- 			-
- 			('senders of... (n)'						browseSendersOfMessages)
- 			('implementors of... (m)'					browseMessages)
- 			('inheritance (i)'							methodHierarchy)
- 			('versions (v)'							browseVersions)
- 			-
- 			('references... (r)'						browseVariableReferences)
- 			('assignments... (a)'						browseVariableAssignments)
- 			('class refs (N)'							browseClassRefs)
- 			-
- 			('remove method (x)'					removeMessage)
- 			('remove from RecentSubmissions'		removeFromRecentSubmissions)
- 			-
- 			('more...'								shiftedYellowButtonActivity)).
- 	^ aMenu!

Item was added:
+ ----- Method: RecentMessageSet>>messageListMenuForRecentSubmission: (in category 'message functions') -----
+ messageListMenuForRecentSubmission: aMenu
+ 	<messageListMenuShifted: false>
+ 	aMenu addList:#(
+ 			('remove from RecentSubmissions'		removeFromRecentSubmissions)).
+ 	^ aMenu!

Item was added:
+ ----- Method: SelectorBrowser>>mainSelectorMenu: (in category 'selector list') -----
+ mainSelectorMenu: aMenu
+ 
+ 	<selectorMenu>
+ 	^ aMenu addList: #(
+ 			('senders (n)'					senders)
+ 			('implementors (m)'				implementors)
+ 			('copy selector to clipboard'	copyName));
+ 		yourself
+ !

Item was changed:
  ----- Method: SelectorBrowser>>selectorMenu: (in category 'selector list') -----
  selectorMenu: aMenu
+ 	^ self menu: aMenu for: #(selectorMenu selectorMenuShifted:)
+ !
- 	^ aMenu labels:
- 'senders (n)
- implementors (m)
- copy selector to clipboard'
- 	lines: #()
- 	selections: #(senders implementors copyName)!

Item was removed:
- ----- Method: SetInspector>>fieldListMenu: (in category 'menu') -----
- fieldListMenu: aMenu
- 
- 	^ aMenu labels:
- 'inspect
- copy name
- objects pointing to this value
- refresh view
- remove
- basic inspect'
- 	lines: #( 5 8)
- 	selections: #(inspectSelection copyName objectReferencesToSelection update removeSelection inspectBasic)
- !

Item was added:
+ ----- Method: SetInspector>>mainFieldListMenu: (in category 'menu') -----
+ mainFieldListMenu: aMenu
+ 
+ 	^ aMenu labels: #(
+ 			('inspect'							inspectSelection)
+ 			('copy name'						copyName)
+ 			('objects pointing to this value'		objectReferencesToSelection)
+ 			('refresh view'						update)
+ 			('remove'							removeSelection)
+ 			-
+ 			('basic inspect'						inspectBasic));
+ 		yourself
+ !

Item was changed:
  ----- Method: StringHolder class>>open (in category '*Tools') -----
  open
  	^ (Smalltalk at: #Workspace ifAbsent:[self]) new openLabel: 'Workspace'
+ !
- 		"Not to be confused with our own class var 'Workspace'"!

Item was added:
+ ----- Method: StringHolder>>buildMenu:withBuilders:shifted: (in category '*Tools-pluggable menus') -----
+ buildMenu: aMenu withBuilders: builders shifted: aBoolean
+ 	" We let every builder modify the menu.
+ 	The builder should indicate whether to abort by returning nil."
+ 	| menu |
+ 	menu := aMenu.
+ 	builders do: [:builder |
+ 		menu := self perform: builder method selector withEnoughArguments: { aMenu . aBoolean }.
+ 		menu ifNil: [^ aMenu]].
+ 	^ menu
+ !

Item was changed:
  ----- Method: StringHolder>>codePaneMenu:shifted: (in category '*Tools-code pane menu') -----
  codePaneMenu: aMenu shifted: shifted
+ 	^ self menu: aMenu for: #(codePaneMenu codePaneMenuShifted:) shifted: shifted
+ !
- 	"Fill in the given menu with additional items. The menu is prepoulated with the 'standard' text commands that the editor supports. Note that unless we override perform:orSendTo:, the editor will respond to all menu items in a text pane"
- 	^self class codePaneMenu: aMenu shifted: shifted!

Item was added:
+ ----- Method: StringHolder>>codePaneMenuHook:shifted: (in category '*Tools-pluggable menus - hooks') -----
+ codePaneMenuHook: aMenu shifted: aBoolean
+ 	<codePaneMenu>
+ 	^ self menuHook: aMenu named: #codePaneMenu shifted: aBoolean.
+ !

Item was added:
+ ----- Method: StringHolder>>mainCodePaneMenu:shifted: (in category '*Tools-code pane menu') -----
+ mainCodePaneMenu: aMenu shifted: shifted
+ 	<codePaneMenu>
+ 	"Fill in the given menu with additional items. The menu is prepoulated with the 'standard' text commands that the editor supports. Note that unless we override perform:orSendTo:, the editor will respond to all menu items in a text pane"
+ 	^ self class codePaneMenu: aMenu shifted: shifted.
+ !

Item was added:
+ ----- Method: StringHolder>>menu:for: (in category '*Tools-pluggable menus') -----
+ menu: aMenu for: aMenuSymbolOrCollection
+ 
+ 	^ self menu: aMenu for: aMenuSymbolOrCollection shifted: false!

Item was added:
+ ----- Method: StringHolder>>menu:for:shifted: (in category '*Tools-pluggable menus') -----
+ menu: aMenu for: aMenuSymbolOrCollection shifted: aBoolean
+ 
+ 	| builders |
+ 	builders := self menuBuildersFor: aMenuSymbolOrCollection in: self class.
+ 	builders := aBoolean 
+ 		ifTrue:  [builders reject: [:builder | builder arguments = #(false)]]
+ 		ifFalse: [builders reject: [:builder | builder arguments = #(true)]].
+ 
+ 	^ self buildMenu: aMenu withBuilders: builders shifted: aBoolean
+ !

Item was added:
+ ----- Method: StringHolder>>menuBuildersFor:in: (in category '*Tools-pluggable menus') -----
+ menuBuildersFor: someMenus in: aClass
+ 	"Find all builders and sort them by
+ 		1. Priority (default 500)
+ 		2. selector name
+ 		3. inheritance
+ 	"
+ 	^ (self menuPragmasFor: someMenus in: aClass) sorted: [:a :b | 
+ 		|ma mb pa pb|
+ 		ma := a method.
+ 		mb := b method.
+ 		pa := self methodMenuPriority: ma.
+ 		pb := self methodMenuPriority: mb.
+ 		pa < pb or: [
+ 			pa = pb and: [
+ 				ma selector <= mb selector and: [
+ 					mb methodClass inheritsFrom: ma methodClass]]]]
+ !

Item was added:
+ ----- Method: StringHolder>>menuPragmasFor:in: (in category '*Tools-pluggable menus') -----
+ menuPragmasFor: aMenuSymbolOrCollection in: aClass
+ 	
+ 	^ aMenuSymbolOrCollection isCollection
+ 		ifTrue: [aMenuSymbolOrCollection gather: [:aMenuSymbol |
+ 				Pragma allNamed: aMenuSymbol from: aClass to: Object]]
+ 		ifFalse: [Pragma allNamed: aMenuSymbolOrCollection from: aClass to: Object]!

Item was added:
+ ----- Method: StringHolder>>methodMenuPriority: (in category '*Tools-pluggable menus') -----
+ methodMenuPriority: aMethod
+ 	"The pirority of a menu method indicated by a <menuPriority: ...> pragma.
+ 	Defaults to 500"
+ 	^ (aMethod pragmas detect: [:p | p keyword == #menuPriority: ] ifNone: [^ 500])
+ 		argumentAt: 1
+ !

Item was added:
+ ----- Method: VersionsBrowser>>listSelectionVersionsMenu: (in category 'menu') -----
+ listSelectionVersionsMenu: aMenu
+ 	"Fill aMenu with menu items appropriate to the receiver"
+ 	<versionsMenu>
+ 
+ 	listIndex > 0 ifTrue:[
+ 		(list size > 1 ) ifTrue: [ aMenu addTranslatedList: #(
+ 			('compare to current'		compareToCurrentVersion		'compare selected version to the current version')
+ 			('compare to version...'	compareToOtherVersion		'compare selected version to another selected version'))].
+ 		"Note: Revert to selected should be visible for lists of length one for having the ability to revert to an accidentally deleted method"
+ 		 aMenu addTranslatedList: #(
+ 			('revert to selected version'	fileInSelections					'resubmit the selected version, so that it becomes the current version') 
+ 			('fileOut selected version'	fileOutSelection					'file out the selected version') )].
+ 	^ aMenu!

Item was added:
+ ----- Method: VersionsBrowser>>mainVersionsMenu: (in category 'menu') -----
+ mainVersionsMenu: aMenu
+ 	"Fill aMenu with menu items appropriate to the receiver"
+ 	<versionsMenu>
+ 
+ 	aMenu addTranslatedList: #(
+ 		('remove from changes'		removeMethodFromChanges	'remove this method from the current change set, if present')
+ 		('edit current method (O)'	openSingleMessageBrowser		'open a single-message browser on the current version of this method')		
+ 		('find original change set'	findOriginalChangeSet			'locate the changeset which originally contained this version')
+ 		-
+ 		('toggle diffing (D)'			toggleDiffing					'toggle whether or not diffs should be shown here')
+ 		('update list'				reformulateList					'reformulate the list of versions, in case it somehow got out of synch with reality')
+ 		-
+ 		('senders (n)'				browseSenders					'browse all senders of this selector')
+ 		('implementors (m)'			browseImplementors			'browse all implementors of this selector')
+ 		-
+ 		('help...'					offerVersionsHelp				'provide an explanation of the use of this tool')).
+ 											
+ 	^aMenu!

Item was added:
+ ----- Method: VersionsBrowser>>titleVersionsMenu: (in category 'menu') -----
+ titleVersionsMenu: aMenu
+ 	"Add a menu title atop aMenu"
+ 	<versionsMenu>
+ 	<menuPriority: 100>
+ 	aMenu title: 'Versions' translated.
+ 	aMenu addStayUpItemSpecial.
+ 	^ aMenu!

Item was changed:
  ----- Method: VersionsBrowser>>versionsMenu: (in category 'menu') -----
  versionsMenu: aMenu
- 	"Fill aMenu with menu items appropriate to the receiver"
  
+ 	^ self menu: aMenu for: #(versionsMenu versionsMenuShifted:)
+ !
- 	aMenu title: 'Versions' translated.
- 	aMenu addStayUpItemSpecial.
- 
- 	listIndex > 0 ifTrue:[
- 		(list size > 1 ) ifTrue: [ aMenu addTranslatedList: #(
- 			('compare to current'		compareToCurrentVersion		'compare selected version to the current version')
- 			('compare to version...'	compareToOtherVersion		'compare selected version to another selected version'))].
- 		"Note: Revert to selected should be visible for lists of length one for having the ability to revert to an accidentally deleted method"
- 		 aMenu addTranslatedList: #(
- 			('revert to selected version'	fileInSelections					'resubmit the selected version, so that it becomes the current version') 
- 			('fileOut selected version'	fileOutSelection					'file out the selected version') )].
- 
- 	aMenu addTranslatedList: #(
- 		('remove from changes'		removeMethodFromChanges	'remove this method from the current change set, if present')
- 		('edit current method (O)'	openSingleMessageBrowser		'open a single-message browser on the current version of this method')		
- 		('find original change set'	findOriginalChangeSet			'locate the changeset which originally contained this version')
- 		-
- 		('toggle diffing (D)'			toggleDiffing					'toggle whether or not diffs should be shown here')
- 		('update list'				reformulateList					'reformulate the list of versions, in case it somehow got out of synch with reality')
- 		-
- 		('senders (n)'				browseSenders					'browse all senders of this selector')
- 		('implementors (m)'			browseImplementors			'browse all implementors of this selector')
- 		-
- 		('help...'					offerVersionsHelp				'provide an explanation of the use of this tool')).
- 											
- 	^aMenu!



More information about the Packages mailing list