The WPF based version of BSA is getting there. It don’t look as cool as the QML version (yet). The reason I am avoiding Dark Theme is because I want to dig more into BSA functionality and avoid spending time on controls like the scrollbar’s for now. Usage with scrolling and zooming is in place, so I need to figure out the tab’s and multiple diagram bars next. Scrolling on this is not as cool as on QML (yet) – QML have a feature that it accellerate and deaccelerate so the scrolling feels more alive. Scrolling on WPF is by default the same old stepping – I probably have to add the animation from QML myself – no idea yet..
I would like a cooler looking scrollbar, but I use ScrollViewer 3 places and the scrollbar belong to this – I did not code a line to get scrolling correct. I fear I have to re-write a few controls to get back the cool QML scrollbar’s, but that’s nothing compared to all the QML controls I had to fight.
QML vs XAML is basically very much the same with different syntax. But, XAML is better integrated with C# and this is where productivity hits you hard. And to repeat myself – on WPF I can get a 3rd party library to deal with dark Theme.
Drawing performance ? I don’t know – looks pretty much the same so far. That said I did this app with good results in both Qt and C#/WinForms as well. WPF have many ways to do graphics so I am still reading up and testing to understand what is the best path. I can get away with any of them, but as I later will build more performance hungry controls I would like to understand their impact, pros and cons before I do to much of the graphics itself. It is also a 3rd party component “WritableBitmapEx” I want to try out. Fun for days to come.
The plan for the QML version was to focus on HMI first. The main reason was (and is) that HMI have become so over-complicated. You need to dig deep into technology like QML or WPF and many embedded developers simply do not have the time or skills needed to do this – neither should they need to. Making a HMI with a few gauges is hardly rocket science IMO.