From: Neil Baylis
Subject: Which UI library am I looking for?
Date: 
Message-ID: <70f3401b-4083-4045-a984-2ab6265527a3@s19g2000prg.googlegroups.com>
I'm looking for a UI library similar to ltk. I want the following
capabilities:

1. Antialiased text
2. Antialiased graphics (lines, circles, etc.)
3. Runs on OS X ppc
4. Runs on Linux X86
5. CL bindings. (openmcl, maybe sbcl)


Maybe I'm out to lunch, and ltk already does this, but I haven't been
able to figure it out. Sure, I can make it draw jaggy. It seems to
have everything I want except for antialiasing.

Does what I want exist somewhere, or do I need to make it myself?

(I've had some success porting the newlisp gui to CL. It's at the
point where it runs a few of their bundled demos in CL. But if there's
already something that does what I want, I'll abandon this probably
ill-considered project. It operates in a similar manner to ltk, except
using a pair of sockets instead of a pipe.)

Thanks,

Neil

From: Dimiter "malkia" Stanev
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <6360u3F256k4hU1@mid.individual.net>
Well, there are no CL bindings for it, it's a C++ library, but it's 
exactly what you are looking for, it's called JUCE:

www.rawmaterialsoftware.com/juce

There is a demo for Win32 and Mac OS X (It also runs on Linux):

http://www.rawmaterialsoftware.com/juce/download.php

I was thinking of adding bindings using SWIG for it (There used to be 
pyJUCE project and can steal them from there), but did not have the time.

SWIG supports CFFI btw as of the latest versions.

Neil Baylis wrote:
> I'm looking for a UI library similar to ltk. I want the following
> capabilities:
> 
> 1. Antialiased text
> 2. Antialiased graphics (lines, circles, etc.)
> 3. Runs on OS X ppc
> 4. Runs on Linux X86
> 5. CL bindings. (openmcl, maybe sbcl)
> 
> 
> Maybe I'm out to lunch, and ltk already does this, but I haven't been
> able to figure it out. Sure, I can make it draw jaggy. It seems to
> have everything I want except for antialiasing.
> 
> Does what I want exist somewhere, or do I need to make it myself?
> 
> (I've had some success porting the newlisp gui to CL. It's at the
> point where it runs a few of their bundled demos in CL. But if there's
> already something that does what I want, I'll abandon this probably
> ill-considered project. It operates in a similar manner to ltk, except
> using a pair of sockets instead of a pipe.)
> 
> Thanks,
> 
> Neil
> 
From: ···············@gmail.com
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <ea3cd814-31c5-4d59-9e37-1875768f4667@x30g2000hsd.googlegroups.com>
On Mar 4, 9:38 pm, Neil Baylis <···········@gmail.com> wrote:

> Maybe I'm out to lunch, and ltk already does this, but I haven't been
> able to figure it out. Sure, I can make it draw jaggy. It seems to
> have everything I want except for antialiasing.

Not sure if you mean just fonts or also canvas primitives but if you
switch your underlying Tcl/Tk installation to 8.5 then you should get
anti-aliased fonts with LTK. Certainly on my Linux box it looks a lot
nicer than 8.4 did (the Windows version always looked quite nice in
this respect).

--
Phil
http://phil.nullable.eu/
From: Jeff
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <d5c1243d-db72-4787-b411-8c172b30f134@h25g2000hsf.googlegroups.com>
On Mar 4, 10:38 pm, Neil Baylis <···········@gmail.com> wrote:
> I'm looking for a UI library similar to ltk. I want the following
> capabilities:
>
> 1. Antialiased text
> 2. Antialiased graphics (lines, circles, etc.)
> 3. Runs on OS X ppc
> 4. Runs on Linux X86
> 5. CL bindings. (openmcl, maybe sbcl)
>
> Maybe I'm out to lunch, and ltk already does this, but I haven't been
> able to figure it out. Sure, I can make it draw jaggy. It seems to
> have everything I want except for antialiasing.
>
> Does what I want exist somewhere, or do I need to make it myself?
>
> (I've had some success porting the newlisp gui to CL. It's at the
> point where it runs a few of their bundled demos in CL. But if there's
> already something that does what I want, I'll abandon this probably
> ill-considered project. It operates in a similar manner to ltk, except
> using a pair of sockets instead of a pipe.)
>
> Thanks,
>
> Neil

