'From Cuis 1.0 of 30 July 2009 [latest update: #247] on 31 July 2009 at 3:58:37 pm'!
"Change Set:		0250-ReorganizeCategories-jmv
Date:			31 July 2009
Author:			

<your descriptive text goes here>"!

!classDefinition: #CPUWatcher category: #'Tools-Debugger'!
Model subclass: #CPUWatcher
	instanceVariableNames: 'tally watcher threshold'
	classVariableNames: 'CurrentCPUWatcher'
	poolDictionaries: ''
	category: 'Tools-Debugger'!

!FormsAndHelpsRepository commentStamp: '<historical>' prior: 0!
For general use!

!classDefinition: #ObjectFinalizer category: #'System-Support'!
Object subclass: #ObjectFinalizer
	instanceVariableNames: 'receiver selector arguments'
	classVariableNames: ''
	poolDictionaries: ''
	category: 'System-Support'!
!classDefinition: #PointerExplorer category: #'Tools-Explorer'!
ObjectExplorer subclass: #PointerExplorer
	instanceVariableNames: ''
	classVariableNames: ''
	poolDictionaries: ''
	category: 'Tools-Explorer'!
!classDefinition: #PointerExplorerWrapper category: #'Tools-Explorer'!
ObjectExplorerWrapper subclass: #PointerExplorerWrapper
	instanceVariableNames: ''
	classVariableNames: ''
	poolDictionaries: ''
	category: 'Tools-Explorer'!
!classDefinition: #ProcessBrowser category: #'Tools-Debugger'!
Model subclass: #ProcessBrowser
	instanceVariableNames: 'selectedProcess selectedContext methodText processList processListIndex stackList stackListIndex sourceMap selectedClass selectedSelector searchString autoUpdateProcess deferredMessageRecipient lastUpdate startedCPUWatcher'
	classVariableNames: 'Browsers SuspendedProcesses'
	poolDictionaries: ''
	category: 'Tools-Debugger'!
!classDefinition: #ProtocolCatcher category: #'Tools-Debugger'!
ProtoObject subclass: #ProtocolCatcher
	instanceVariableNames: 'realObject'
	classVariableNames: 'Protocols Started'
	poolDictionaries: ''
	category: 'Tools-Debugger'!
!classDefinition: #ProtocolCatcher2 category: #'Tools-Debugger'!
Object subclass: #ProtocolCatcher2
	instanceVariableNames: 'realObject'
	classVariableNames: 'Protocols Started'
	poolDictionaries: ''
	category: 'Tools-Debugger'!
!classDefinition: #SharedPool category: #'System-Support'!
Object subclass: #SharedPool
	instanceVariableNames: ''
	classVariableNames: ''
	poolDictionaries: ''
	category: 'System-Support'!

