[Pkg] The Trunk: Protocols-fbs.30.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Apr 15 16:32:27 UTC 2010

Chris Muller uploaded a new version of Protocols to project The Trunk:

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

Name: Protocols-fbs.30
Author: fbs
Time: 14 April 2010, 12:39:30.857 pm
UUID: 7fb9d193-fac2-f44e-a701-0bf76b787185
Ancestors: Protocols-fbs.29

This commit corrects the mistakes of Protocols-fbs.29. We now don't abuse optionalButtons, but instead always add the Lexicon's special buttons just above the code pane.

Lexicon thus now respects the #optionalButtons preference.

=============== Diff against Protocols-fbs.29 ===============

Item was added:
+ ----- Method: Lexicon>>listFrame:fromLeft:width: (in category 'initialization') -----
+ listFrame: bottomFraction fromLeft: leftFraction width: rightFraction
+ 	^LayoutFrame new
+ 		leftFraction: leftFraction offset: 0;
+ 		topFraction: 0 offset: 0;
+ 		rightFraction: (leftFraction + rightFraction) offset: 0;
+ 		bottomFraction: bottomFraction offset: self buttonHeight negated - 3!

Item was changed:
  ----- Method: Lexicon>>buildWith: (in category 'toolbuilder') -----
  buildWith: builder
  	"Create the ui for the browser"
  	| windowSpec max |
  	max := self wantsOptionalButtons ifTrue:[0.32] ifFalse:[0.4].
  	windowSpec := self buildWindowWith: builder specs: {
+ 		(self listFrame: max fromLeft: 0 width: 0.5) -> [self buildCategoryListWith: builder].
+ 		(self listFrame: max fromLeft: 0.5 width: 0.5) -> [self buildMessageListWith: builder].
+ 		(self customButtonsFrame: max) -> [self buildCustomButtonsWith: builder].
- 		(0 at 0 corner: 0.5 at max) -> [self buildCategoryListWith: builder].
- 		(0.5 at 0 corner: 1 at max) -> [self buildMessageListWith: builder].
  		(0 at max corner: 1 at 1) -> [self buildCodePaneWith: builder].
  	^builder build: windowSpec!

Item was changed:
  ----- Method: Lexicon>>customButtonSpecs (in category 'control buttons') -----
  	"Answer a triplet defining buttons, in the format:
  			button label
  			selector to send
  			help message"
  	| aa |
  	aa := contentsSymbol == #tiles ifTrue: [{   "Consult Ted Kaehler regarding this bit"
  	{'tiles'.				#tilesMenu.					'tiles for assignment and constants'. 	true}.
  	{'vars'.				#varTilesMenu.	'tiles for instance variables and a new temporary'. 	true}
  		}] ifFalse: [#()].	"true in 4th place means act on mouseDown"
+ 	^ aa, #(
- 	^ aa,
- 	{{(ScriptingSystem formAtKey: #TinyMenu) asMorph. #offerMenu. 'click here to get a menu with further options'}.
- 	{self limitClassString. #chooseLimitClass. 'Governs which classes'' methods should be shown.  If this is the same as the viewed class, then only methods implemented in that class will be shown.  If it is ProtoObject, then methods of all classes in the vocabulary will be shown.'.}.},
- 	#(
  	('follow'			seeAlso							'view a method I implement that is called by this method')
  	('find'				obtainNewSearchString			'find methods by name search')
  	('sent...'			setSendersSearch				'view the methods I implement that send a given message')
  	('<'					navigateToPreviousMethod 		'view the previous active method')
  	('>'					navigateToNextMethod 			'view the next active method')
+ 	('-'					removeFromSelectorsVisited		'remove this method from my active list'))!
- 	('-'					removeFromSelectorsVisited		'remove this method from my active list')),
- 	{{(ScriptingSystem formAtKey: #Cat) asMorph. #showHomeCategory. 'show this method''s home category'}}.!

Item was added:
+ ----- Method: Lexicon>>customButtonsFrame: (in category 'initialization') -----
+ customButtonsFrame: bottomFraction
+ 	^LayoutFrame new
+ 		leftFraction: 0 offset: 0;
+ 		topFraction: bottomFraction offset: self buttonHeight negated - 4;
+ 		rightFraction: 1 offset: 0;
+ 		bottomFraction: bottomFraction offset: 0!

Item was removed:
- ----- Method: Lexicon>>optionalButtonPairs (in category 'as yet unclassified') -----
- optionalButtonPairs
- 	"Actually, return triples.  Only the custom lexicon-specific buttons are shown"
- 	^ self customButtonSpecs!

More information about the Packages mailing list