You aren't the only one.  I've been looking into GUIs, and from
everything I've seen I think writing a wrapper for QT is the best
option for common lisp.  If you look at the Ruby and Perl bindings you
will see that in a pretty small amount of code they have support for
the entire QT and KDE class libraries, which are fully GPL'd, cross
platform and extremely high quality libraries for building GUI apps.
It has a meta-object system that allows for thin wrappers that can
reflect on all the gui components, signals, slots etc.  Basically,
they use a pre-processor (I think its called moc) to process the C++
headers and generate a bunch of extra meta-data methods.  Wrappers use
these methods to build lookup tables for everything in the library at
load-time, and since it also gives you type information you can
automatically do the conversions for both up and down calls between
the lisp and C++.  In lisp it might be better to do the inspection and
generate a bunch of CFFI based methods so that it can be done without
even having to do conversion and lookups in the wrapper.

If you google around I think you can find a project that got the ball
rolling in lisp a few years ago.  When I get some spare cycles I plan
on doing it unless someone else has, but my guess is that this is the
fastest way for CL to have high quality, cross platform GUI support.

-Jeff
From: D Herring
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <lvqdnevhcZGH2VLanZ2dnUVZ_qTinZ2d@comcast.com>
Jeff wrote:
> On Mar 4, 10:38 pm, Neil Baylis <···········@gmail.com> wrote:
>> I'm looking for a UI library similar to ltk. I want the following
>> capabilities:
...
> You aren't the only one.  I've been looking into GUIs, and from
> everything I've seen I think writing a wrapper for QT is the best
> option for common lisp.  If you look at the Ruby and Perl bindings you
> will see that in a pretty small amount of code they have support for
> the entire QT and KDE class libraries, which are fully GPL'd, cross
> platform and extremely high quality libraries for building GUI apps.
> It has a meta-object system that allows for thin wrappers that can
> reflect on all the gui components, signals, slots etc.  Basically,
> they use a pre-processor (I think its called moc) to process the C++
> headers and generate a bunch of extra meta-data methods.  Wrappers use
> these methods to build lookup tables for everything in the library at
> load-time, and since it also gives you type information you can
> automatically do the conversions for both up and down calls between
> the lisp and C++.  In lisp it might be better to do the inspection and
> generate a bunch of CFFI based methods so that it can be done without
> even having to do conversion and lookups in the wrapper.
> 
> If you google around I think you can find a project that got the ball
> rolling in lisp a few years ago.  When I get some spare cycles I plan
> on doing it unless someone else has, but my guess is that this is the
> fastest way for CL to have high quality, cross platform GUI support.

http://lisp-cffi-qt4.sourceforge.net/
From: Øyvin Halfdan Thuv
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <slrnfsti00.otl.oyvinht@decibel.pvv.ntnu.no>
On 2008-03-04, Neil Baylis <···········@gmail.com> wrote:
> I'm looking for a UI library similar to ltk. I want the following
> capabilities:
>
> 1. Antialiased text
> 2. Antialiased graphics (lines, circles, etc.)
> 3. Runs on OS X ppc
> 4. Runs on Linux X86
> 5. CL bindings. (openmcl, maybe sbcl)

You should check if you could:

- Use Objective-c bridge with Cocoa (MacOSX) and GNUStep (Linux) and 
  with a little careful coding (not using to many fancy Cocoa features) be
  source compatible on both platforms (and Windows too). This may or may not
  fulfill requirement 5 above depending on what you mean by "binding".

- Use Java's SWING toolkit through ABCL or JFLI. 

-- 
Oyvin
From: Joost Diepenmaat
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <87y78xq7fk.fsf@zeekat.nl>
Neil Baylis <···········@gmail.com> writes:

