|
Juan Manuel Duran
escribió:
Para construir GUI en Dolphin usas el framework MVP (model-view-presenter). Las views las construis con el View Composer.(ej: MyShellPresenter.Default view) Y tiene que estar asociada a un prenseter. (ej: subclases de Shell) A su vez la nueva clase MyShellPresenter (cuya piel -gui- es el MyShellPresenter.Default view) tiene un model que es tu modelo de objetos. (antes de salvar la view del ViewComposer "MyShellPresenter.Default view" tenes que crear la clase MyShellPresenter). Tambien podes crear otra y llamarla MyShellPresenter.Manager view, y el presenter (el punto medio entre el model y la view misma) ES el mismo. Te paso una clase llamada JugadorComposite (es para DX6). Tenes la view JugadorComposite es el Presenter, te falta ... el modelo (q' lo podes hacer vos) fijate en JugadorComposite metodos de CLASE en #defaultModel. Crea la clase Jugador y agregale lo que falta. JugadorComposite se conecta con la view JugadorComposite.Default view a traves del metodo #createComponents. Y se conecta al Presenter (JugadorComposite) con el modelo en el metodo #model:. Despues de crear la clase Jugador con (nombre, apellido, elo,pais - para saber esto mira #model:) INSPECCIONA JugadorComposite show "inspect it" Cambia los valores en el view y mira el inspectar donde dice model - sino se actualiza apreta refresh. saludos bruno --~--~---------~--~----~------------~-------~--~----~ Ha recibido este mensaje porque está suscrito a Grupos de Google "clubSmalltalk" grupo. Si quiere publicar en este grupo, mande un correo electrónico a [email protected] Para anular la suscripción a este grupo, envíe un mensaje a [EMAIL PROTECTED] Para visualizar más opciones, visite este grupo enhttp://groups.google.com/group/clubSmalltalk -~----------~----~----~----~------~----~------~--~--- |
"Filed out from Dolphin Smalltalk X6"!
Presenter subclass: #JugadorComposite
instanceVariableNames: 'nombrePresenter apellidoPresenter eloPresenter
paisPresenter'
classVariableNames: ''
poolDictionaries: ''
classInstanceVariableNames: ''!
JugadorComposite guid: (GUID fromString:
'{B8071538-F818-42DE-A4D2-6D24B7B4749B}')!
JugadorComposite comment: ''!
!JugadorComposite categoriesForClass!Unclassified! !
!JugadorComposite methodsFor!
createComponents
super createComponents.
nombrePresenter := self add: TextPresenter new name: 'nombre'.
apellidoPresenter := self add: TextPresenter new name: 'apellido'.
eloPresenter := self add: TextPresenter new name: 'elo'.
paisPresenter := self add: TextPresenter new name: 'pais'.!
model: aModel
super model: aModel.
nombrePresenter model: (aModel aspectValue: #nombre).
apellidoPresenter model: (aModel aspectValue: #apellido).
eloPresenter model: (aModel aspectValue: #elo).
paisPresenter model: (aModel aspectValue: #pais).! !
!JugadorComposite categoriesFor: #createComponents!public! !
!JugadorComposite categoriesFor: #model:!public! !
!JugadorComposite class methodsFor!
defaultModel
"^Jugador new"!
resource_Default_view
"Answer the literal data from which the 'Default view' resource can be
reconstituted.
DO NOT EDIT OR RECATEGORIZE THIS METHOD.
If you wish to modify this resource evaluate:
ViewComposer openOn: (ResourceIdentifier class: self selector:
#resource_Default_view)
"
^#(#'!!STL' 3 788558 10 ##(Smalltalk.STBViewProxy) 8
##(Smalltalk.ContainerView) 98 15 0 0 98 2 8 1409286144 131073 416 0 0 0 5 0 0
0 416 0 234 256 98 8 410 8 ##(Smalltalk.TextEdit) 98 16 0 416 98 2 8
1140916352 1025 528 0 524550 ##(Smalltalk.ColorRef) 8 4278190080 0 5 0 0 0 528
0 8 4294902533 852486 ##(Smalltalk.NullConverter) 0 0 1 983302
##(Smalltalk.MessageSequence) 202 208 98 3 721670 ##(Smalltalk.MessageSend) 8
#createAt:extent: 98 2 328198 ##(Smalltalk.Point) 251 221 834 241 39 528 770 8
#selectionRange: 98 1 525062 ##(Smalltalk.Interval) 3 1 3 528 770 8
#isTextModified: 98 1 32 528 983302 ##(Smalltalk.WINDOWPLACEMENT) 8 #[44 0 0 0
0 0 0 0 1 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
125 0 0 0 110 0 0 0 245 0 0 0 129 0 0 0] 98 0 834 193 193 0 27 8 'pais' 410 544
98 16 0 416 98 2 8 1140916352 1025 1104 0 610 640 0 5 0 0 0 1104 0 8 4294902533
674 0 0 1 706 202 208 98 3 770 800 98 2 834 251 41 834 241 39 1104 770 896 98 1
930 3 1 3 1104 770 976 98 1 32 1104 1010 8 #[44 0 0 0 0 0 0 0 1 0 0 0 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 125 0 0 0 20 0 0 0 245
0 0 0 39 0 0 0] 98 0 1072 0 27 8 'nombre' 410 544 98 16 0 416 98 2 8 1140916352
1025 1472 0 610 640 0 5 0 0 0 1472 0 8 4294902533 674 0 0 1 706 202 208 98 3
770 800 98 2 834 251 101 834 241 39 1472 770 896 98 1 930 3 1 3 1472 770 976 98
1 32 1472 1010 8 #[44 0 0 0 0 0 0 0 1 0 0 0 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 125 0 0 0 50 0 0 0 245 0 0 0 69 0 0 0] 98 0 1072 0
27 8 'apellido' 410 544 98 16 0 416 98 2 8 1140924416 1025 1840 0 610 8
4278190080 0 5 0 0 0 1840 0 8 4294902533 852742 ##(Smalltalk.IntegerToText) 0
8 '' 0 1 706 202 208 98 3 770 800 98 2 834 251 161 834 241 39 1840 770 896 98 1
930 3 1 3 1840 770 976 98 1 32 1840 1010 8 #[44 0 0 0 0 0 0 0 1 0 0 0 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 125 0 0 0 80 0 0 0 245
0 0 0 99 0 0 0] 98 0 1072 0 27 8 'elo' 0 706 202 208 98 1 770 800 98 2 834 2047
21 834 521 291 416 1010 8 #[44 0 0 0 0 0 0 0 1 0 0 0 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 3 0 0 10 0 0 0 3 5 0 0 155 0 0 0]
98 8 1104 1472 1840 528 410 8 ##(Smalltalk.StaticText) 98 16 0 416 98 2 8
1140850944 1 2416 0 0 0 5 0 0 0 2416 0 8 4294902513 674 0 0 0 706 202 208 98 2
770 800 98 2 834 11 41 834 241 39 2416 770 8 #text: 98 1 8 'Nombre' 2416 1010 8
#[44 0 0 0 0 0 0 0 1 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 5 0 0 0 20 0 0 0 125 0 0 0 39 0 0 0] 98 0 1072 0 27 410 2432 98 16
0 416 98 2 8 1140850944 1 2752 0 0 0 5 0 0 0 2752 0 8 4294902513 674 0 0 0 706
202 208 98 2 770 800 98 2 834 11 101 834 241 39 2752 770 2656 98 1 8 'Apellido'
2752 1010 8 #[44 0 0 0 0 0 0 0 1 0 0 0 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 5 0 0 0 50 0 0 0 125 0 0 0 69 0 0 0] 98 0 1072 0 27 410
2432 98 16 0 416 98 2 8 1140850944 1 3056 0 0 0 5 0 0 0 3056 0 8 4294902513 674
0 0 0 706 202 208 98 2 770 800 98 2 834 11 161 834 241 39 3056 770 2656 98 1 8
'Elo' 3056 1010 8 #[44 0 0 0 0 0 0 0 1 0 0 0 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 5 0 0 0 80 0 0 0 125 0 0 0 99 0 0 0] 98 0 1072
0 27 410 2432 98 16 0 416 98 2 8 1140850944 1 3360 0 0 0 5 0 0 0 3360 0 8
4294902513 674 0 0 0 706 202 208 98 2 770 800 98 2 834 11 221 834 241 39 3360
770 2656 98 1 8 'Pais' 3360 1010 8 #[44 0 0 0 0 0 0 0 1 0 0 0 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 5 0 0 0 110 0 0 0 125 0 0 0 129
0 0 0] 98 0 1072 0 27 1072 0 27 )! !
!JugadorComposite class categoriesFor: #defaultModel!public! !
!JugadorComposite class categoriesFor:
#resource_Default_view!public!resources-views! !
