GUI library for D

spir denis.spir at gmail.com
Mon Apr 4 17:45:49 PDT 2011


On 04/05/2011 01:41 AM, Michel Fortin wrote:
> On 2011-04-04 17:27:05 -0400, Matthias Pleh <jens at konrad.net> said:
>
>> I would like to fill this gap and create a really good D GUI library
>>
>> Any thoughts, comments ... ?
>
> Just an observation...
>
> Cross platform libraries are fine, but they generally aren't very great either.
> They'll always stretch in one way or another the standard way to do things when
> put on a given platform. The end result will almost always look substandard
> when using that library in the environment it was not primarily designed for.
>
> On the other hand, one thing that is missing right now, in D and in most
> languages, is a standard way to display graphics. By that I mean if we had in
> Phobos a module that could just open a window and let you draw things in it,
> it'd make learning programming much more fun and it'd be useful for rapid
> prototyping of anything that involves graphics. It doesn't need to be
> complicated -- it doesn't even need to have a GUI -- just drawing things and
> viewing them somewhere on a screen would be great. Later on you can add click
> support, full screen mode and other features if deemed useful, but the goal
> would never be provide bindings for every piece of GUI on all platforms.
>
> So my observation is that a cross platform full-featured GUI will always fail
> somewhere (mostly where those platforms differs) whereas a cross platform
> drawing module with display capabilities is much more universally useful, is
> more easily approachable, and is much less code to maintain.

I would love that! Actually was thinking at something like that yesterday.

An ideal design (for me) for this kind of exploratory / fun programming would 
be having
* a drawing frame using most of the screen
* a minimal terminal frame down there (like in prog editors)
* a 'control' frame on the left
The control part beeing firstly for feedback on what happens in the drawing 
part. Eg display range, min/max, average... when drawing a function's curve.
Then, all kinds of sophiscation (control allows input, mouse, whatever...) can 
be added.

Unfortunately, I really have no idea on how to do that; else, I would have 
developped it already. But I would definitely help, if possible, anyone who 
knows and wants to invest time on such a project.

My uses for this would be similar to Michel's "make learning programming much 
more fun and it'd be useful for rapid prototyping". Especially around toy games 
/ aspects of games / samples. Having no visualisation (read: the model w/o the 
view) is deeply frustrating and makes everything abstract (read: far harder).

Denis
-- 
_________________
vita es estrany
spir.wikidot.com



More information about the Digitalmars-d mailing list