> I'm looking for a UI library similar to ltk. I want the following
> capabilities:
>
> 1. Antialiased text
> 2. Antialiased graphics (lines, circles, etc.)
> 3. Runs on OS X ppc
> 4. Runs on Linux X86
> 5. CL bindings. (openmcl, maybe sbcl)

As far as I know, clg (one of the Gtk2 interfaces) does that - I've used
it with sbcl on linux x86, at least, and it provides antialiased text
and graphics (using cairo).

Not sure about opencml or OSX though.

cells-gtk may also work, but I'm not sure that it provides an interface
to cairo (so that may mean less nice vector drawing).

-- 
Joost Diepenmaat | blog: http://joost.zeekat.nl/ | work: http://zeekat.nl/
From: Neil Baylis
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <332229c2-187d-4c17-b0ed-3f738f9780f8@p73g2000hsd.googlegroups.com>
On Mar 5, 11:47 am, Joost Diepenmaat <·····@zeekat.nl> wrote:
> Neil Baylis <···········@gmail.com> writes:
> > I'm looking for a UI library similar to ltk. I want the following
> > capabilities:
>
> > 1. Antialiased text
> > 2. Antialiased graphics (lines, circles, etc.)
> > 3. Runs on OS X ppc
> > 4. Runs on Linux X86
> > 5. CL bindings. (openmcl, maybe sbcl)
>
> As far as I know, clg (one of the Gtk2 interfaces) does that - I've used
> it with sbcl on linux x86, at least, and it provides antialiased text
> and graphics (using cairo).
>
> Not sure about opencml or OSX though.
>
> cells-gtk may also work, but I'm not sure that it provides an interface
> to cairo (so that may mean less nice vector drawing).
>
> --
> Joost Diepenmaat | blog:http://joost.zeekat.nl/| work:http://zeekat.nl/

Cairo would be nice. I'm holding off looking further into it until
they release their 1.6 version, supposedly any day now. But I think
Cairo is analogous to Quartz, being output only. I would still need a
way to deal with mouse events, yes?

Originally, I was leaning towards the combination of fltk and Cairo,
but it seemed that the CL libraries for both are in some disarray. I'm
not yet capable enough with CL to go and fix this, though maybe one
day.

Re clg, and cells-gtk: Does Gtk actually work with OSX? Somehow I got
it in my mind that they don't play nice together.
From: Ken Tilton
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <47cf0a03$0$15161$607ed4bc@cv.net>
Neil Baylis wrote:
> On Mar 5, 11:47 am, Joost Diepenmaat <·····@zeekat.nl> wrote:
> 
>>Neil Baylis <···········@gmail.com> writes:
>>
>>>I'm looking for a UI library similar to ltk. I want the following
>>>capabilities:
>>
>>>1. Antialiased text
>>>2. Antialiased graphics (lines, circles, etc.)
>>>3. Runs on OS X ppc
>>>4. Runs on Linux X86
>>>5. CL bindings. (openmcl, maybe sbcl)
>>
>>As far as I know, clg (one of the Gtk2 interfaces) does that - I've used
>>it with sbcl on linux x86, at least, and it provides antialiased text
>>and graphics (using cairo).
>>
>>Not sure about opencml or OSX though.
>>
>>cells-gtk may also work, but I'm not sure that it provides an interface
>>to cairo (so that may mean less nice vector drawing).
>>
>>--
>>Joost Diepenmaat | blog:http://joost.zeekat.nl/| work:http://zeekat.nl/
> 
> 
> Cairo would be nice. I'm holding off looking further into it until
> they release their 1.6 version, supposedly any day now. But I think
> Cairo is analogous to Quartz, being output only. I would still need a
> way to deal with mouse events, yes?
> 
> Originally, I was leaning towards the combination of fltk and Cairo,
> but it seemed that the CL libraries for both are in some disarray. I'm
> not yet capable enough with CL to go and fix this, though maybe one
> day.
> 
> Re clg, and cells-gtk: Does Gtk actually work with OSX? Somehow I got
> it in my mind that they don't play nice together.
> 

