BKM for Screen Layout Design for Mac, Windows and Linux

Hi Steve! I think there’s two traditional ways of addressing this…

  1. Container Controls per platform as Jean-Yves Pochez has recently detailed
  2. Offset logic per platform
    a. In this scenario you use #If and TargetXYZ to give platform specific paths where you adjust control placement and sizes on a per OS level.

Of course you’ll still need to use the Remote Debugger and/or Xojo on each platform to get the details correct initially, but once done you’ll have something that will look more normal on each.

Yes, the whole idea of this being something that Xojo should handle has been discussed many times over the decades, but alas with OS specific sizing/positioning differences and a plethora of controls to manage, it’s left up to us devs.

Theoretically, if you go with option #2 above, one could setup some sizing/placement rules from one platform to another that could be reused in future projects. Heck now that I think about it, I’m surprised that an enterprising third-party plugin dev hasn’t come up with some kind of a tool to ingest the layout from one platform and output recommended changes or even final code for other platforms. It doesn’t need to be 100% either as even getting to 80% of the way there would save a ton of grunt work.

Hope this helps.