MenuEditor.st
changeset 416 d28e8c5f25f3
parent 414 116cf2acebe3
child 418 f47e99ae91bc
equal deleted inserted replaced
415:f792d83774b3 416:d28e8c5f25f3
  1852         self buildFrom: aClass andSelector: aSelector
  1852         self buildFrom: aClass andSelector: aSelector
  1853     ]
  1853     ]
  1854 !
  1854 !
  1855 
  1855 
  1856 openModalOnClass:aClass andSelector:aSelector
  1856 openModalOnClass:aClass andSelector:aSelector
       
  1857 
  1857     specClass := Association key:aClass value:aSelector.
  1858     specClass := Association key:aClass value:aSelector.
  1858     super openInterfaceModal.
  1859     super openInterfaceModal.
  1859 
  1860 
  1860 !
  1861 !
  1861 
  1862 
  1862 openOnClass:aClass andSelector:aSelector
  1863 openOnClass:aClass andSelector:aSelector
       
  1864 
  1863     specClass := Association key:aClass value:aSelector.
  1865     specClass := Association key:aClass value:aSelector.
  1864     super openInterface.
  1866     super openInterface.
  1865     self buildFrom:aClass andSelector:aSelector.
  1867     self buildFrom:aClass andSelector:aSelector.
  1866 
  1868 
  1867 !
  1869 !
  1962 
  1964 
  1963 doEditImage
  1965 doEditImage
  1964 
  1966 
  1965     |cls resourceClass resourceSelector imageResourceMessage readStream|
  1967     |cls resourceClass resourceSelector imageResourceMessage readStream|
  1966 
  1968 
  1967     cls := self resolveName:(self specClass).
  1969     cls := self resolveName: self specClass.
  1968     cls isNil ifTrue:[
  1970     cls isNil ifTrue:[
  1969         ^ self information:'No valid class defined!!'.
  1971         ^ self information:'No valid class defined!!'.
  1970     ].
  1972     ].
  1971     (aspects at:#retriever) value size > 0
       
  1972         ifTrue:  [resourceClass := (aspects at:#retriever) value]
       
  1973         ifFalse: [resourceClass := cls].
       
  1974     (aspects at:#icon) value size > 0
  1973     (aspects at:#icon) value size > 0
  1975         ifTrue:  [resourceSelector := (aspects at:#icon) value]
  1974         ifTrue:  [resourceSelector := (aspects at:#icon) value]
  1976         ifFalse: [resourceSelector := #stxIcon].
  1975         ifFalse: [resourceSelector := #stxIcon].
  1977     imageResourceMessage := ImageEditor openModalOnClass: resourceClass andSelector: resourceSelector.
  1976     (aspects at:#retriever) value size > 0
  1978     readStream := imageResourceMessage readStream.
  1977         ifTrue:  [resourceClass := (aspects at:#retriever) value]
  1979     resourceClass := (readStream upTo: $ ) asSymbol.
  1978         ifFalse: [resourceClass := cls withAllSuperclasses detect: [:cls| cls class implements: resourceSelector] ifNone: [cls]].
  1980     resourceSelector := readStream upToEnd asSymbol.
  1979 
  1981     resourceClass size > 0 ifTrue: [(aspects at:#retriever) value: resourceClass].
  1980     (imageResourceMessage := ImageEditor openModalOnClass: resourceClass andSelector: resourceSelector) notNil
  1982     resourceSelector size > 0 ifTrue: [(aspects at:#icon) value: resourceSelector. self modifiedChannel value: true].
       
  1983 
       
  1984     (aspects at:#retriever) value = specClass
       
  1985     ifTrue:
  1981     ifTrue:
  1986     [
  1982     [
  1987         (aspects at:#retriever) value: nil
  1983         readStream := imageResourceMessage readStream.
       
  1984         resourceClass := (readStream upTo: $ ) asSymbol.
       
  1985         resourceSelector := readStream upToEnd asSymbol.
       
  1986         resourceClass size > 0 ifTrue: [(aspects at:#retriever) value: resourceClass].
       
  1987         resourceSelector size > 0 ifTrue: [(aspects at:#icon) value: resourceSelector. self modifiedChannel value: true]
  1988     ]
  1988     ]
  1989 
       
  1990 !
  1989 !
  1991 
  1990 
  1992 doFromClass
  1991 doFromClass
  1993 
  1992 
  1994     "aspects at:#classNameChannel  put:(self specClass asValue).
  1993     "aspects at:#classNameChannel  put:(self specClass asValue).