<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Hi Ondrej!<br>
      <br>
      I just ran into two issues with the IDE in High-DPI mode.<br>
      <br>
      The IDE main window changed from yesterday (when I first used it)
      to today.  Yesterday all of the Buttons were larger (but the
      internal images were still small).  Today the Buttons have
      returned to their small sizes.  The internal images are still
      small).<br>
      <br>
      <img alt="" src="cid:part1.A8EBA8B0.74AB8516@ziesig.org"
        height="122" width="522"><br>
      <br>
      I don't know what caused the change.<br>
      <br>
      The "Watch Properties" window is erroneously scaled for the font.<br>
      <br>
      <img alt="" src="cid:part2.62FB8BF0.CF0E2CF9@ziesig.org"
        height="348" width="482"><br>
      <br>
      <br>
      Thanks,<br>
      <br>
      Don Ziesig<br>
      <br>
      On 02/20/2017 11:46 AM, Ondrej Pokorny via Lazarus wrote:<br>
    </div>
    <blockquote
      cite="mid:0760cd28-8fee-33d7-aa2a-823dcf5d6466@kluug.net"
      type="cite">I'd like to announce that I finished the concept of
      DPI scaling in Lazarus / LCL.
      <br>
      <br>
      It's quite easy for the programmer. Documented here:
      <a class="moz-txt-link-freetext" href="http://wiki.lazarus.freepascal.org/High_DPI">http://wiki.lazarus.freepascal.org/High_DPI</a> (details are in "High
      DPI in Lazarus 1.7 and above").
      <br>
      <br>
      1.) I made the Lazarus IDE High-DPI aware - the IDE itself and its
      windows should scale correctly.
      <br>
      <br>
      2.) To make your own application use the new LCL scaling and to
      make sure your layouts don't get destroyed, do the following:
      <br>
      <br>
      a.) Make sure you don't change the system DPI settings during the
      proccess.
      <br>
      b.) Update the IDE to the latest trunk and rebuild it.
      <br>
      c.) Open your project in the IDE.
      <br>
      d.) Enable LCL scaling for your application DPI awarness in
      Project Options -> Application -> "Use LCL scaling (Hi-DPI).
      <br>
      e.) On Windows: enable DPI awarness in Project Options ->
      Application. Decide if you want to support per monitor DPI
      awarness or not.
      <br>
      f.) Make sure TForm.Scaled=True for all your forms (default
      value).
      <br>
      g.) Make sure you use TControl.ScaleCoord() or ScaleCoord96() to
      scale coordinates during the run-time.
      <br>
      <br>
      And you are ready. Your forms will scale both in runtime and
      design time nicely.
      <br>
      <br>
      For those who followed my last announcement: as Zeljko and Michael
      requested, I removed the LCLScaleForms define and introduced the
      Application.Scaled property instead (that you set in step 2d). The
      default value is Application.Scaled=False.
      <br>
      <br>
      If you keep Application.Scaled=False, there won't be any changes
      in your application.
      <br>
      <br>
      Please report issues or comment on problems. I have still time to
      change things until Lazarus 1.8 is out (you can expect RC1 in
      April).
      <br>
      <br>
      Ondrej
      <br>
      <br>
    </blockquote>
    <p><br>
    </p>
  </body>
</html>