!CodeHolder methodsFor: 'misc' stamp: 'jmv 7/31/2009 12:18'!
menuButton
	"Answer a button that brings up a menu.  Useful when adding new features, but at present is between uses"

	| aButton |
	aButton _ IconicButton new target: self;
		labelGraphic: (FormsAndHelpsRepository formAtKey: #TinyMenu);
		color: Color transparent; 
		actWhen: #buttonDown;
		actionSelector: #offerMenu;
		yourself.
	aButton setBalloonText: 'click here to get a menu with further options'.
	^ aButton
! !


!Color class methodsFor: 'color from user' stamp: 'jmv 7/31/2009 12:09'!
oldColorPaletteForDepth: depth extent: paletteExtent
	"Returns a form of the given size showing a color palette for the given depth."
	"(Color oldColorPaletteForDepth: Display depth extent: 720@100) display"

	| c p f nSteps rect w h q |
	f _ Form extent: paletteExtent depth: depth.
	f fill: f boundingBox fillColor: Color white.
	nSteps _ depth > 8 ifTrue: [12] ifFalse: [6].
	w _ paletteExtent x // (nSteps * nSteps).
	h _ paletteExtent y - 20 // nSteps.
	0 to: nSteps-1 do: [:r |
		0 to: nSteps-1 do: [:g |
			0 to: nSteps-1 do: [:b |
				c _ Color r: r g: g b: b range: nSteps - 1.
				rect _ ((r * nSteps * w) + (b * w)) @ (g * h) extent: w@(h + 1).
				f fill: rect fillColor: c]]].
	q _ Rectangle origin: paletteExtent - (50@19) corner: paletteExtent.
"	q displayOn: f."
	'Trans.' displayOn: f at: q origin + (9@1).

	w _ ((paletteExtent x - q width - 130) // 64) max: 1.
	p _ paletteExtent x - q width - (64 * w) - 1 @ (paletteExtent y - 19).
	0 to: 63 do:
		[:v | c _ Color r: v g: v b: v range: 63.
		f fill: ((v * w)@0 + p extent: (w + 1)@19) fillColor: c].
	^ f
! !


!FileList methodsFor: 'initialization' stamp: 'jmv 7/31/2009 12:26'!
buttonSelectorsToSuppress
	"Answer a list of action selectors whose corresponding services we would prefer *not* to have appear in the filelist's button pane; this can be hand-jimmied to suit personal taste."

	^ #(addFileToNewZip: compressFile:)! !


!FileStream class methodsFor: 'concrete classes' stamp: 'jmv 7/31/2009 12:26'!
concreteStream
	"Who should we really direct class queries to? "
	^ StandardFileStream! !

!FileStream class methodsFor: 'file reader services' stamp: 'jmv 7/31/2009 12:27'!
fileReaderServicesForFile: fullName suffix: suffix
	"Answer services for the given file"

	^ ((self isSourceFileSuffix: suffix) or: [ suffix = '*' ])
		ifTrue:[{
			self serviceFileIn}]
		ifFalse:
			[#()]! !

!FileStream class methodsFor: 'file reader services' stamp: 'jmv 7/31/2009 12:27'!
services

	^ Array
			with: self serviceFileIn
	! !


!FormsAndHelpsRepository class methodsFor: 'accessing' stamp: 'jmv 7/31/2009 12:17'!
formAtKey: aString
	"Answer the form saved under the given key"

	Symbol hasInterned: aString ifTrue:
		[:aKey | ^ FormDictionary at: aKey ifAbsent: [nil]].
	^ nil! !

!FormsAndHelpsRepository class methodsFor: 'accessing' stamp: 'jmv 7/31/2009 12:17'!
saveForm: aForm atKey: aKey
	FormDictionary at: aKey asSymbol put: aForm! !

!FormsAndHelpsRepository class methodsFor: 'accessing' stamp: 'jmv 7/31/2009 12:17'!
squeakyMouseForm
	^ self formAtKey: 'squeakyMouse'

"
	ScriptingSystem saveForm: (Form
	extent: 30@29
	depth: 16
	fromArray: #( 1811114995 1878286257 2012637171 1811180532 1811180533 1811179508 1811180532 1811179508 1744006133 1878289396 1811180533 1878289396 1744007156 1674736630 1744006132 1811114995 1811181556 1744006131 1811246068 1811180532 1811179508 1811180532 1744071668 1811113972 1811180532 1811180532 1811179507 1878288338 1945529332 1744071668 1743941620 1811112945 1811179506 1811114995 1744006131 1744006130 1744005106 1811048434 1811113969 1743939570 1811179506 1743939571 1676833782 1676765171 1811047410 1744006131 1811048435 1811116020 1811180531 1743939571 1811048435 1743939570 1743939570 1743939570 1743940594 1744005106 1811181556 1811180532 1676766196 1743939570 1878420468 1676963830 1189896082 1811245044 1744137204 1744070644 1811179508 1811113971 1743939571 1811179508 1811246070 1811309524 1811302093 1811310580 1811246068 1674867703 1744049472 1120606594 1118465013 1744137205 1811179508 1811180532 1744071667 1744006132 1811112947 1811247095 1605584589 358761132 289435638 1676830707 1741975543 1462778473 1811312631 702891724 1811310548 1945528308 1811178450 1945528307 1878288372 1878353875 1878421494 1051471335 1809213397 1118524175 1811246068 1945659348 1185698607 1878486005 1672694510 1118531574 1607626741 1878420467 1811180533 1743942645 1744072693 1811301035 1185770487 1878486006 1324239597 1811180533 1811116019 1120623438 1878352818 1945462739 704868339 1878289395 1811049459 1878221808 1878223859 1743876083 1811162563 1945463796 1811181556 1464746666 1811116018 1809019893 1120551562 1945464821 1741844468 1466842760 1878289395 1811048434 1811050483 1811050483 1878223859 1049188174 1741910004 1811181556 1256998634 1811114994 1878289396 1466840647 1744007156 1744006131 1676877216 1743940596 1878222835 1743938545 1878351792 1676833781 358641652 1743940596 1811050484 845566798 1811113970 1811114995 1811163652 1811112913 1878420468 1878282028 1811179506 1607560178 1878289395 1676900342 1878351825 1466853330 1811113971 1811116019 635659217 1811179506 1811245045 1676942754 1744137206 1744201717 1676962806 1676962805 1811310581 1676896245 1744199635 1811376117 1744072695 1744005109 1811244019 499279861 1811310581 1811244020 1811293668 1399943159 1605528567 1744136181 982063522 986342388 1744070645 1744189066 430063308 1744071669 1744070644 1744067504 566519797 1744136181 1744137205 1743999854 912813044 1811311606 1742162607 4195488 283139922 1945531382 1253113857 144710948 1601400791 1811246069 1811167879 1464821747 1744136180 1674799094 1811178482 843473875 1811311606 1878533542 2106790 2080066222 1876193270 696845376 627472380 1185772536 1878355957 1743990309 1744007157 1676898294 1744006132 1811114996 1743941620 1811180533 1809204941 4194368 4217681 1878290421 1252982848 4194336 1670540278 1739811795 1878353906 1744006131 1811179506 1744007157 1744005106 1945462771 1811182582 1811311574 1393641133 1462856629 2012638196 1876382449 1112301394 1742041045 1945596917 1676833781 1811113970 1811179507 1811180532 1672705014 1674735606 1672697648 1945725943 1878551479 1809215479 1811312629 1809216504 1809215479 1809215478 1462853490 1878487029 1744007158 1744005075 1811239726 704979363 495004132 700789287 562372997 631646663 1739998892 4194400 1116497846 698688932 562375109 770124262 633609569 495070758 1257010166 562315916 1809279958 2012894002 1047280171 980237901 910966381 1668677696 4194400 6314867 1047281260 908804749 910968495 1393719290 1809279959 1185750370 1809214455 1878469062 423836236 1532188466 1601592148 1462986647 1672937568 4194368 6319062 1603622706 1601525554 1601522417 1047336194 770206679 1878487031 1878409899 977955830 1809145716 1118586509 980105834 980045584 1811372914 980104778 1605526483 1395605131 910769804 1118651052 1534358520 1809136234 1118596053 1532059506 1878485973 1326456163 1945660374 1742106615 1811311607 1945725942 1742107641 1744072693 1811311605 1744203767 1878551543 564478604 1878553591 1603428242 1811048433 1811049459 1051290611 1744006131 1811049459 1878156273 1743874034 1744007156 1743874033 1811048434 1811113970 1743939571 1743933228 1603301363 1743875059 1811049458 1945461745 1811181556 1811113971 1811049458 1811048434 1811116020 1878287346 1878223857 1743940594 1744006130 1744007157 1945395153 1945400309 1811048434 1743810547 1676765170 1878353906 1811113970 1743874032 1810983921 1743874033 1811113971 1676765169 1743874034 1743940593 1743939569 1811047409 1676765168 1743940595 1810981872 1945397235 1607560179 1743941620 1810982897 1810983921 1811048433 1744007155 1743875059 1811048434 1743875058 1743939568 1676832754 1811116019 1811114994 1811244019 1676962805 1677029367 1811244020 1744005106 1743940594 1811246068 1744070645 1676961781 1744004084 1676897269 1811180533 1878353908 1744004083 1744070645)
	offset: 0@0) atKey: 'squeakyMouse'"! !


!HaloMorph methodsFor: 'private' stamp: 'jmv 7/31/2009 12:19'!
addGraphicalHandleFrom: formKey at: aPoint
	"Add the supplied form as a graphical handle centered at the given point.  Return the handle."
	| handle aForm |
	aForm _ (FormsAndHelpsRepository formAtKey: formKey) ifNil: [FormsAndHelpsRepository formAtKey: #SolidMenu].
	handle _ ImageMorph new image: aForm; bounds: (Rectangle center: aPoint extent: aForm extent).
	self addMorph: handle.
	handle on: #mouseUp send: #endInteraction to: self.
	^ handle
! !

!HaloMorph methodsFor: 'private' stamp: 'jmv 7/31/2009 12:18'!
addHandle: handleSpec on: eventName send: selector to: recipient 
	"Add a handle within the halo box as per the haloSpec, and set it up to respond to the given event by sending the given selector to the given recipient.  Return the handle."

	| handle aPoint iconName colorToUse |
	aPoint := self 
				positionIn: haloBox
				horizontalPlacement: handleSpec horizontalPlacement
				verticalPlacement: handleSpec verticalPlacement.
	handle := EllipseMorph 
				newBounds: (Rectangle center: aPoint extent: HandleSize asPoint)
				color: (colorToUse := Color colorFrom: handleSpec color).
	self addMorph: handle.
	(iconName := handleSpec iconSymbol) ifNotNil: 
			[| form |
			form := FormsAndHelpsRepository formAtKey: iconName.
			form ifNotNil: 
					[handle addMorphCentered: ((ImageMorph new)
								image: form;
								color: colorToUse makeForegroundColor;
								lock)]].
	handle 
		on: #mouseUp
		send: #endInteraction
		to: self.
	handle 
		on: eventName
		send: selector
		to: recipient.
	handle 
		setBalloonText: (target balloonHelpTextForHandle: handle) translated.
	^handle! !

!HaloMorph methodsFor: 'private' stamp: 'jmv 7/31/2009 12:18'!
addHandleAt: aPoint color: aColor icon: iconName on: eventName send: selector to: recipient
	"Add a handle centered at the given point with the given color, and set it up to respond to the given event by sending the given selector to the given recipient.  Return the handle."
	| handle |
	handle _ EllipseMorph
		newBounds: (Rectangle center: aPoint extent: self handleSize asPoint)
		color: aColor.
	self addMorph: handle.
	iconName ifNotNil:
		[ | form |
		form _ FormsAndHelpsRepository formAtKey: iconName.
		form ifNotNil:
			[handle addMorphCentered: (ImageMorph new
				image: form; 
				color: aColor makeForegroundColor;
				lock)]].
	handle on: #mouseUp send: #endInteraction to: self.
	handle on: eventName send: selector to: recipient.
	handle setBalloonText: (target balloonHelpTextForHandle: handle) translated.
	^ handle
! !


!IconicButton methodsFor: 'initialization' stamp: 'jmv 7/31/2009 12:18'!
setDefaultLabel
	self labelGraphic: (FormsAndHelpsRepository formAtKey: 'squeakyMouse')! !


!SketchMorph methodsFor: 'initialization' stamp: 'jmv 7/31/2009 12:19'!
initialize

	^ self initializeWith: (FormsAndHelpsRepository formAtKey: 'Painting') deepCopy.

! !


!ColorPickerMorph methodsFor: 'menu' stamp: 'jmv 7/31/2009 12:18'!
pickUpColorFor: aMorph
	"Show the eyedropper cursor, and modally track the mouse through a mouse-down and mouse-up cycle"

      | aHand localPt |
	aHand _ aMorph ifNil: [self activeHand] ifNotNil: [aMorph activeHand].
	aHand ifNil: [aHand _ self currentHand].
	self addToWorld: aHand world near: (aMorph ifNil: [aHand world]) fullBounds.
	self owner ifNil: [^ self].

	aHand showTemporaryCursor: (FormsAndHelpsRepository formAtKey: #Eyedropper) 
			hotSpotOffset: 6 negated @ 4 negated.    "<<<< the form was changed a bit??"

	self updateContinuously: false.
	[Sensor anyButtonPressed]
		whileFalse: 
			 [self trackColorUnderMouse].
	self deleteAllBalloons.

	localPt _ Sensor cursorPoint - self topLeft.
	self inhibitDragging ifFalse: [
		(DragBox containsPoint: localPt) ifTrue:
			["Click or drag the drag-dot means to anchor as a modeless picker"
			^ self anchorAndRunModeless: aHand].
	].
	(clickedTranslucency _ TransparentBox containsPoint: localPt)
		ifTrue: [selectedColor _ originalColor].

	self updateContinuously: true.
	[Sensor anyButtonPressed]
		whileTrue:
			 [self updateTargetColorWith: self indicateColorUnderMouse].
	aHand newMouseFocus: nil;
		showTemporaryCursor: nil;
		flushEvents.
	self delete.
		 
 ! !


!SystemDictionary methodsFor: 'shrinking' stamp: 'jmv 7/31/2009 12:25'!
discardOddsAndEnds
	"This method throws out lots of classes that are not frequently used."
	"Smalltalk discardOddsAndEnds"

	SystemOrganization removeSystemCategory: 'System-Serial Port'.
	SystemOrganization removeSystemCategory: 'ST80-Symbols'.
	SystemOrganization removeSystemCategory: 'Tools-File Contents Browser'.
	SystemOrganization removeSystemCategory: 'System-Compression'.
	SystemOrganization removeSystemCategory: 'Tools-Explorer'.
	SystemOrganization removeSystemCategory: 'System-Digital Signatures'.

	Form removeSelector: #edit.
	Smalltalk removeClassNamed: #FormEditorView.
	Smalltalk removeClassNamed: #FormEditor.
	SystemOrganization removeSystemCategory: 'ST80-Paths'.

	"bit editor (remove Form editor first):"
	Form removeSelector: #bitEdit.
	Form removeSelector: #bitEditAt:scale:.
	StrikeFont removeSelector: #edit:.
	Smalltalk removeClassNamed: #FormButtonCache.
	Smalltalk removeClassNamed: #FormMenuController.
	Smalltalk removeClassNamed: #FormMenuView.
	Smalltalk removeClassNamed: #BitEditor.

	"inspector for Dictionaries of Forms"
	Dictionary removeSelector: #inspectFormsWithLabel:.
	Smalltalk removeClassNamed: #FormHolderView.
	Smalltalk removeClassNamed: #FormInspectView.

	"experimental updating object viewer:"
	Object removeSelector: #evaluate:wheneverChangeIn:.
	Smalltalk removeClassNamed: #ObjectViewer.
	Smalltalk removeClassNamed: #ObjectTracer.

	"miscellaneous classes:"
	Smalltalk removeClassNamed: #Array2D.
	Smalltalk removeClassNamed: #DriveACar.
	Smalltalk removeClassNamed: #EventRecorder.
	Smalltalk removeClassNamed: #FindTheLight.
	Smalltalk removeClassNamed: #PluggableTest.
	Smalltalk removeClassNamed: #SystemMonitor.
	Smalltalk removeClassNamed: #DocLibrary.

	Smalltalk removeClassNamed: #ProtocolBrowser.
	Smalltalk removeClassNamed: #ObjectExplorerWrapper.
	Smalltalk removeClassNamed: #HierarchyBrowser.
	Smalltalk removeClassNamed: #LinkedMessageSet.
	Smalltalk removeClassNamed: #ObjectExplorer.
	Smalltalk removeClassNamed: #PackageBrowser.
	Smalltalk removeClassNamed: #AbstractHierarchicalList.
	Smalltalk removeClassNamed: #ChangeList.
	Smalltalk removeClassNamed: #VersionsBrowser.
	Smalltalk removeClassNamed: #ChangeRecord.
	Smalltalk removeClassNamed: #SelectorBrowser.
	Smalltalk removeClassNamed: #FXGrafPort.
	Smalltalk removeClassNamed: #FXBlt.

	Smalltalk at: #SampledSound ifPresent: [:c |c initialize].

#(GZipConstants ZipConstants KlattResonatorIndices ) do:
	[:k | Smalltalk removeKey: k ifAbsent: []].
! !


!SystemDictionary class methodsFor: 'initialization' stamp: 'jmv 7/31/2009 12:25'!
initialize
	"SystemDictionary initialize"

	| oldList |
	oldList := StartUpList.
	StartUpList := OrderedCollection new.
	"These get processed from the top down..."
	#(
		#Delay 
		#DisplayScreen 
		#Cursor 
		#InputSensor 
		#ProcessorScheduler 	"Starts low space watcher and bkground."
		#FileDirectory 			"Enables file stack dump and opens sources."
		#ShortIntegerArray 
		#ShortRunArray)
			do: [ :clsName | 	
				Smalltalk at: clsName ifPresent: [:cls | Smalltalk addToStartUpList: cls]].

	oldList ifNotNil: [
		oldList do: [ :className | 
			Smalltalk 
				at: className
				ifPresent: [:theClass | Smalltalk addToStartUpList: theClass]]].

	#(
		#ImageSegment 
		#PasteUpMorph) 
			do:  [ :clsName | 
				Smalltalk at: clsName ifPresent: [:cls | Smalltalk addToStartUpList: cls]].
			
	oldList := ShutDownList.
	ShutDownList := OrderedCollection new.
	"These get processed from the bottom up..."
	#(
		#Delay 
		#DisplayScreen 
		#InputSensor 
		#Form 
		#PasteUpMorph 
		#StrikeFont 
		#Color 
		#FileDirectory 
		#SoundPlayer 
		#ImageSegment) 
			do: [ :clsName | 
				Smalltalk at: clsName ifPresent: [:cls | Smalltalk addToShutDownList: cls]].

	oldList ifNotNil: [
		oldList reverseDo: [ :className | 
			Smalltalk 
				at: className
				ifPresent: [:theClass | Smalltalk addToShutDownList: theClass]]]! !


!SystemWindow methodsFor: 'initialization' stamp: 'jmv 7/31/2009 12:19'!
createExpandBox
	^ self createBox 
		
		labelGraphic: (FormsAndHelpsRepository formAtKey: 'expandBox');
	
		 extent: self boxExtent;
		 actWhen: #buttonUp;
		 actionSelector: #expandBoxHit;

		 setBalloonText: 'expand to full screen' translated! !

!SystemWindow methodsFor: 'initialization' stamp: 'jmv 7/31/2009 12:19'!
createMenuBox
	^ self createBox 
		
		labelGraphic: (FormsAndHelpsRepository formAtKey: 'TinyMenu');

		 extent: self boxExtent;
		 actWhen: #buttonDown;
		 actionSelector: #offerWindowMenu;
		 setBalloonText: 'window menu' translated! !


!ThreePhaseButtonMorph class methodsFor: 'class initialization' stamp: 'jmv 7/31/2009 12:19'!
initialize
	"ThreePhaseButtonMorph initialize"
	| extent inset |
	extent _ 12@12.
	inset _ 3.

	#('CheckBoxOff' 'CheckBoxOn' 'CheckBoxPressed') do: [:button |
		| f r |
		f _ ColorForm extent: extent depth: 1.
		f colors: {Color transparent. Color black}.
		f borderWidth: 1.
		r _ f boundingBox insetBy: inset.
		button = 'CheckBoxPressed' ifTrue: [f border: r width: 1].
		button = 'CheckBoxOn' ifTrue: [f fillBlack: r].
		FormsAndHelpsRepository saveForm: f atKey: button].

	#('RadioButtonOff' 'RadioButtonOn' 'RadioButtonPressed') do: [:button |
		| f r c |
		f _ ColorForm extent: extent depth: 1.
		f colors: {Color transparent. Color black}.
		r _ f boundingBox.
		c _ f getCanvas.
		c frameOval: r color: Color black.
		r _ r insetBy: inset.
		button = 'RadioButtonPressed' ifTrue:
			[c frameOval: r color: Color black].
		button = 'RadioButtonOn' ifTrue:
			[c fillOval: r color: Color black].
		FormsAndHelpsRepository saveForm: f atKey: button]! !

!ThreePhaseButtonMorph class methodsFor: 'instance creation' stamp: 'jmv 7/31/2009 12:19'!
checkBox
	"Answer a button pre-initialized with checkbox images."
	| f |
	^self new
		onImage: (f _ FormsAndHelpsRepository formAtKey: 'CheckBoxOn');
		pressedImage: (FormsAndHelpsRepository formAtKey: 'CheckBoxPressed');
		offImage: (FormsAndHelpsRepository formAtKey: 'CheckBoxOff');
		extent: f extent + (2@0);
		yourself
! !

ThreePhaseButtonMorph initialize!
SystemDictionary initialize!
FormsAndHelpsRepository removeSelector: #allClassVarNamesInSystem!
FormsAndHelpsRepository removeSelector: #colorFudge!
FormsAndHelpsRepository removeSelector: #formAtKey:!
FormsAndHelpsRepository removeSelector: #formAtKey:extent:depth:!
FormsAndHelpsRepository removeSelector: #formDictionary!
FormsAndHelpsRepository removeSelector: #saveForm:atKey:!
FormsAndHelpsRepository removeSelector: #spaceReclaimed!
FormsAndHelpsRepository removeSelector: #squeakyMouseForm!
FormsAndHelpsRepository removeSelector: #uniformTileInteriorColor!

!FormsAndHelpsRepository reorganize!
('as yet unclassified')
!

FileStream class removeSelector: #removeLineFeeds:!
FileStream class removeSelector: #serviceRemoveLineFeeds!
Smalltalk removeClassNamed: #CrLfFileStream!
Smalltalk removeClassNamed: #Quadrangle!
"Postscript:
Leave the line above, and replace the rest of this comment by a useful one.
Executable statements should follow this comment, and should
be separated by periods, with no exclamation points (!!).
Be sure to put any further comments in double-quotes, like this one."
Smalltalk removeKey: #ScriptingSystem.
Smalltalk organization removeEmptyCategories.
FileList initialize.
SystemDictionary initialize!

