Lost a new commercial user this week :(

Rikki Cattermole via Digitalmars-d digitalmars-d at puremagic.com
Sun Dec 14 01:52:59 PST 2014


On 14/12/2014 10:27 p.m., ketmar via Digitalmars-d wrote:
> On Sun, 14 Dec 2014 11:24:30 +0200
> ketmar via Digitalmars-d <digitalmars-d at puremagic.com> wrote:
>
>> On Sun, 14 Dec 2014 22:13:13 +1300
>> Rikki Cattermole via Digitalmars-d <digitalmars-d at puremagic.com> wrote:
>>
>>> Now I'm back to the GUI situation.
>> talking about GUI toolkits. there is NONE. yep, i know about DWT, GtkD
>> and alot of other projects. they suck. they suck badly. there was a
>> great project once, "Harmonia", but it is dead. DWT suck being
>> java-rooted, and java GUI toolkits are piles of crap. other suck being
>> just a wrappers. there is no GUI toolkit that utilises some kind of
>> markup language, constraint engine (cassowary, anyone?), easy FX
>> without writing boilerplate code, theming and not being a fscking
>> wrapper.
>>
>> yes, i know: "if you want to have something, stop ranting and just do
>> it!" yet i have alot of other hobby projects and only 24 hours in a
>> day. poor me.
>
> p.s. sorry for me being rude. DWT, GtkD and others are great project of
> great value. it's not about "their authors doing wrong things", that's
> about "i want something completely different!"

Yeah they are great projects.
But they won't ever be what I'm looking for.

Personally?
- I want a gui toolkit that is accelerated e.g. OpenGL.
- That can be layered drawn on top of other OpenGL content.
- Completely configurable at runtime e.g. change of shaders.
- Centralized themeing.
- That works on all major platforms without heartache.

But here's the thing about guis in general.
Gui toolkits are not really designed to work with OpenGL like this.

If I want to fix this, I know I can't go around designing the controls 
for example. Luckily Google has already done this! Even defined default 
themes, and how controls should be drawn.

Now with how I want a gui toolkit to work, it has a lot of benefits.
First off, before I can even create a window, well I need a windowing 
library. Hello Devisualization.Window.

Next, okay I can create a window and a context as needed.
What about doing some actual drawing? Devisualization.Util:OpenGL

So drawing for OpenGL is easy, but that window could really do with an 
icon.. Devisualization.Image
Now lets draw some text! Devisualization.Font

Okay, now we are ready for actually ready for controls. Or are we? Nope!
Need a scenegraph to instruct when to draw each control. 
Devisualization.Scenegraph

Next step, lets start the actual controls! Well actually.. we already 
know we have separated out coordinates from events thanks to the 
scenegraph. So how about a scenegraph with eventing support.

Noticing something? That's about quarter of a game engine stack already 
made. Before even having GUI controls actually being used.
Highly modular and implementation replaceable, portable.

I'm already exhausted before even considering sound.
Also don't forget the colour paletted provided from Google is in either 
Photoshop or Illustrator formats. So if you want to use them.. hello 
parser (already made, Devisualization.Util:photoshop_aco).


More information about the Digitalmars-d mailing list