GTK2 last I heard still was not native on OS X, but I gather one could 
install Xwin or something and get it to go.

kenny

-- 
http://smuglispweeny.blogspot.com/
http://www.theoryyalgebra.com/

"In the morning, hear the Way;
  in the evening, die content!"
                     -- Confucius
From: Joost Diepenmaat
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <87bq5srj9c.fsf@zeekat.nl>
Neil Baylis <···········@gmail.com> writes:

> Cairo would be nice. I'm holding off looking further into it until
> they release their 1.6 version, supposedly any day now. But I think
> Cairo is analogous to Quartz, being output only. I would still need a
> way to deal with mouse events, yes?

Yes, you'll have to handle mousing yourself. It's output only (no events
on the primitives, as far as I know).

-- 
Joost Diepenmaat | blog: http://joost.zeekat.nl/ | work: http://zeekat.nl/
From: Peter Hildebrandt
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <47cfbffd$0$90268$14726298@news.sunsite.dk>
Joost Diepenmaat wrote:
> Yes, you'll have to handle mousing yourself. It's output only (no events
> on the primitives, as far as I know).
> 

Actually, this is exactly what I wrote the cairo-drawing-area widget for 
cells-gtk for (cf. my other post in this thread).  It handles mouse 
events, allows for marking, clicking, drag'n'drop, and selecting by 
drawing a box.  You can assign closures to slots for callbacks like

(mk-cairo-drawing-area :on-draggend #'(lambda (primitive old-pos 
new-pos) ...) ...)

If only I get round to packaging it up ...

Peter
From: Joost Diepenmaat
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <87lk4w88z4.fsf@zeekat.nl>
Peter Hildebrandt <·················@gmail.com> writes:

> Actually, this is exactly what I wrote the cairo-drawing-area widget
> for cells-gtk for (cf. my other post in this thread).  It handles
> mouse events, allows for marking, clicking, drag'n'drop, and selecting
> by drawing a box.  You can assign closures to slots for callbacks like
>
> (mk-cairo-drawing-area :on-draggend #'(lambda (primitive old-pos
> new-pos) ...) ...)

oooh. that's shiny! ;-) Now I will *have* to take another look at
cells/gtk.

-- 
Joost Diepenmaat | blog: http://joost.zeekat.nl/ | work: http://zeekat.nl/
From: Peter Hildebrandt
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <47cfc3fd$0$90265$14726298@news.sunsite.dk>
Joost Diepenmaat wrote:
> Peter Hildebrandt <·················@gmail.com> writes:
> 
>> Actually, this is exactly what I wrote the cairo-drawing-area widget
>> for cells-gtk for (cf. my other post in this thread).  It handles
>> mouse events, allows for marking, clicking, drag'n'drop, and selecting
>> by drawing a box.  You can assign closures to slots for callbacks like
>>
>> (mk-cairo-drawing-area :on-draggend #'(lambda (primitive old-pos
>> new-pos) ...) ...)
> 
> oooh. that's shiny! ;-) Now I will *have* to take another look at
> cells/gtk.

As I said, I haven't packaged it up yet.  I am not even sure whether it 
is in CVS at this point.  It is not entirely vapour ware, in fact my 
current project (a graphic network editor) is built around that widget, 
but I have to package it up nicely, clean up the interface, and remove 
some historic junk before I'd recommend it for general use.

Also, dragging multiple items is quite slow.  I haven't found the 
culprit yet.  If you're interested, I can give you a current snapshot as 
kind of a tech preview.

Peter
From: Joost Diepenmaat
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <878x0w86r2.fsf@zeekat.nl>
Peter Hildebrandt <·················@gmail.com> writes:

> Also, dragging multiple items is quite slow.  I haven't found the
> culprit yet.  If you're interested, I can give you a current snapshot
> as kind of a tech preview.

I'm interested.

