[GOODIES] Having module menu for ObjectExplorer

Bergel Alexandre bergel at iam.unibe.ch
Sun Feb 10 15:28:56 UTC 2002


Filein these two .st for having new items for an ObjectExplorer useful for managing modules. 

Alexandre

_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._

Bergel Alexandre  http://www.iam.unibe.ch/~bergel

^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^
-------------- next part --------------
'From Squeak3.3alpha of 30 January 2002 [latest update: #4689] on 10 February 2002 at 4:14:03 pm'!

!ObjectExplorer methodsFor: 'as yet unclassified' stamp: 'AB 2/10/2002 16:13'!
genericMenu: aMenu 
	| insideObject menu |
	currentSelection
		ifNil: [menu _ aMenu.
			menu
				add: '*nothing selected*'
				target: self
				selector: #yourself]
		ifNotNil: [menu _ DumberMenuMorph new defaultTarget: self.
			insideObject _ currentSelection withoutListWrapper.
			menu
				add: 'explore'
				target: insideObject
				selector: #explore;
				
				add: 'inspect'
				target: insideObject
				selector: #inspect;
				 addLine;
				
				add: 'objects pointing to this value'
				target: Smalltalk
				selector: #browseAllObjectReferencesTo:except:ifNone:
				argumentList: (Array
						with: insideObject
						with: #()
						with: nil);
				 addLine;
				
				add: 'browse full'
				target: Browser
				selector: #fullOnClass:
				argument: insideObject class;
				
				add: 'browse class'
				target: insideObject class
				selector: #browse;
				
				add: 'browse hierarchy'
				target: Utilities
				selector: #spawnHierarchyForClass:selector:
				argumentList: (Array with: insideObject class with: nil).
			self addToMenu: menu moduleFeatureFor: insideObject module .
			insideObject class == Symbol
				ifTrue: [menu addLine;
						add: 'senders of ' , insideObject printString
						target: Smalltalk
						selector: #browseAllCallsOn:
						argument: insideObject;
						add: 'implementors of ' , insideObject printString
						target: Smalltalk
						selector: #browseAllImplementorsOf:
						argument: insideObject]].
	^ menu! !
-------------- next part --------------
'From Squeak3.3alpha of 30 January 2002 [latest update: #4689] on 10 February 2002 at 4:04:01 pm'!


!ObjectExplorer methodsFor: 'module features' stamp: 'AB 2/10/2002 15:59'!
addToMenu: menu moduleFeatureFor: module 
	menu addLine.
	menu
		add: 'set alone'
		target: module repository
		selector: #standaloneOn:
		argument: module;
		
		add: 'store on local repository'
		target: module repository cache
		selector: #ensureUpload;
		
		add: 'store on remote server'
		target: module repository
		selector: #ensureUpload;
		
		add: 'uninstall' target: ModuleInstaller
		selector: #fullyUninstall:
		argument: module!
]style[(11 4 19 6 3 4 11 4 8 11 11 6 24 14 13 6 12 27 11 6 30 13 12 24 11 6 24 13 12 11 37 16 13 6)f1b,f1cblue;b,f1b,f1cblue;b,f1,f1cblue;i,f1,f1cblue;i,f1,f1c202202126,f1,f1cblue;i,f1,f1c202202126,f1,f1cblue;i,f1,f1c202202126,f1,f1cblue;i,f1,f1c202202126,f1,f1c202202126,f1,f1cblue;i,f1,f1c202202126,f1,f1c202202126,f1,f1c202202126,f1,f1cblue;i! !


More information about the Squeak-dev mailing list