Want to use wx; unsure of architecture

This forum can be used to talk about general design strategies, new ideas and questions in general related to wxWidgets. If you feel your questions doesn't fit anywhere, put it here.
Post Reply
nobodysbusiness
In need of some credit
In need of some credit
Posts: 3
Joined: Mon Jan 10, 2011 5:40 pm

Want to use wx; unsure of architecture

Post by nobodysbusiness » Mon Jan 10, 2011 5:56 pm

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!

qgranfor
Experienced Solver
Experienced Solver
Posts: 89
Joined: Sun Aug 29, 2004 7:32 pm
Location: ND...USA
Contact:

Post by qgranfor » Mon Jan 10, 2011 8:09 pm

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?

nobodysbusiness
In need of some credit
In need of some credit
Posts: 3
Joined: Mon Jan 10, 2011 5:40 pm

Post by nobodysbusiness » Mon Jan 10, 2011 9:30 pm

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.

User avatar
evstevemd
Part Of The Furniture
Part Of The Furniture
Posts: 2292
Joined: Wed Jan 28, 2009 11:57 am
Location: United Republic of Tanzania
Contact:

Post by evstevemd » Tue Jan 11, 2011 12:42 pm

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!
Chief Justice: We have trouble dear citizens!
Citizens: What it is his honor?
Chief Justice:Our president is an atheist, who will he swear to?
[Ubuntu 19.04/Windows 10 Pro/MacOS 10.13 - GCC/MinGW/Clang, CodeLite IDE]

nobodysbusiness
In need of some credit
In need of some credit
Posts: 3
Joined: Mon Jan 10, 2011 5:40 pm

Post by nobodysbusiness » Wed Jan 12, 2011 7:56 pm

For those who are curious about IronPython and wx.NET, there is some sample code available here:
http://stackoverflow.com/q/4627726/46695

Post Reply