-- 
Joost Diepenmaat | blog: http://joost.zeekat.nl/ | work: http://zeekat.nl/
From: Philippe =?UTF-8?B?TWVjaGHDrw==?=
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <20080305221516.0dc574d9@lambda>
On Wed, 5 Mar 2008 12:39:36 -0800 (PST)
Neil Baylis <···········@gmail.com> wrote:

> On Mar 5, 11:47 am, Joost Diepenmaat <·····@zeekat.nl> wrote:
> > Neil Baylis <···········@gmail.com> writes:
> > > I'm looking for a UI library similar to ltk. I want the following
> > > capabilities:
> >
> > > 1. Antialiased text
> > > 2. Antialiased graphics (lines, circles, etc.)
> > > 3. Runs on OS X ppc
> > > 4. Runs on Linux X86
> > > 5. CL bindings. (openmcl, maybe sbcl)
> >
> > As far as I know, clg (one of the Gtk2 interfaces) does that - I've
> > used it with sbcl on linux x86, at least, and it provides
> > antialiased text and graphics (using cairo).
> >
> > Not sure about opencml or OSX though.
> >
> > cells-gtk may also work, but I'm not sure that it provides an
> > interface to cairo (so that may mean less nice vector drawing).
> >
> > --
> > Joost Diepenmaat | blog:http://joost.zeekat.nl/|
> > work:http://zeekat.nl/
> 
> Cairo would be nice. I'm holding off looking further into it until
> they release their 1.6 version, supposedly any day now. But I think
> Cairo is analogous to Quartz, being output only. I would still need a
> way to deal with mouse events, yes?
> 
> Originally, I was leaning towards the combination of fltk and Cairo,
> but it seemed that the CL libraries for both are in some disarray. I'm
> not yet capable enough with CL to go and fix this, though maybe one
> day.
> 
> Re clg, and cells-gtk: Does Gtk actually work with OSX? Somehow I got
> it in my mind that they don't play nice together.
> 

There's a native Gtk port for MacOS X.
You can find it here: http://developer.imendio.com/projects/gtk-macosx
From: Neil Baylis
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <0d80110d-c646-486d-9332-69dd757e4aad@e31g2000hse.googlegroups.com>
> There's a native Gtk port for MacOS X.
> You can find it here:http://developer.imendio.com/projects/gtk-macosx

Ah well then. Thank you. Let me go see if I can get that installed
successfully, and then see if I can make it work with some CL lib or
other.

Neil
From: Thomas F. Burdick
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <40d3b181-375e-49b4-931f-669768204499@y77g2000hsy.googlegroups.com>
On Mar 5, 10:50 pm, Neil Baylis <···········@gmail.com> wrote:
> > There's a native Gtk port for MacOS X.
> > You can find it here:http://developer.imendio.com/projects/gtk-macosx
>
> Ah well then. Thank you. Let me go see if I can get that installed
> successfully, and then see if I can make it work with some CL lib or
> other.

Never let the easy answer deter you from finding the most difficult
path!  If you were to grab Ltk and Tk 8.5 you'd miss out on the fun of
trying to get N different half-assed Gtk bindings up and going on two
different platforms, and it would look reasonable on both out-of-the-
box, so you wouldn't get the fun of trying to convince Gtk to look
like a Mac application on OS X.  Not to mention the fact that with
every release of Ltk you have fewer and fewer little projects
available fixing problems with the GUI layer, and you're forced to
concentrate on your application.  The Gtk route also provides built-in
failure insurance : if you were to go with Ltk and your application
was a disaster, you wouldn't even get to blame it on the State Of Lisp
GUI Libraries.  No no no, better to follow in the footsteps of the
stunning cross-platform success that is the Gimp, while leveraging the
high-quality, supported and tested "some CL lib or other" bindings to
it.
From: Neil Baylis
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <7e401b74-1844-4382-b600-bf8acb55a5f7@d21g2000prf.googlegroups.com>
On Mar 6, 1:38 am, "Thomas F. Burdick" <········@gmail.com> wrote:

