Choosing between WPF, wxWidgets, Win32 API and MFC

SalvoTip
SalvoTip used Ask the Experts™
on

Imagine you are on Windows 7 and you have to write a GUI for a GRAPHIC application, (like a terrain editor, mesh viewer ..) which involves a great use of DirectX and OpenGL (so written in native C++). If your goal is a multi-platform software then you should go for wxWidgets, but imagine you're doing a Windows' only app...what would your choice be? and why?

I'm supposing that the application would work on both XP and Vista/7 and obviously in the WPF case the UI will be managed, but it will call native functions by a C++/CLI proxy-like class ( will "bouncing" from managed-native and native-managed cause performance issues? ).
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®

Commented:
C++ and Win32.
DirectX or OpenGL will be the most interesting part. So I'd choose C++.
Hi SalvoTip,

The assignment text is confusing, can you say what the actual question is please?

>> If your goal is a multi-platform software then you should go for wxWidgets

No, for me it would be either Qt or Scaleform, but anyway, that was not the question, was it? I'm confused ;)

ike
Jaime OlivaresSoftware Architect
Top Expert 2008

Commented:
I would use MFC. This will save you a lot of time with some tasks like dialogs, menus, etc.
MFC can host DirectX or OpenGL with ease.
CompTIA Network+

Prepare for the CompTIA Network+ exam by learning how to troubleshoot, configure, and manage both wired and wireless networks.

Author

Commented:
@ikework
Hi :)
yes the question was "what's your UI toolkit choice for an application which uses heavily DirectX and OpenGL?"
 
>> which uses heavily DirectX and OpenGL

If you want to have a fullscreen DirectX or OpenGL window and you need a GUI that is rendered inside of this window, then Scaleform might be interesting to you:

  http://www.scaleform.com/products/gfx

If you want a standard GUI, then I throw in Qt

  http://qt.nokia.com/downloads
Jaime OlivaresSoftware Architect
Top Expert 2008

Commented:
both OpenGL and WinAPI are already available in the Windows SDK, so to start working with it you don't need a 3rd party product.

Author

Commented:
@ikework
Hi, I'm currently using QT as you suggested me, that's because I accepted your post as solution.
Anyway if I have to reopen the question, there's no problem, let me know :)

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial