Howdy,

I'll clarify some of Stathis' remarks about Seesaw below. Obviously,
I'm a little biased, but Clarity looks cool and I plan on "borrowing"
some of its features for Seesaw in the next release or two :)  I think
it's great to have multiple projects like this to inspire each other
and keep everyone honest. Keep up the nice work!

Cheers,

Dave

more inline below ...

On Sat, Dec 3, 2011 at 8:15 PM, Stathis Sideris <side...@gmail.com> wrote:
> Hello Gary,
>
> Hello Gary,
>
> To be honest I didn't look at seesaw much while developing Clarity, so
> I didn't make any conscious decision to differentiate with seesaw.
> It's very interesting to see that both me and Dave Ray came up with
> similar solutions/features.
>
> It seems that Seesaw is more concise in comparison to Clarity, and
> from the project page it does look like a more mature project. On the
> other hand, it seems to me (and I might be wrong) that Clarity has a
> more complete solution when it comes to selectors because it supports
> "categories" on top of the IDs, and the syntax caters for arbitrary
> logic operations and custom selectors.

Seesaw selectors are basically Enlive selectors [1] ported to Swing.
So it supports all the usually CSS hierarchical stuff, ids and classes
(Clarity's categories). It can also select on Java class/sub-class
relationships. I left it at that since selector+filter seemed a
reasonable enough way to add custom predicates or whatever if
necessary.

[1] http://enlive.cgrand.net/syntax.html

> It seems that Seesaw uses binding for keeping GUI values and atoms/
> refs in sync, and Clarity instead provides easy ways to retrieve all
> the values of all components in a panel as a map (see the HasValue
> interface). I like Clarity's approach better because it's more de-
> coupled.

Yep. I like Clarity's (value) function as well, especially for forms
in dialogs. I'll be borrowing that. If you need to update one or more
aspects of the UI based on changes in a reference type or some aspect
of a widget, bindings (in the Seesaw sense) work nicely because they
provide that automatic propagation and fine granularity.

> The other thing that I think differentiates Clarity is the live
> preview of layouts using clarity.dev/watch-component.

I think that's very cool too. I approximate that workflow using
lazytest's watcher to re-run my code when it changes.

> Finally, let me repeat that all of the above are based on a
> superficial reading of Seesaw's docs, I may as well be wrong!
>
> Thanks,
>
> Stathis
>
>
> On Dec 3, 2:52 pm, Gary Trakhman <gary.trakh...@gmail.com> wrote:
>> Have you looked at seesaw?  What differences are there in the design and
>> intent?
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with your 
> first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to