Serving the Quantitative Finance Community

 
User avatar
JTB
Topic Author
Posts: 0
Joined: August 20th, 2010, 9:28 am

C++ GUI

May 7th, 2014, 12:45 pm

I apologize if this question is asked before, but anyway.Background:I am used to WPF and MVC in C#. Now I have to change over to C++ and I dont want to waste time on windows forms. I would like to start on a "good" GUI-tool which can implement nice 2D-plots like high-charts. And I will program in VS 2013 and I want to create a desktop application.Question1) What type of GUI-api can I use in VS to create "fancy" desktop apps written in C++ with nice plots?JTB
 
User avatar
Cuchulainn
Posts: 22924
Joined: July 16th, 2004, 7:38 am

C++ GUI

May 7th, 2014, 5:09 pm

qwt?
 
User avatar
Hansi
Posts: 41
Joined: January 25th, 2010, 11:47 am

C++ GUI

May 7th, 2014, 5:22 pm

Is C++ a requirement based on cross platform requirements for the UI and backend? If not you can just modularize the code and keep the existing UI but switch the backend to C++ as per notes here:http://stackoverflow.com/a/4776388/745908Also why not WinForms?If you want to use highcharts directly you could do a chromium embed and do all the UI in html+css+js and just talk via HTTP to the C++ backend:https://code.google.com/p/chromiumembedded/More details on your objective might bring out more ideas.
 
User avatar
Polter
Posts: 1
Joined: April 29th, 2008, 4:55 pm

C++ GUI

May 7th, 2014, 8:56 pm

http://stackoverflow.com/questions/5095 ... ibraryAlso think I'd go with Qwt (at least consider it as one of the options at first).It's also rather easy to generate PDFs from Qt if you need high quality prints; examples:Qt & QPdfWriter: Write Image to PDF File Using QPdfWriterQt & QPdfWriter: Save Colored Texts to PDF File Using QPdfWriterFor something a bit different you may also consider Wt (which is another C++ lib that targets HTML5 instead, also supports both 2D including interactive and off-line (like PDF) targets -- and 3D via WebGL; but deliberately follows a similar widget model to Qt):http://www.webtoolkit.eu/wtExample w/ interactive charts: http://www.webtoolkit.eu/wt/examples/ch ... responding source code: http://www.webtoolkit.eu/wt/src/chartsBenefits? Productivity & ease of use -- using one lib, like Wt, smooths out the kinks / does most of the frontend (e.g., visualization & control via GUI) / backend (e.g., computation) integration work for you -- all with one C++ codebase (although you can naturally add CSS styling and whatnot on the frontend side if you like, see the examples).Wt & WebGL:http://demos.vicomtech.org/wt/http://de ... ech.org/// If you'd like just HTML & WebGL, consider X3DOM: http://www.x3dom.org/// Interactivity is pretty neat: http://www.x3dom.org/?p=3619Last but not least more on the foundational level are Cairo and Anti-Grain Geometry (AGG):http://cairographics.org/cairomm/http:/ ... ut/Notably, Cairo is possibly quite close to what may end up in the next C++ standard:http://isocpp.org/blog/2014/01/n3888htt ... 58.htmlThe reference implementation is already available and happens to work just fine with VS 2013:https://github.com/mikebmcl/N3888_RefImpl:-)
Last edited by Polter on May 6th, 2014, 10:00 pm, edited 1 time in total.
 
User avatar
JTB
Topic Author
Posts: 0
Joined: August 20th, 2010, 9:28 am

C++ GUI

May 8th, 2014, 6:52 am

What type of application I would like to develop:1) Derivative pricing tools (with an input section (text box and dropdown-menys) and an output section with plots (volatility surfaces, timeseries plot etc).2) I want to work with desktop-application, not web-application (eventhough JS gives pretty graphs, I find it time-consuming to work with JS)3) I am open to suggestion to both free and commercial "packages" that helps me produce nice desktop GUI, with nice plots with a quality similar to JS' HighCharts.4) Are there eny TELERIK equivalent for C++?5) What "packages/libraries" do quants in funds/bank use for producing derivative pricing tools with plot functionality (when they build it in C++)?Anyway, thank you all good input!
 
User avatar
Hansi
Posts: 41
Joined: January 25th, 2010, 11:47 am

C++ GUI

May 8th, 2014, 9:59 am

2) I fear that most GUI work is also time consuming unfortunately even for desktops but I don't have a lot of experience with it so that might be the reason.3) DevExpress and Telerik are the ones used by our IT department4) Telerikcan be used for the GUI and then interop to CLI/C++5) Not in derivated pricing but the internal apps used by the teams on the floor are built with DevExpress, Telerik, Dojo for widgeting etcand then our desk does quick RAD iterations with Bootstrap + Hightcharts+ D3 talking to a R/F#/C++ backend depending on situation.If you definetly want to stick to a desktop app then I think WPF/C# for GUI talking to a CLI/C++ backend might be a good choice.
 
User avatar
Hansi
Posts: 41
Joined: January 25th, 2010, 11:47 am

C++ GUI

May 8th, 2014, 2:59 pm

Another choice in terms of cross-platform but very early days from the looks of it: http://doc.qt.digia.com/QtDataVisualization/
 
User avatar
mj
Posts: 12
Joined: December 20th, 2001, 12:32 pm

C++ GUI

June 23rd, 2014, 11:13 pm

a common solution is to interface C++ with EXCEL, using xlw for example.