Grafoscopio/src/Grafoscopio/GrafoscopioCodeNode.class.st

63 lines
1.3 KiB
Smalltalk

Class {
#name : #GrafoscopioCodeNode,
#superclass : #GrafoscopioTrunkNode,
#instVars : [
'icon',
'body'
],
#category : #'Grafoscopio-Model'
}
{ #category : #'as yet unclassified' }
GrafoscopioCodeNode class >> nameForSelection [
^ 'New Code Node'
]
{ #category : #adding }
GrafoscopioCodeNode >> addNode: aNode [
"Adds the given node to the receivers collection of children, and sets this object as the parent
of the node"
"aNode parent = self ifTrue: [ ^ self ]."
self children add: aNode.
aNode parent: self.
^aNode
]
{ #category : #'as yet unclassified' }
GrafoscopioCodeNode >> body [
^ body
]
{ #category : #'as yet unclassified' }
GrafoscopioCodeNode >> body: aBody [
body := aBody
]
{ #category : #'as yet unclassified' }
GrafoscopioCodeNode >> content [
^ body ifNil:[ '' ]
]
{ #category : #'as yet unclassified' }
GrafoscopioCodeNode >> header [
^ super header, ' (Code)'
]
{ #category : #'as yet unclassified' }
GrafoscopioCodeNode >> instantiateBody [
| widget |
widget := super instantiateBody.
widget body whenTextChangedDo: [ :arg | self body: arg ].
^ widget
]
{ #category : #'as yet unclassified' }
GrafoscopioCodeNode >> shouldAskBeforeRemove [
^ self content isNotEmpty
]
{ #category : #'as yet unclassified' }
GrafoscopioCodeNode >> specModelClass [
^ GrafoscopioNewCodeModel
]