Sure, take a look at the code in OCPNPlatform class.
For Windows, we have seen that wxWidgets idea of screen
size in MM is often just plain wrong. It is a known bug in wxWidgets, and affects linux
gtk port as well. But we need a good number in order to scale the GL graphics engine
, especially in the case of super high density (retina class) displays. So we ask the Windows device management system to tell us the characteristics of the monitor
which is actually attached. To do this Windows enumerates the video ports
, and reports the accurate results. And this, like much of the Windows device system, is a slow process.
So, our error is simply that we do not perform this expensive test just once on initialization, and cache the results. Presumably, most use cases for OCPN do not involve dynamic monitor
To fix this is simple, and relatively low risk.
As we have seen, it becomes most apparent when many, many routepoints need to be rendered for one screen
image. And that is a use case that this abbreviated 4.5 Beta series simply missed, due to limited Beta test participation.