[Lazarus] Inconsistent results from MessageDlg()

patspiper patspiper at gmail.com
Sun Apr 22 16:00:28 CEST 2012


On 22/04/12 16:06, Bart wrote:
> On 4/22/12, patspiper<patspiper at gmail.com>  wrote:
>> But I have a slightly different suggestion:
>> 2- Escape key should first check if any button has Cancel=true, and use
>> that button's modal result. Otherwise, mrCancel is in order as the user
>> is running away from answering the dialog.
> AFAIK, no Button has Escape = True (maybe except for mbCancel) in
> TPromptDialog.CreateMessageDialog.
IIRC you mentioned that possibility in your OP. If no button has 
Cancel=true then there are 2 options:
- Escape key returns mrCancel
- Escape key has no effect unless mbCancel button is there
- Escape key has no effect whatsoever.
>
>> 3- [x] should either return mrCancel, or mimic the Escape key. The
>> latter is the more logical choice, as the programmer has intentionally
>> defined the action (by setting a button's Cancel to true) if the user
>> wants to run away.
> Not the case, as stated above.
> User (as in application programmer) has no influence over this for MessageDlg.
Options for [x]:
- Suppress it (don't show it)
- Mimic Escape key
- return mrCancel

Stephano




More information about the Lazarus mailing list