В случае если имеется
htmlayout::dialog dlg( NULL );
то в
dialog::do_modal_loop
получаем следующую картину:
...
HWND frm = GetAncestor(hwnd,GA_ROOTOWNER);
EnableWindow(frm,FALSE);
...
так как frm будет равно hwnd, получается, что дизаблится собственное окно.
Наверное надо бы поправить
Здравствуйте, Voivoid, Вы писали:
V>В случае если имеется
V>htmlayout::dialog dlg( NULL );
то в dialog::do_modal_loop
получаем следующую картину:
V>...
V>HWND frm = GetAncestor(hwnd,GA_ROOTOWNER);
V>EnableWindow(frm,FALSE);
V>...
V>так как frm будет равно hwnd, получается, что дизаблится собственное окно.
V>Наверное надо бы поправить
Заодно было бы неплохо поддержать ситуацию, когда в качестве OWNER-а диалога указывается другой модальный диалог.
Использование GA_ROOTOWNER сейчас приводит к тому, что оба диалога становятся модальными по отношению только к основному окну приложения.
Здравствуйте, Voivoid, Вы писали:
V>В случае если имеется
V>htmlayout::dialog dlg( NULL );
то в dialog::do_modal_loop
получаем следующую картину:
V>...
V>HWND frm = GetAncestor(hwnd,GA_ROOTOWNER);
V>EnableWindow(frm,FALSE);
V>...
V>так как frm будет равно hwnd, получается, что дизаблится собственное окно.
А для чего нужен диалог у которого parent NULL?