'From Squeakland 3.8.5976 of 25 August 2004 [latest update: #278] on 31 August 2004 at 5:36:02 pm'! "Change Set: FlexibleVocabulariesPreload-nk Date: 21 August 2004 Author: Ned Konz Method stubs required to be loaded before FlexibleVocabularies-nk.*.mcz "! !Morph methodsFor: '*connectors-scripting-override' stamp: 'nk 8/21/2004 08:42'! filterViewerCategoryDictionary: dict "dict has keys of categories and values of priority. You can re-order or remove categories here." self wantsConnectionVocabulary ifFalse: [dict removeKey: #connection]. self wantsEmbeddingsVocabulary ifFalse: [dict removeKey: #embeddings]. Preferences eToyFriendly ifTrue: [dict removeKey: #layout].! ! !Morph class methodsFor: '*flexiblevocabularies-scripting' stamp: 'nk 8/29/2004 16:36'! allAdditionsToViewerCategories "Answer a Dictionary of ( ) that characterizes the phrases this kind of morph wishes to add to various Viewer categories. This version factors each category definition into a separate method. Subclasses that have additions can either: - override #additionsToViewerCategories, or - (preferably) define one or more additionToViewerCategory* methods. The advantage of the latter technique is that class extensions may be added by external packages without having to re-define additionsToViewerCategories. " "Morph allAdditionsToViewerCategories size" | dict | dict _ IdentityDictionary new. (self class includesSelector: #additionsToViewerCategories) ifTrue: [self additionsToViewerCategories do: [:group | group pairsDo: [:key :list | (dict at: key ifAbsentPut: [OrderedCollection new]) addAll: list]]]. self additionToViewerCategorySelectors do: [ :aSelector | (self perform: aSelector) pairsDo: [ :key :list | (dict at: key ifAbsentPut: [ OrderedCollection new ]) addAll: list ]]. ^dict ! ! !Morph class methodsFor: '*flexiblevocabularies-scripting' stamp: 'nk 10/11/2003 17:48'! noteCompilationOf: aSelector meta: isMeta "Any change to an additionsToViewer... method can invalidate existing etoy vocabularies. The #respondsTo: test is to allow loading the FlexibleVocabularies change set without having to worry about method ordering." "do nothing because this is just the preload." super noteCompilationOf: aSelector meta: isMeta! ! !StandardScriptingSystem class methodsFor: '*flexiblevocabularies-scripting' stamp: 'nk 10/11/2003 17:48'! noteCompilationOf: aSelector meta: isMeta "Any change to an additionsToViewer... method can invalidate existing etoy vocabularies. The #respondsTo: test is to allow loading the FlexibleVocabularies change set without having to worry about method ordering." "do nothing because this is just the preload." super noteCompilationOf: aSelector meta: isMeta! !