From 320c0da41ddf7cb4cdf83d05b93963c6c9e4151c Mon Sep 17 00:00:00 2001
From: dsiders
-Options is updated to include the value ofExtensionDifferent if a non-blank -extension was entered that does not match the value in the DefaultExt property. -
-Values in Options are used to determine if the file name is usable, including:
DoExecute is an overridden Boolean function in TOpenDialog. It ensures that the value ofExtensionDifferent is -excluded from Options prior to executing the dialog. The value will be included -in the CheckFile method if a file extension is entered that does not match the -DefaultExt property. +excluded from the Options property prior to executing the dialog. It calls the +inherited method (in TCommonDialog) to display the dialog form and to get the +UserChoice used to complete execution of the dialog.
-DoExecute calls the inherited method, and extends the execution loop -for the dialog to use the Options enabled for the dialog including: +DoExecute extends the execution loop for the dialog to use the Options enabled +for the dialog, including:
+The return value is True when all of the steps are successfully +completed. The return value is False if any mechanism other than the OK +button was used to close the dialog. +
+If execution of the inherited method was successfully completed, the CheckAllFiles method is called to validate the values in the FileName and Files properties.
-The return value is True when all of these steps are successfully -completed. +The return value is set to True if the selected FileName or Files is/are +valid for the dialog. Options is updated to exclude the value +ofExtensionDifferent when Files contains more than 1 (one) file entry. This +avoids the erratic behavior displayed when multiple file selections are enabled +and used on the dialog, and mimics the behavior used in Delphi 7. +
++If a single file is selected on the dialog, and has an extension which does not +match the assigned value in DefaultExt, the value ofExtensionDifferent is +included in Options to indicate the condition. +
++DoExecute is called from the Execute method in the TCommonDialog ancestor, and +occurs immediately before the Close method is called.