
Hi Gwenio, On Mon, Sep 6, 2010 at 22:28, Gwenio <urulokiurae@gmail.com> wrote:
In the end the usefulness of these events comes down to how the library is designed.
Right, so design the library first. On Mon, Sep 6, 2010 at 22:07, Gwenio <urulokiurae@gmail.com> wrote:
[...] For this initial stage, I am sticking to the "multi-platform interface". Higher level stuff will come later, if a design can be agreed to.
Yes, I think that all of us understand your intent, so you don't have to repeat it again. The problem is that there are *already* many low-level libraries with "multi-platform interface" (wxWidgets, Qt, omgui, gtkmm, and more...). To do a better design you should analyze why their design is wrong, what problems you want to solve and come up with a design that solves these problems. Almost everything you said till now doesn't differ conceptually from existing libraries, except the iostream analogy which is good and reminds Notus ideas. I've been for the quest of "how a good gui library should look" for about a year. However I could tell only counter-examples for a good library. I still don't have a grasp of the whole design. It's good that you opened this conversation here because: 1) As Daniel said two people is the perfect size of a team to agree on a design, however making a good design requires much more thought, IMO. 2) Some libraries that people mentioned here and I wasn't aware of, added to my understanding of the topic (again: notus, Adam&Eve). My claim is that you should think of higher level stuff and the low-level will come later. Think of event passing and model/view binding. Think of what concept should be there to make it possible to the same logic to operate with a dialog with "native" look, "uniform" look or even drawn with OpenGL on a single canvas in some computer game menu. How to design these to make all the three co-exist in a single application? Yakov