> Never let the easy answer deter you from finding the most difficult
> path!  If you were to grab Ltk and Tk 8.5 you'd miss out on the fun of
> trying to get N different half-assed Gtk bindings up and going on two
> different platforms, and it would look reasonable on both out-of-the-
> box, so you wouldn't get the fun of trying to convince Gtk to look
> like a Mac application on OS X.  Not to mention the fact that with
> every release of Ltk you have fewer and fewer little projects
> available fixing problems with the GUI layer, and you're forced to
> concentrate on your application.  The Gtk route also provides built-in
> failure insurance : if you were to go with Ltk and your application
> was a disaster, you wouldn't even get to blame it on the State Of Lisp
> GUI Libraries.  No no no, better to follow in the footsteps of the
> stunning cross-platform success that is the Gimp, while leveraging the
> high-quality, supported and tested "some CL lib or other" bindings to
> it.

I must admit you make a compelling case in favor of going the Gtk
route.

But I remain unconvinced. I think it would be wise to try ltk and Tk
8.5
before deciding, especially since ltk comes so close to the
functionality I desire.
From: Thomas F. Burdick
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <ab83f685-7219-4019-b6b0-0c60debc6b2a@h11g2000prf.googlegroups.com>
On Mar 6, 4:47 pm, Neil Baylis <···········@gmail.com> wrote:
> On Mar 6, 1:38 am, "Thomas F. Burdick" <········@gmail.com> wrote:
>
> > Never let the easy answer deter you from finding the most difficult
> > path!  If you were to grab Ltk and Tk 8.5 you'd miss out on the fun of
> > trying to get N different half-assed Gtk bindings up and going on two
> > different platforms, and it would look reasonable on both out-of-the-
> > box, so you wouldn't get the fun of trying to convince Gtk to look
> > like a Mac application on OS X.  Not to mention the fact that with
> > every release of Ltk you have fewer and fewer little projects
> > available fixing problems with the GUI layer, and you're forced to
> > concentrate on your application.  The Gtk route also provides built-in
> > failure insurance : if you were to go with Ltk and your application
> > was a disaster, you wouldn't even get to blame it on the State Of Lisp
> > GUI Libraries.  No no no, better to follow in the footsteps of the
> > stunning cross-platform success that is the Gimp, while leveraging the
> > high-quality, supported and tested "some CL lib or other" bindings to
> > it.
>
> I must admit you make a compelling case in favor of going the Gtk
> route.
>
> But I remain unconvinced. I think it would be wise to try ltk and Tk
> 8.5
> before deciding, especially since ltk comes so close to the
> functionality I desire.

Great :)

And don't forget to subscribe to the (low-volume) Ltk-user list and
ask for help there if you have any questions!

http://common-lisp.net/cgi-bin/mailman/listinfo/ltk-user
From: Neil Baylis
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <3bda5dbc-1885-4ecc-bb8f-fc6e992851f0@m34g2000hsc.googlegroups.com>
Well, it seems that ltk will do what I want after all. After upgrading
to Tcl/Tk 8.5.1 I am getting antialiased text and graphics. There
doesn't seem to be any provision for alpha blending, but I can do
without that for the time being.

I had previously installed the latest binary distribution of Tcl/Tk
for OSX, but it was still pre-8.5. To get an 8.5 version I had to
build it from source. The source package comes with good instructions,
and the build went without a hitch. There was a script /usr/bin/wish
that referred specifically to the old version. I had to edit that
script to make it point to whatever is installed as the "current" Tcl/
Tk, and then ltk objects magically displayed as antialiased.

If you have a Mac still using Tcl/Tk 8.4.x I recommend this upgrade.
The new wish comes with a menu item that demos all the Tk gui features
and shows you the Tcl source code that generates the displays. This is
a very handy resource if you are learning Tk, even if you're not using
Tcl to do it.

