Hello IUP peoples, I am running into a few interesting issues with high DPI 
scaling and just kind of looking for ideas on how to handle this kind of thing.

I have a number of custom drawn "controls" (really just IupCanvas with CD 
drawing code attached) and a few of them store spatially arranged objects. 
Currently those are stored in pixel values, which in hindsight may not have 
been the best idea -- but I started writing this application in 2017 when (at 
least for me) high DPI monitors weren't quite as common as they are now.

My workaround idea is to scale those pixel values up when loading and down when 
saving using the SCREENDPI global attribute, but this would result in 
less-than-ideal behavior if the user moves the window between two screens with 
different DPI values. I suppose I could then recalculate all the in-memory 
values after every MOVE_CB on the main window. This would only work if the 
SCREENDPI  value updates depending on... the currently active monitor, which it 
doesn't seem to imply at all that it would so maybe this wouldn't actually 
change anything for multiple monitor setups.

Maybe this is the best I can do (and essentially ignore multiple monitors), but 
I wanted to see if there were any ideas or tips from anyone who had dealt with 
this already.

Thanks!

IJR
_______________________________________________
Iup-users mailing list
Iup-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/iup-users

Reply via email to