--- a/MenuEditor.st Wed Sep 10 10:35:21 1997 +0200
+++ b/MenuEditor.st Wed Sep 10 10:36:23 1997 +0200
@@ -75,6 +75,39 @@
! !
+!MenuEditor class methodsFor:'code generation'!
+
+generateCodeFor:aClass menuSelector:aSelector
+
+ |code category|
+
+ category := self sourceCategory.
+
+ code := Character excla asString
+ , aClass name , ' methodsFor:' , category storeString
+ , Character excla asString , '\\'
+
+ , aSelector , '\'
+ , ' "this window spec was automatically generated by the UI Builder"\\'
+ , ' ^ self class ', aSelector, '\\'
+ , '\'
+ , Character excla asString
+ , ' '
+ , Character excla asString
+ , '\\'.
+ ^ code
+
+"
+self generateCodeFor:MenuEditor menuSelector:#menu
+"
+!
+
+sourceCategory
+ "returns the catagory where to instal the menu
+ "
+ ^ 'accessing menu'
+! !
+
!MenuEditor class methodsFor:'icons'!
iconCreateItem
@@ -1852,20 +1885,7 @@
(ReadStream on:code) fileIn.
(cls compiledMethodAt:selector) isNil ifTrue:[
- category := 'accessing menu'.
- code := Character excla asString
- , cls name , ' methodsFor:' , category storeString
- , Character excla asString , '\\'
-
- , selector , '\'
- , ' "this window spec was automatically generated by the ST/X MenuEditor"\\'
- , ' ^ self class ', selector, '\\'
- , '\'
- , Character excla asString
- , ' '
- , Character excla asString
- , '\\'.
-
+ code := self class generateCodeFor:cls menuSelector:selector.
code := code withCRs.
(ReadStream on:code) fileIn.
].