I also installed the Native OSX gtk+ libraries. Following the included
instructions, this took almost 2 hours to build. It installed massive
quantities of stuff, the vast majority of which I don't understand.
When it was all done, I was able to run the gtk+ demos, which look
surprisingly crappy. There were also a couple of Cairo demos which
worked ok. None of this is integrated with lisp yet. I'll keep that as
a background task. Next step is to get clg installed and working with
the gtk+ libraries.

Meanwhile, I can go ahead with my graphics app using ltk. Thanks to
everyone who offered advice, it was all helpful.

Neil
From: Ken Tilton
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <47d0118c$0$25028$607ed4bc@cv.net>
Thomas F. Burdick wrote:
> On Mar 5, 10:50 pm, Neil Baylis <···········@gmail.com> wrote:
> 
>>>There's a native Gtk port for MacOS X.
>>>You can find it here:http://developer.imendio.com/projects/gtk-macosx
>>
>>Ah well then. Thank you. Let me go see if I can get that installed
>>successfully, and then see if I can make it work with some CL lib or
>>other.
> 
> 
> Never let the easy answer deter you from finding the most difficult
> path!  If you were to grab Ltk and Tk 8.5 you'd miss out on the fun of
> trying to get N different half-assed Gtk bindings up and going on two
> different platforms, and it would look reasonable on both out-of-the-
> box, so you wouldn't get the fun of trying to convince Gtk to look
> like a Mac application on OS X.  Not to mention the fact that with
> every release of Ltk you have fewer and fewer little projects
> available fixing problems with the GUI layer, and you're forced to
> concentrate on your application.  The Gtk route also provides built-in
> failure insurance : if you were to go with Ltk and your application
> was a disaster, you wouldn't even get to blame it on the State Of Lisp
> GUI Libraries.  No no no, better to follow in the footsteps of the
> stunning cross-platform success that is the Gimp, while leveraging the
> high-quality, supported and tested "some CL lib or other" bindings to
> it.

And without the FFI, there's no way yer gonna be able to use it for 
protein folding!

kenny

-- 
http://smuglispweeny.blogspot.com/
http://www.theoryyalgebra.com/

"In the morning, hear the Way;
  in the evening, die content!"
                     -- Confucius
From: Ken Tilton
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <47cefec5$0$5629$607ed4bc@cv.net>
Joost Diepenmaat wrote:
> Neil Baylis <···········@gmail.com> writes:
> 
> 
>>I'm looking for a UI library similar to ltk. I want the following
>>capabilities:
>>
>>1. Antialiased text
>>2. Antialiased graphics (lines, circles, etc.)
>>3. Runs on OS X ppc
>>4. Runs on Linux X86
>>5. CL bindings. (openmcl, maybe sbcl)
> 
> 
> As far as I know, clg (one of the Gtk2 interfaces) does that - I've used
> it with sbcl on linux x86, at least, and it provides antialiased text
> and graphics (using cairo).
> 
> Not sure about opencml or OSX though.
> 
> cells-gtk may also work, but I'm not sure that it provides an interface
> to cairo (so that may mean less nice vector drawing).
> 

I heard rumblings on the Cells-Gtk list, I think Peter Hildebrandt was 
toying with doing that.

fwiw, kenny

-- 
http://smuglispweeny.blogspot.com/
http://www.theoryyalgebra.com/

"In the morning, hear the Way;
  in the evening, die content!"
                     -- Confucius
From: Peter Hildebrandt
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <47cfbf46$0$90268$14726298@news.sunsite.dk>
Ken Tilton wrote:
> Joost Diepenmaat wrote:
>> cells-gtk may also work, but I'm not sure that it provides an interface
>> to cairo (so that may mean less nice vector drawing).
>>
> 
> I heard rumblings on the Cells-Gtk list, I think Peter Hildebrandt was 
> toying with doing that.

Indeed he is.  And cairo integrates nicely with gtk, and the quality is 
very good.

The downside
- it's still somewhat WIP, there might be a bunch of bugs in the 
interactive part (i.e. you can drag and drop cairo elements in the 
drawing area, you can select those primitives by drawing a box etc.)
- the interface is not yet final (I wish to have a similar interface to 
a cairo and open gl drawing area)
- I haven't ported it to cells-gtk3 (the cells3 port of cells-gtk) yet
- I am fairly busy with my Real Life right now (got job interviews 
coming up tomorrow and next week)

