[Newbie] Seaside-Component classes

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

[Newbie] Seaside-Component classes

Dmitry V. Sabanin
Hey.

Here I am again with my stupid questions, unable to find any docs  
online.
This time my question is about classes in Seaside-Component category.
I'm trying to understand when to use what, and here's understanding  
that I have to the moment:

WAAnswerHandler
------------------------
.oO( No ideas here, but for some reason I don't think this class is  
of interest to me at this moment )

WAComponent
--------------------
.oO( Ordinary components. Pretty much no questions here. )

WADecoration
------------------
.oO( What's this? As I imagine this must be some kind of wrapper  
around ordinary components, to enhance them or wrap some code around  
them? If it's true, how do I add Decorations to my existing component? )

WADelegation
------------------
.oO( No ideas. Need help :-) )

WAPresenter
-----------------
.oO( This one just drives me crazy. I wanted to think of this as of  
some big master component that acts as a container for all  
application components. Something like "Application Component", but I  
have no idea if it's true. )

WATask
-----------
.oO( If I get this right, this is useful for something like  
Transaction Script (PoEAA)? For example, I can encapsulate some  
business logic in a WATask subclass and make it call components in a  
needed order? Or there's something else meant as a "workflow" in  
WATask class docs? )


I hope I didn't make a lot of noise in this small cozy mailing list.  
I hate to bother you guys, who are already proficient in this stuff,  
but I really want to learn St/Seaside and due to the lack of docs,  
that seems to be my only way to succeed. Thanks in advance for your  
answers and patience.

Cheers!

--
Dmitry Sabanin
http://futuretrack5.com | http://sabanin.ru/en


_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: [Newbie] Seaside-Component classes

Philippe Marschall
2006/5/4, Dmitry V. Sabanin <[hidden email]>:

> Hey.
>
> Here I am again with my stupid questions, unable to find any docs
> online.
> This time my question is about classes in Seaside-Component category.
> I'm trying to understand when to use what, and here's understanding
> that I have to the moment:
>
> WAAnswerHandler
> ------------------------
> .oO( No ideas here, but for some reason I don't think this class is
> of interest to me at this moment )
>
> WAComponent
> --------------------
> .oO( Ordinary components. Pretty much no questions here. )
>
> WADecoration
> ------------------
> .oO( What's this? As I imagine this must be some kind of wrapper
> around ordinary components, to enhance them or wrap some code around
> them? If it's true, how do I add Decorations to my existing component? )
>
> WADelegation
> ------------------
> .oO( No ideas. Need help :-) )
>
> WAPresenter
> -----------------
> .oO( This one just drives me crazy. I wanted to think of this as of
> some big master component that acts as a container for all
> application components. Something like "Application Component", but I
> have no idea if it's true. )
>
> WATask
> -----------
> .oO( If I get this right, this is useful for something like
> Transaction Script (PoEAA)? For example, I can encapsulate some
> business logic in a WATask subclass and make it call components in a
> needed order? Or there's something else meant as a "workflow" in
> WATask class docs? )

I hate make this sound like RTFM but WAComponent, WADecoration, and
WATask (the important ones) actually have a class comment that should
answer your questions. But basically you are right about them.

Cheers
Philippe
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: [Newbie] Seaside-Component classes

cbeler
In reply to this post by Dmitry V. Sabanin
I give a try ;)
other dont hesitate to correct me ;)

>
>
> WAAnswerHandler
> ------------------------
> .oO( No ideas here, but for some reason I don't think this class is  
> of interest to me at this moment )

this is a decoration that manages answers when calling back a component...
try alt+shift+n   gives users of class
WAComponent>>onAnswer: a Block
    ^self addDecoration (WAAnswerHandler ...)
but you don't really have to care of this class

>
> WAComponent
> --------------------
> .oO( Ordinary components. Pretty much no questions here. )

yep and WATask is a special subclass of WAComponent that manages flow of
information  without rendering.

