Inline below..

Dave

On Thu, Mar 17, 2016 at 9:37 AM, Jason Zwolak <jzwo...@gmail.com> wrote:

> Paul, yeap, Seesaw is definitely something worth considering. Dave Ray
> hasn't abandoned the project, but I sent a personal email to him asking
> about the state of the project and it does seem the Seesaw is in more of a
> maintenance phase than a continue to move forward and improve phase. Dave
> Ray, if you're on this list, would you chime in?
>

 Yep. Seesaw's definitely in maintenance mode. Once upon a time it
overlapped a lot with my day job, but not anymore so I just don't have a
ton of enthusiasm to spend time on it. I'd be open to new maintainers if
someone's feeling adventurous. Otherwise, JavaFX seems like the future so I
think effort would probably be better spent there. A lot has changed in UI
land in the last 5 years.


> Also, I was at the talk you mentioned and was very impressed with their
> methods. What wasn't mentioned in the talk was the fundamental structure of
> the interface between Clojure and JavaFX. One point that _really_ struck me
> is that they have a reoccurring timer running in the background and each
> time it wakes up it checks for changes on the app-state (presumably an
> atom, but I do not remember). If the app-state has changed then it starts
> re-rendering the UI. If I remember correctly it recreates the UI components
> that rely on any part of the app state that has changed. It sounds a little
> similar to Facebook React. I questioned them on this approach as it sounded
> strange to me... and they convinced me it's a good approach for their
> project and inspired me to try something similar on my own... which I'm
> secretly working on ;-)
>
> One thing that makes this work so well for their approach is that they
> have animations that depend on the app state. So their reoccurring timer is
> almost like a video algorithm redrawing the on screen image at the
> specified frame rate.
>
> --
> Jason Zwolak
>
> On Thu, Mar 17, 2016 at 11:06 AM, Paul L. Snyder <p...@pataprogramming.com
> > wrote:
>
>> Yow, old indeed!
>>
>> In 2011, Dave Ray released Seesaw, which is a very nice wrapper for Swing.
>> I've used it for a bunch of projects, and it works great. Of course, it
>> does look like Swing, but it's plenty usable. (It's also still being
>> maintained, so if you're looking for a toolkit that you can use right now,
>> it's a good way to go.)
>>
>>   https://github.com/daveray/seesaw
>>
>> That said, I'd also love to see a JavaFX wrapper. At the Conj in Philly,
>> Cognitect talked about a project where they'd used it extensively:
>>
>>   https://www.youtube.com/watch?v=ajX09xQ_UEg
>>
>> It's definitely piqued my interest.
>>
>> Paul
>>
>> On Sat, 12 Mar 2016, Jason Zwolak wrote:
>>
>> > +1 JavaFX.
>> >
>> > I know this is an old thread... but in case anyone comes across it
>> (like I
>> > did just now) and wants to see where things are, they should know that
>> > JavaFX has come a long way and seems to be Oracle's replacement for
>> Swing.
>> > Now JavaFX is no longer only in JavaFXscript... in fact, I believe
>> > JavaFXscript is deprecated in favor of the JavaFX Java classes.
>> >
>> > I've seen some major projects done with Clojure and JavaFX... even from
>> the
>> > guys at Cognitect.
>> >
>> > On Thursday, May 27, 2010 at 11:18:41 AM UTC-4, Luke VanderHart wrote:
>> > >
>> > > My side project is a fairly complex GUI application written in
>> > > Clojure. Recently, I've become irritated with using Java interop for
>> > > everything. It's not that Clojure doesn't have nice java interop - it
>> > > does. It's just that when interacting with a GUI framework, which is a
>> > > large part of my app, I have to be back in mutable object-oriented
>> > > land, worrying about class hierarchies, mutable state, locks, etc.
>> > > Yucky.
>> > >
>> > > So, with a perhaps dangerous lack of sanity and without any guarantee
>> > > of success, I've decided to try my hand at writing an idiomatic
>> > > Clojure GUI library. If I have success (which I doubt) I will of
>> > > course make it available as open source.
>> > >
>> > > I intend for it to be mostly declarative, with a nice DSL for defining
>> > > GUI elements. Each component will also implement map, and use one of
>> > > Clojure's reference types as an interface for inspecting / updating
>> > > its state. I may also implement some aspects of Functional Reactive
>> > > Programming wherever it's convenient to do so.
>> > >
>> > > What you all must help me decide is what GUI framework to use as the
>> > > underpinnings of it. It's genuinely hard to decide. I have at least
>> > > some experience with all of them, so I have no strong preference, but
>> > > I'd like to get your input. I did consider trying to make it abstract
>> > > enough that you could plug in *any* of them under the hood, but
>> > > there's enough differences between the frameworks that that would get
>> > > very ugly very fast.
>> > >
>> > > Possibilities are:
>> > >
>> > > AWT
>> > > Pros: native widgets, bundled with Java, low-level
>> > > Cons: few widgets, considered somewhat obselete
>> > >
>> > > Swing
>> > > Pros: bundled with Java, good widget selection
>> > > Cons: non-native widgets
>> > >
>> > > SWT
>> > > Pros: native widgets, widely used
>> > > Cons: requires platform-specific libs
>> > >
>> > > QT Jambi
>> > > Pros: native widgets, huge widget selection, highly-regarded framework
>> > > Cons: requires platform-specific libs, writing custom widgets is
>> > > hairy, momentum and support seem to be lagging since Nokia dropped
>> > > official support.
>> > >
>> > > Remember, the actual API won't matter - that will be completely
>> > > abstracted away. So try to focus on the framework's look and feel.
>> > > Also let me know if I've missed any of the framework's key
>> > > characteristics.
>> > >
>> > > Thanks!
>> > >
>> > > -Luke
>> > >
>> > >
>> >
>> > --
>> > 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 unsubscribe from this group and stop receiving emails from it, send
>> an email to clojure+unsubscr...@googlegroups.com.
>> > For more options, visit https://groups.google.com/d/optout.
>>
>> --
>> 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 a topic in the
>> Google Groups "Clojure" group.
>> To unsubscribe from this topic, visit
>> https://groups.google.com/d/topic/clojure/NkLXh8KYXqk/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to
>> clojure+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> --
> 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 unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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 unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to