
Brian Braatz wrote:
I will end my thoughts here with the (repeated) suggestion that making a thin layer above the current WxWindows will allow for a Boost.Gui in a short timeframe that has an incredible API interface.
I guess I'm suggesting something a little more exotic than developing a "thin layer". The folks at wxWindows have begun discussions on what the next major revision of their library will look like. They seem to recognise that their API and general design is about due for some serious rework. For example, they are considering relaxing the requirement that it works with old compilers (so templates, exceptions and standard library classes are candidates for native use) and overhauling their event system. These are areas that the boost community obviously has solid experience with. What I'm suggesting (though not very clearly!) is that we work together to make wxWidgets 3.x. Maybe we call it boost-gui. Or boost-wxgui. Whatever. We can leverage off the huge body of existing GUI code that they have while helping to redesign the API's/design to "modernise" the library. It's always hard trying to get two seperate groups of people working toward a common goal but in this case it seems that our interests are heading along similar paths... What do people think? Is it worth starting to open channels to see if such a collaboration is possible? Do we want a collaboration or do we want more stringent control? If we were to collaborate what would be the guidelines (license, decision making, ownership etc)? Do we think the wxWidgets devs are the right ones to be collaborating with? Personally, I think wxWidgets has some flaws but is still an excellent library - IMHO it's currently the best option for C++ GUI development. If we were able to seriously address those flaws with some boost know-how then I'd be in GUI-developer utopia. :) Cheers, Matt PS Another (less tasteful) alternative is that we could fork from their mainline and start hacking wxWidgets into what we believe it should be. I'd only be interested in this option if the collaboration option had been exhausted.