Sergio,

You are the second person in a week to mention GTD, now I'm going to have to 
read it ;)  Your blog entry on it is interesting, but I will take a devil's 
advocate position on GUI design: many of the tricks more the result of 
over-engineering and vendor-lock than they are necessary or helpful.  I will 
grant that good visual design is both valuable and *very* hard to do.  

I have written one GUI app using Pharo by following some of the Polymorph 
examples.  It is not perfect, but it works and I will no doubt be able to do 
better in the future thanks to the help and Prof Stef browsers in 1.1 and the 
associated blogs and examples.  There are indeed "tricks" of GUI creation, but 
a lot can be done with "just" the following (much of which we have courtesy of 
Pinesoft): (1) layout with proportional sizing and fixed offsets, plus 
splitters; (2) tabs; (3) wizards, which conceptually are mostly about layout 
with buttons forced into the lower corners; (3) lists of text, single and 
multi-selection, with optional icons associated with each item; (4) trees; (5) 
text editors, single and mult-line, read only as an option; (6) a way to 
display an image and optionally react to mouse events and perhaps modify and 
redisplay affected portions of the image; (7) modal and modeless dialog boxes; 
(8) progress indicators with optional cancel button (that works<g>).  One can 
create a toolbar easily enough, but it is a useful abstraction and should be 
formalized.  There are probably other things we could add to this list, but it 
is enough to build some very useful GUIs.

Among these, (6) is the ultimate customizable widget.  Many times I have seen 
people create custom view subclass in Dolphin when an ImagePresenter and some 
nearly trivial event handling would have done the job and been far less trouble 
to maintain.

Native widgets are over-rated IMHO.  That is not to say they have no value, and 
it would be nice to see us make them easy to use.  I am split on whether I 
would like to see the IDE tools appear as host widgets on Linux; it would 
probably be best to set (sorry) a preference for the image to run over multiple 
windows or to default to what we have now which can be very useful if I need to 
work on two or more images at one time.  That is rare, and most of the time I 
would like to see the OS' task bar include my Smalltalk tools.

Many of the above elements are present in 

  http://www.anest.ufl.edu/users/wschwab/DSDN_news.htm

which has been superceded by a version that Ian created.  I have never learned 
to like his change from a horizontal to a vertical splitter, but among his 
changes were speed improvements that were beyond belief so I just thanked him 
for taking up the cause and used it like everyone else.  Speaking of Ian, he 
wrote a profiler for Dolphin that is wonderful; Pharo's comes somewhat close to 
it.  Ian also gave us his ChunkBrowser, and we have a gaping hole there.  Ghoul 
is not Ian's, but deserves attention, and we have nothing like it.  But I 
digress.

These screen captures show their age a bit, mostly in the text; Pharo improves 
on that if one chooses good fonts.  The widgets were native (Dolphin just works 
that way), but Polymorph would do just as well.  The search tab contents might 
be a bit hard to produce without Dolphin's view composer.

People go to great lengths to worry about executables.  As long as we have good 
lock-down tools, it is largely a non-issue.  My one stand-alone GUI built in 
Pharo has an icon sitting on my Gnome menu bar; it points to a shell script 
that launches the vm with the correct image - done.  Most problems I have with 
my Windows-based software over time get started because I did something 
Microsoft said to do and then they changed their collective mind on it.  

End of rant.  The short answer is that it can be done now; we have work to do 
to make things easier.

Bill


________________________________________
From: [email protected] 
[[email protected]] On Behalf Of Stéphane Ducasse 
[[email protected]]
Sent: Saturday, June 05, 2010 7:08 AM
To: [email protected]
Subject: Re: [Pharo-project] pharo and stand along GUI projects

you could revive the GTK port gwenael did for pharo.
I think that getting real interfaces is always important for pharo.

Stef

On Jun 5, 2010, at 5:15 AM, sergio_101 wrote:

> at this point, the only exposure i have had to pharo is using
> seaside.. i hadn't thought much about using it to write stand alone
> apps. not that i don't think it would be a good idea, i just haven't
> needed to write and GUI apps in awhile..
>
> anyway. i am thinking about starting an open source project to scratch
> an itch. i would imagine it will scratch a great deal of itches, so i
> would like it to be cross platform. i would like to make it look sharp
> on all platforms, and be easy to install..
>
> should i consider pharo for such a project?
>
> are there some examples of stand alone apps i can see in real life?
>
> if you would like a little more background on this, you can check out:
>
> http://www.codingforhire.com/blog/The-Perfect-GTD-System
>
> thanks!
>
> --
> ----
> peace,
> sergio
> photographer, journalist, visionary
>
> http://www.CodingForHire.com
> http://www.coffee-black.com
> http://www.painlessfrugality.com
> http://www.twitter.com/sergio_101
> http://www.facebook.com/sergio101
>
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to