[Seaside] [ANN] JQueryWidgetbox and Metacello

Nick Ager nick.ager at gmail.com
Thu Jan 14 15:23:30 UTC 2010


Hi Torsten,

A great set of JQuery examples I particularly liked the fold sample.

I've been experimenting with integrating JQuery widgets myself so it was
instructive to see how you'd performed the Seaside integration. One
question, is there a reason why you use explicit id's? For example:

JQSheetExample>>renderContentOn: html
|id|
id := html nextId.
html div
id: id.
html script: ((html jQuery id: id) sheet
 buildSheetOfSize: 3 at 4;
 urlTheme: self themeURL)

can be rewritten as:

JQSheetExample>>renderContentOn: html
html div script: ((html jQuery this) sheet
 buildSheetOfSize: 3 at 4;
 urlTheme: self themeURL).


The rewritten code seems neater, but perhaps there's a reason for preferring
your original code?

Cheers

Nick


2010/1/14 Torsten Bergmann <astares at gmx.de>

> Hi,
>
> the JQuery Widget box project now switched to Metacello:
>
>  - there is now a "ConfigurationOfJQueryWidgetBox" project/class
>   in htp://squeaksource.com/MetacelloRepository
>  - this configuration includes a baseline and a first version 1.0
>  - the old "loader" project (JQWidgetBox-Loader) - in
>   http://squeaksource.com/JQueryWidgetBox can be used
>   as before - it now internally uses Metacello
>
> How to get started:
> ===================
> We assume a clean image - for instance the latest pharo core
> (PharoCore-1.0-10506rc1.image) - without any Seaside here:
>
>  A. THE OLD WAY
>  --------------
>    To get the old loader (which is now ALWAYS loading the latest version
>    from the metacello configuration) evaluate:
>
>        Gofer new
>          squeaksource: 'JQueryWidgetBox';
>          package: 'JQWidgetBox-Loader';
>          load.
>
>
>     Answer yes - and see how Seaside 3.0 and the widget project
>     is loaded. When finished start a webserver through
>
>        WAKom startOn: 9092
>
>     and point browser to
>
>      http://localhost:9092/browse/jquery-widgets
>
>     This is working as before - but not as flexible as with Metacello.
>
>
>  B. THE NEW (METACELLO) WAY
>  --------------------------
>   First you need to load the Metacello configuration for the project
>
>         Gofer new
>          squeaksource: 'MetacelloRepository';
>          package: 'ConfigurationOfJQueryWidgetBox';
>          load.
>
>   You can now decide to get:
>   ==========================
>   B.1. the latest version (including all tests, examples and widgets -
> similar to the old loader in A.)
>
>        (Smalltalk at: #ConfigurationOfJQueryWidgetBox) loadLatestVersion
>
>   B.2. a specific version (currently there is only one)
>
>        ((Smalltalk at: #ConfigurationOfJQueryWidgetBox) project version:
> '1.0') load
>
>   B.3. load a specific widget for your seaside project from Widget box
> version 1.0 (without tests and examples)
>
>        ((Smalltalk at: #ConfigurationOfJQueryWidgetBox) project version:
> '1.0') load: 'JQWidgetBox-Growl-Core'
>
>   B.4. load a specific widget for your seaside project from Widget box
> version 1.0 (including tests and examples)
>
>        ((Smalltalk at: #ConfigurationOfJQueryWidgetBox) project version:
> '1.0') load: 'JQWidgetBox-Growl-Dev'
>
>   B.5. load three widgets for your seaside project from Widget box version
> 1.0 (two with tests/examples and the first without tests/examples)
>
>        ((Smalltalk at: #ConfigurationOfJQueryWidgetBox) project version:
> '1.0') load: #('JQWidgetBox-Growl-Core' 'JQWidgetBox-Calculator-Dev'
> 'JQWidgetBox-Calculator-Dev')
>
>   B.6. load all the latest packages from the 1.0 baseline - with all
> widgets, respective tests and examples to do development
>
>        ((Smalltalk at: #ConfigurationOfJQueryWidgetBox) project version:
> '1.0-baseline') load
>
>
>   If an example for a widget is loaded it will automatically appear at
>   http://localhost:9092/browse/jquery-widgets
>
>
>   Things to note:
>   ===============
>   If one wraps and adds new jquery widgets to the widget box project he
> must
>   now add it in the metacello configuration. The old loader project should
>   stay unchanged and remains for compatibility reasons.
>
> Have fun,
> T.
>
>
>
>
>
>
>
>
>
> --
> GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
> Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01
> _______________________________________________
> seaside mailing list
> seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/seaside/attachments/20100114/e90f2764/attachment.htm


More information about the seaside mailing list