This test fails with WINE even after I create the DIALOGINFO structure the first time it enters DefDlgProc. Not sure why this test should work on Windows. Basically at the stage where you are setting DM_SETDEFID there are no child windows on the dialog. Then what does DM_SETDEFID and DM_GETDEFID do when there are no child controls on the dialog? My guess is implementation of DEFDLG_SetDefButton may need to change. Regards Santosh Siddheshwar
-----Original Message----- From: Dmitry Timoshkov [SMTP:dmitry@baikal.ru] Sent: Thursday, April 15, 2004 5:48 PM To: Santosh Siddheshwar; Alexandre Julliard Cc: Robert Shearman; wine-patches@winehq.com Subject: Re: Handling dialog messages for non-template based dialogs
"Santosh Siddheshwar" santosh.s@sonata-software.com wrote:
OK.One place where this could be done is WM_NCCREATE which comes before WM_CREATE. Other place (possibly better) where it might be possible to
do
this is in CBTProc hook procedure. Not sure about the second option
though.
Any thoughts?
Attached test case shows that dialog info is initialized on the very first DefDlgProc invocation.
So, DefDlgProc16/A/W as the very first thing should call DIALOG_get_info and if it returns NULL initialize dialog structures.
Alexandre, please apply the test as soon as the dialog initialization is fixed.
Changelog: Dmitry Timoshkov dmitry@codeweavers.com Add a message test for custom dialog initialization.
-- Dmitry. << File: msg.c.diff >>
********************************************************************* Disclaimer: The information in this e-mail and any attachments is confidential / privileged. It is intended solely for the addressee or addressees. If you are not the addressee indicated in this message, you may not copy or deliver this message to anyone. In such case, you should destroy this message and kindly notify the sender by reply email. Please advise immediately if you or your employer does not consent to Internet email for messages of this kind. *********************************************************************
"Santosh Siddheshwar" santosh.s@sonata-software.com wrote:
This test fails with WINE even after I create the DIALOGINFO structure the first time it enters DefDlgProc. Not sure why this test should work on Windows.
Since I wrote it under Windows it apparently works there.
Basically at the stage where you are setting DM_SETDEFID there are no child windows on the dialog.
Yes, I was also confused when I saw this for the first time.
Then what does DM_SETDEFID and DM_GETDEFID do when there are no child controls on the dialog?
Looks like it should store id in the dialog structure, and only then try to change the look of a control.
My guess is implementation of DEFDLG_SetDefButton may need to change.
Yes, but that's another bug, not related to your patch. Although it would be great if you could fix that as well, don't bother if you have no time, I'll fix it later, this should be a very simple patch.