
Hello all,
Considering the fact that some of the Boosters work on the GUI library, I would like to throw something to the mix:
I wasn't aware that some people here were into GUI work! In that case I'd like to gauge interest in my work: http://developers.slashdot.org/article.pl?sid=04/10/18/1118242 and the homepage at http://www.litwindow.com/library This is a two part library. The base part is UI independent while the second part aims at reducing the work for UI coding. I was about to prepare an announcement for the base part because it might be of interest even to non-gui programming, but am jumping the gun here. An official announcement will follow soon. The base part contains "data adapters" and a (very) simple constraints solver. "Data adapters" is a small, portable "reflections" or extended runtime type information like mechanism for C++. It is a bit simpler to use than other such mechanisms I've seen. If you've got this struct struct SomeSettings { int m_aMember; SomeOtherStruct m_struct; vector<string> m_strings; }; the neccessary data adapter definition which you must include in a source file looks like this IMPLEMENT_CONTAINER_ADAPTER(vector<string>) BEGIN_DATA_ADAPTER(SomeSettings) PROP(m_aMember) PROP(m_struct) PROP(m_strings) END_DATA_ADAPTER() Note these things: It supports containers, you do not have to repeat any type information and you do not have to modify the original struct definition, which allows using foreign data definitions. To use it: SomeSettings aVariable; aggregate a=make_aggregate(aVariable); cout << a["m_struct"].to_string(); container c=a["m_strings"].get_container(); // do stuff with the container Initial documentation is http://www.litwindow.com/lwl/doc/html/group__data__adapters__howto.html Some code is at http://cvs.sourceforge.net/viewcvs.py/litwindow/litwindow/lwbase/include/litwindow/dataadapter.h?rev=1.2&view=markup and http://cvs.sourceforge.net/viewcvs.py/litwindow/litwindow/lwbase/src/dataadapterimp.cpp?rev=1.2&view=markup (look for accessor_as_debug) still under development but already somewhat mature (> 1year) The second part of the library aims at reducing GUI coding by a factor of 10 (if anyone has a better catch phrase, please let me know). It introduces a generic "mediator" object, enhances widgets of an existing UI framework and lets a programmer use rules (predicates) to code UI dependencies. http://www.litwindow.com/library contains several links to an overview, FAQ and further reading. I welcome any comments and thoughts you might have. Best regards and thank you for your interest Hajo Kirchhoff -------------------------------------------- Lit Window Library - Speed up GUI coding 10x http://www.litwindow.com/library?src=ml wxVisualSetup - integrate wxWidgets into Visual Studio .NET http://www.litwindow.com/Products/products.html?src=ml BugLister - Defect Tracker http://www.litwindow.com/buglister?src=ml Tips & Tricks for wxWidgets & MS Visual Studio http://www.litwindow.com/Knowhow/knowhow.html?src=ml