40 lines
1.1 KiB
Smalltalk
40 lines
1.1 KiB
Smalltalk
Class {
|
|
#name : #SpMorphicGrafoscopioTextAdapter,
|
|
#superclass : #SpMorphicTextAdapter,
|
|
#category : #'Grafoscopio-Rub'
|
|
}
|
|
|
|
{ #category : #factory }
|
|
SpMorphicGrafoscopioTextAdapter >> buildWidget [
|
|
| newWidget |
|
|
newWidget := (self widgetClass on: self)
|
|
getTextSelector: #getText;
|
|
setTextSelector: #accept:notifying:;
|
|
getSelectionSelector: #readSelection;
|
|
menuProvider: self selector: #codePaneMenu:shifted:;
|
|
setSelectionSelector: #setSelection:;
|
|
ghostText: self placeholder;
|
|
beWrapped;
|
|
enabled: self enabled;
|
|
askBeforeDiscardingEdits: self askBeforeDiscardingEdits;
|
|
autoAccept: self autoAccept;
|
|
vResizing: #spaceFill;
|
|
hResizing: #spaceFill;
|
|
setBalloonText: self help;
|
|
dragEnabled: self dragEnabled;
|
|
dropEnabled: self dropEnabled;
|
|
registerScrollChanges: #scrollValueChanged:;
|
|
yourself.
|
|
self setEditingModeFor: newWidget.
|
|
self presenter
|
|
whenTextChangedDo: [ :text | self setText: text to: newWidget ].
|
|
self presenter
|
|
whenPlaceholderChangedDo: [ :text | self setGhostText: text to: newWidget ].
|
|
^ newWidget
|
|
]
|
|
|
|
{ #category : #factory }
|
|
SpMorphicGrafoscopioTextAdapter >> widgetClass [
|
|
^ GrafoscopioScrolledTextMorph
|
|
]
|