Page 1 of 1

Want to use wx; unsure of architecture

Posted: Mon Jan 10, 2011 5:56 pm
by nobodysbusiness
I'm working on creating a new multi-platform application, and I want it to have a terrific user experience. Many people suggest that it's necessary to create a separate GUI for each platform in order to make it truly native, but even thinking about creating the same GUI twice with different tools makes me want to tear my hair out.

That brings me to wxWidgets; pretty much the only game out there for a truly platform-friendly GUI. I'm hoping right now to develop much of the code for this new application using IronPython, but I don't know if this is possible.

I could use wx.NET from IronPython, at least theoretically, but I have yet to find even one blog post or tutorial describing how to do this. Am I really the only person who's ever tried doing this?

I suppose that I could use C# for the wx.NET GUI code, but is it actually possible to integrate IronPython and C# code together so that events are handled in the IronPython part.

Could I create my own IronPython wrapper for wxWidgets or wx.NET?

Or should I give up on IronPython and just make a C# GUI? Or even give up on wx and create an IronPython GUI for each platform?

Any advice that you may have would be much appreciated. Thanks!

Posted: Mon Jan 10, 2011 8:09 pm
by qgranfor
You say you're developing a cross-platform application but then list non-cross-platform libs like NET and the C# language. While these can run under Mono in Linux and OSx do you want to add another layer?

Posted: Mon Jan 10, 2011 9:30 pm
by nobodysbusiness
The main platforms that I'm developing for are currently Windows and Linux. I suppose that I'm not too worried about dependencies. If I develop an InstallShield Wizard for Windows, that should be able to take care of unmet dependencies on the Windows side, and there are ways of handling that sort of thing on Linux as well.

If I was just going to drop IronPython and use regular Python, then I suppose that would make things easier, so I can see your point. I'd just like to explore the IronPython option a little more, as it has some potential advantages as well.

Posted: Tue Jan 11, 2011 12:42 pm
by evstevemd
My Suggestion:
If you Choose Python go for wxPython/PyGTK/PyQT/PySide(Not yet for production?)
C++ There is wxWidgets/QT/GTKmm
Java there is Swing/SWT
C# I only know mono.

So from list, native widgets are given by:
wxPython, wxWidgets, SWT and I'm not sure of Mono!

Posted: Wed Jan 12, 2011 7:56 pm
by nobodysbusiness
For those who are curious about IronPython and wx.NET, there is some sample code available here:
http://stackoverflow.com/q/4627726/46695