If you'd like to look at it, and can zip up the status quo for you.  A 
more formal release will take another couple weeks.

Peter


> fwiw, kenny
> 
From: Ken Tilton
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <47cffb31$0$25028$607ed4bc@cv.net>
Peter Hildebrandt wrote:
> Ken Tilton wrote:
> 
>> Joost Diepenmaat wrote:
>>
>>> cells-gtk may also work, but I'm not sure that it provides an interface
>>> to cairo (so that may mean less nice vector drawing).
>>>
>>
>> I heard rumblings on the Cells-Gtk list, I think Peter Hildebrandt was 
>> toying with doing that.
> 
> 
> Indeed he is.  And cairo integrates nicely with gtk, and the quality is 
> very good.
> 
> The downside
> - it's still somewhat WIP, there might be a bunch of bugs in the 
> interactive part (i.e. you can drag and drop cairo elements in the 
> drawing area, you can select those primitives by drawing a box etc.)

Now that's what I call toying! Sounds good.

kenny

-- 
http://smuglispweeny.blogspot.com/
http://www.theoryyalgebra.com/

"In the morning, hear the Way;
  in the evening, die content!"
                     -- Confucius
From: Maciej Katafiasz
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <fqo5bp$t7l$1@news.net.uni-c.dk>
Den Tue, 04 Mar 2008 13:38:20 -0800 skrev Neil Baylis:

> I'm looking for a UI library similar to ltk. I want the following
> capabilities:
> 
> 1. Antialiased text
> 2. Antialiased graphics (lines, circles, etc.) 
> 3. Runs on OS X ppc
> 4. Runs on Linux X86
> 5. CL bindings. (openmcl, maybe sbcl)
> 
> 
> Maybe I'm out to lunch, and ltk already does this, but I haven't been
> able to figure it out. Sure, I can make it draw jaggy. It seems to have
> everything I want except for antialiasing.

AFAICT, GTK+ fits the bill. I'm not sure about the up-to-dateness of the 
various (there are 3 I think) CL bindings to it, so you might need to do 
some updating to get the latest stuff bound, but other than that, it 
should work just fine. You might need the X server to run it on OSX, but 
there's an active port in the works 
(http://developer.imendio.com/projects/gtk-macosx/) that's been used to 
create at least one commercial app with heavily customised looks, so it 
should be workable for many purposes.

Cheers,
Maciej
From: Maciej Katafiasz
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <fqo7j1$t7l$2@news.net.uni-c.dk>
Den Thu, 06 Mar 2008 07:09:46 +0000 skrev Maciej Katafiasz:

> You might need the X server to run it on OSX, but
> there's an active port in the works
> (http://developer.imendio.com/projects/gtk-macosx/) that's been used to
> create at least one commercial app with heavily customised looks, so it
> should be workable for many purposes.

That application being: http://micke.hallendal.net/blog/2008/01/31/synctv-
built-on-gtk/

Cheers,
Maciej
From: Peter Hildebrandt
Subject: Re: Which UI library am I looking for?
Date: 
Message-ID: <47cfc056$0$90268$14726298@news.sunsite.dk>
Maciej Katafiasz wrote:
  > AFAICT, GTK+ fits the bill. I'm not sure about the up-to-dateness of 
the
> various (there are 3 I think) CL bindings to it, so you might need to do 
> some updating to get the latest stuff bound, but other than that, it 
> should work just fine.

clg is the most complete one.  cells-gtk is less complete, but has Cells 
Inside.  Take your pick :-)

Peter



> You might need the X server to run it on OSX, but 
> there's an active port in the works 
> (http://developer.imendio.com/projects/gtk-macosx/) that's been used to 
> create at least one commercial app with heavily customised looks, so it 
> should be workable for many purposes.
> 
> Cheers,
> Maciej