>
> WADecoration
> ------------------
> .oO( What's this? As I imagine this must be some kind of wrapper  
> around ordinary components, to enhance them or wrap some code around  
> them? If it's true, how do I add Decorations to my existing component? )

pattern decoration. Add functionnalities to component... either
graphical (Window decoration...) or behavioral ( Transaction (when
calling isolate, delegation, session protector, validation (add form
around a comp)...)
see that...
http://www.shaffer-consulting.com/david/Seaside/Decorations/index.html

>
> WADelegation
> ------------------
> .oO( No ideas. Need help :-) )

a decoration
still alt shift n   shows that it is called in WAComponent show: aComp
onAnswer: aBlock  , so each time show:  is called...   actually when you
call a component    WAComp>>call: aComponent

when you toggle halo, you see all this stuff...

another trick to see how internal work is to put    self halt    
somewhere in the code you try to understand. Then manipulate a seaside
application and a debugger will open and you will be able to see whats
happening step by step.

>
> WAPresenter
> -----------------
> .oO( This one just drives me crazy. I wanted to think of this as of  
> some big master component that acts as a container for all  
> application components. Something like "Application Component", but I  
> have no idea if it's true. )

common superclass of WADecoration and WAPresenter as required by the
decoration pattern.

>
> WATask
> -----------
> .oO( If I get this right, this is useful for something like  
> Transaction Script (PoEAA)? For example, I can encapsulate some  
> business logic in a WATask subclass and make it call components in a  
> needed order? Or there's something else meant as a "workflow" in  
> WATask class docs? )

a specific WAComponent that implement the go method and no renderContentOn:
http://www.shaffer-consulting.com/david/Seaside/Tasks/index.html


hope it's not too wrong ;)

Cédrick
<mailto:[hidden email]>
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: [Newbie] Seaside-Component classes

Dmitry V. Sabanin
In reply to this post by Philippe Marschall
On May 4, 2006, at 5:07 PM, Philippe Marschall wrote:
> I hate make this sound like RTFM but WAComponent, WADecoration, and
> WATask (the important ones) actually have a class comment that should
> answer your questions. But basically you are right about them.
Sorry for wasting your time Philippe. I did read this docs before  
posting, but unfortunately didn't understand them good enough.

Cheers!
--
Dmitry Sabanin
http://futuretrack5.com | http://sabanin.ru/en


_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: [Newbie] Seaside-Component classes

Dmitry V. Sabanin
In reply to this post by cbeler
Hey.

Great answer, you helped me a lot!
Thanks for doing this. Great links, great tips, great explanations.
I'm sure this will also help other newbies like me :-) Thank you!

On May 4, 2006, at 5:19 PM, Cédrick Béler wrote:

> I give a try ;)
> other dont hesitate to correct me ;)
>
>>
>>
>> WAAnswerHandler
>> ------------------------
>> .oO( No ideas here, but for some reason I don't think this class  
>> is  of interest to me at this moment )
>
> this is a decoration that manages answers when calling back a  
> component...
> try alt+shift+n   gives users of class
> WAComponent>>onAnswer: a Block
>    ^self addDecoration (WAAnswerHandler ...)
> but you don't really have to care of this class
>
>>
>> WAComponent
>> --------------------
>> .oO( Ordinary components. Pretty much no questions here. )
>
> yep and WATask is a special subclass of WAComponent that manages  
> flow of information  without rendering.
>
>>
>> WADecoration
>> ------------------
>> .oO( What's this? As I imagine this must be some kind of wrapper  
>> around ordinary components, to enhance them or wrap some code  
>> around  them? If it's true, how do I add Decorations to my  
>> existing component? )
>
> pattern decoration. Add functionnalities to component... either  
> graphical (Window decoration...) or behavioral ( Transaction (when  
> calling isolate, delegation, session protector, validation (add  
> form around a comp)...)
> see that... http://www.shaffer-consulting.com/david/Seaside/ 
> Decorations/index.html
>
>>
>> WADelegation
>> ------------------
>> .oO( No ideas. Need help :-) )
>
> a decoration
> still alt shift n   shows that it is called in WAComponent show:  
> aComp onAnswer: aBlock  , so each time show:  is called...    
> actually when you call a component    WAComp>>call: aComponent
>
> when you toggle halo, you see all this stuff...
>
> another trick to see how internal work is to put    self halt    
> somewhere in the code you try to understand. Then manipulate a  
> seaside application and a debugger will open and you will be able  
> to see whats happening step by step.
>
>>
>> WAPresenter
>> -----------------
>> .oO( This one just drives me crazy. I wanted to think of this as  
>> of  some big master component that acts as a container for all  
>> application components. Something like "Application Component",  
>> but I  have no idea if it's true. )
>
> common superclass of WADecoration and WAPresenter as required by  
> the decoration pattern.
>
>>
>> WATask
>> -----------
>> .oO( If I get this right, this is useful for something like  
>> Transaction Script (PoEAA)? For example, I can encapsulate some  
>> business logic in a WATask subclass and make it call components in  
>> a  needed order? Or there's something else meant as a "workflow"  
>> in  WATask class docs? )
>
> a specific WAComponent that implement the go method and no  
> renderContentOn:
> http://www.shaffer-consulting.com/david/Seaside/Tasks/index.html
>
>
> hope it's not too wrong ;)
>
> Cédrick
> <mailto:[hidden email]>


--
Dmitry Sabanin
http://futuretrack5.com | http://sabanin.ru/en


_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: [Newbie] Seaside-Component classes

cbeler

> Hey.
>
> Great answer, you helped me a lot!
> Thanks for doing this. Great links, great tips, great explanations.

dont take them for sure... I'm still a newbie too lol

What I know is that all keyboard shortcuts are precious !!! It takes me
a lot to know how to use them...
alt + b   browser (class and method)
alt + N  users (of class)
alt + n senders
alt + m implementors
alt + W for method finder (even if selection is incomplete)
others fonctions are interesting in the menu... (shift - right clic)

Last... this shortcuts are nice when selecting but when the message are
in several pieces (keyword messages), then it's better to use senders
and implementors in browsers...

> I'm sure this will also help other newbies like me :-) Thank you!
>
what about a seaside-beginners mailing list ;)  loll
kidding ! I think it can be done in the new squeak one ( prefixed by
[seaside]...)

the good point in that answering helps understand too... but master and
advanced people should check we that we don't say wrong stuff...

See you
Cédrick
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: [Newbie] Seaside-Component classes

Lukas Renggli
In reply to this post by Dmitry V. Sabanin
> Here I am again with my stupid questions, unable to find any docs
> online.

There are some explanations about all the classes you are asking about
in part 6 (Components) and 7 (Composition) in my Seaside tutorial at
<http://www.lukas-renggli.ch/smalltalk/seaside/tutorial>.

Cheers,
Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside