The GUI to end all GUI libraries (Let's Dream!)

Bill Baxter dnewsgroup at billbaxter.com
Wed Nov 28 21:26:31 PST 2007


Tom S wrote:
> Bill Baxter wrote:
>>> It used/uses an event processing system called 'sinking and bubbling' 
>>> which is superior to anything in existence ;)
>>
>> Gee thanks, that really clears it up for me.  :-P
>>
>> But you're wrong anyway.  Few people know it, but the most superior 
>> event processing system ever was the 'skulking and babbling' system 
>> invented at Xerox Parc, and promptly forgotten.  By everyone. :-P
> 
> LOL :D Well, the concept was explained here: 
> http://www.digitalmars.com/pnews/read.php?server=news.digitalmars.com&group=digitalmars.D.dwt&artnum=61 

Ah, ok.  Makes sense now.   Yes that is nice.  It drives me mad in 
wxWidgets that only that *one* widget gets the event, except .  I can't 
remember what Qt does there.  But that percolation is great, and very 
nice to have it both ways.  I think it's less popular in things like wx 
because they go way back to the days when we didn't have two spare 
cycles to rub together.  These days there's not much reason to do the 
whole chain of responsibility thing for every event.  We have the cycles.


> As for event handling itself, most of it will happen in immediate mode, 
> e.g. if (Button().stuff().clicked) { ... }
> 
> 
>> Yeh, I'm not so concerned about rendering text as input.  Rendering is 
>> pretty easy with FreeType.  But Asian languages tend to require 
>> special input methods that guess which word you mean from the 
>> phonetics you type.  And you just ain't gonna re-invent that.
> 
> Can't OS APIs do that? :o  Sorry, I'm not an Asian ;D

Yes, every OS has it's own APIs to do it that work with varying degrees 
of success.  I don't want to have to write the code to interface with 
every platform's particular way of doing it.  There are also things like 
accessibility that come into play.   Screen readers and such don't know 
that the little rectangle on the screen you're drawing is a text box. 
There are probably OS hooks for that too, on OS'es that have such 
things, but again, I want the GUI library to handle that for me so I 
don't have to worry about it and it Just Works (TM).  Both of those are 
fairly small issues in the grand scheme, but they are roadblocks on the 
way to being the gui to end all guis.

--bb



More information about the Digitalmars-d mailing list