Hi Jeremy,

Great to see you back here!

I will be undergoing a bone marrow transplant here in the next 3 weeks,

That's great news! I really hope it goes well for you and that you recover quickly.

I know that osgWidget has been around for a while now, but I'm not
entirely sure people are actually using it yet.

Yes, some of us are using it. There are occasional questions on the list/forum, and I know I (for one) have submitted a few fixes for small bugs.

I'd like to try and come
back and start hacking at this again, so I'm what I'm looking for are
any comments people might have or complaints that may have surfaced
while I was away.

Well, I have a few comments, and I'll probably have a few more later if I can get some more work into one of my pet projects that uses it. :-)

For now, the major comment I have is: why oh why are the argument names omitted from the method declarations in the headers? If all you have to work with is the headers, figuring out what you should pass as arguments to a function like

bool    setImage (osg::Image *, bool=false, bool=false)

can be hard. What are those two bools? Plus, they appear that way in the doxygen documentation too... See

http://www.openscenegraph.org/documentation/OpenSceneGraphReferenceDocs/a01066.html

I know it'll be a painful task to go and put the argument names back, but I think it has to be done...

Other than that, it works well. If I remember well, I found the interface for creating a window from a theme a bit weird, but I don't remember exactly what I found weird, so I'll have to get back to you on that.

I have lots of good ideas, but I will basically be rewriting and
SUBSTANTIALLY simplifying osgWidget to be a bare minimum and flexible
NodeKit for doing the basic UI stuff (supporting 3D). Then, I'll add
another layer on top (which will not be in C++, but instead in Lua) that
will do most of what osgWidget currently does, since no one really wants
to write UI code in C++ anymore. It's really, really dated and Lua is so
small, sandboxed, and efficient there's truly no excuse not to use
it. :)

I would recommend, instead of removing the C++ code, why not just wrap it (basically exposing it to Lua) instead? Then you have the best of both worlds. People who want to do GUI in C++ (and there are some cases where it's desirable) can still do so.

One of the hardest things when designing an API is that you need to keep in mind that people will want to use it in different ways. So even if in your projects you would much rather use Lua exclusively for your GUI code, other people will want to use it from C++ since they're used to using OSG that way, and your API needs to cater to both.

Note that I've diplomatically avoided saying what language I'd prefer to code my own GUIs in. Honestly, if I can build the Lua support easily on all platforms, I don't really care, but others will feel differently.

Anyway, I'm glad to have some of my motivation back. :) With the
transplant happening soon and a fairly decent chance of it being
successful, there is much to be optimistic about!

Excellent! Good to hear from you, and I'm glad you've got a better outlook on life now!

J-S
--
______________________________________________________
Jean-Sebastien Guay    [email protected]
                               http://www.cm-labs.com/
                        http://whitestar02.webhop.org/
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to