Spent yesterday installing Lazarus on a Mac Book Pro i5 x86_x64 with Sierra (with Cocoa used in XCode) and finally got it to compile.
Noticed that the graphics on the Mac compiled programs and the controls have shifted positions from the Windows 10 compiled versions. When not compiled (in design mode) the forms appear identical to the windows versions, but when compiling the scaling and positioning is changing.
How do I keep the scaling the same ?
The positioning on the Mac compiled programs are somehow changing in erratic waysI have set High Dpi in the settings.
As shown in the attached png pictures:
Sometimes the rendered image on the TPaintbox becomes too big, yet everything on the TPanel is OK (NFlakes program)
Sometimes the rendered picture on the Paintbox is shifted by the width of the TPanel when a TPanel is on the side (Overlapping flake)
Sometimes the TForm is a bit lower in height by the size of the titlebar (curly tree).
On Windows 10 all of those are well scaled, but after compiling on a Mac, bits and pieces change in size or position.
I have been manually resizing things on the Mac, but surely there is a better (programmatic) way of adjusting things to make the GUI consistent, regardless of whether it is run on a Windows 10 or a Mac computer ?
I read here
https://forum.lazarus.freepascal.org/index.php/topic,49159.0.html that HighDPI Mode LCL automatically resize form Width and Height based on form PixelsPerInch property. They also suggested to scale to ScaleScreenTo96 (Not sure why/)
grpbReservations.Width := ScaleScreenTo96( grpbReservations.Width );
pnlSettledGuest.Width := ScaleScreenTo96( pnlSettledGuest.Width );