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
