title: TSaveDialog file extension and [ofOverwritePromt] issue
body: <p>There is a simple question already about the idea of the TSaveDialog and [ofOverwritePromt] at <a href="https://stackoverflow.com/questions/2554046/delphi-overwrite-existing-file-on-save-dialog">Delphi overwrite existing file on save dialog</a>.</p>
  
  <p>So my issue/scenario is following:</p>
  
  <ul>
  <li>I have a <code>TSaveDialog</code></li>
  <li>I set the <code>[ofOverwritePromt]</code> in <code>Options</code></li>
  <li>I set the filter to "PDF (*.pdf)|*.pdf"</li>
  <li>Filter index is set to 1</li>
  </ul>
  
  <p>So now I execute the program and call the dialog. If the file I select WITH MOUSE or KEYBOARD (without typing) exists then save dialog asks me to overwrite with the message:</p>
  
  <p><a href="https://i.stack.imgur.com/bLWSe.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/bLWSe.png" alt="save dialog"></a></p>
  
  <p>But if I do the same actions but type the filename like 'Test' without specifying the extension the save dialog does not confirm overwrite.
  I know that actually it returns another filename "C:\Users\xxx\Desktop\Test" instead of "C:\Users\xxx\Desktop\Test.pdf". It is kind of not nice if the dialog asks you to save the file, but you need to type the extension..
  So usually I handle it like this:</p>
  
  <pre><code>repeat
    { Ask for the file if not silent }
    if not dlgSave.Execute then
      Exit;
  
    { Read the filename from the save dialog }
    LTempFile := dlgSave.FileName;
    if not SameText(ExtractFileExt(LTempFile), '.pdf') then
      begin
        { Add the extension }
        LTempFile := LTempFile + '.pdf';
  
        { As we bypassed the overwrite check in dialog do it now }
        if FileExists(LTempFile) then
          if MsgWarn(Format('%s already exists. Replace?', [ExtractFileName(LTempFile)]), mbOKCancel) &lt;&gt; mrOk then
            Continue;
      end;
  
    Break;
  until False;
  </code></pre>
  
  <p>Is there a way to do that more elegant <strong>without customizing the standard dialog</strong>?</p>