kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #36797
Re: KIDIALOG broken
Le 23/07/2018 à 18:29, Wayne Stambaugh a écrit :
> Orson,
>
> On 7/23/2018 12:03 PM, Maciej Sumiński wrote:
>> Hi Wayne,
>>
>> On 07/23/2018 05:40 PM, Wayne Stambaugh wrote:
>>> In the process of fixing this bug
>>> https://bugs.launchpad.net/kicad/+bug/1782708 I discovered that the
>>> KIDIALOG object called when editing an externally defined environment
>>> variable will completely lock up kicad on windows. Clicking the dialog
>>> OK button or hitting the escape keep does not close the dialog and I
>>> have to manually kill the running kicad process. When I convert this
>>> code over to use wxRichMessageDialog directly, it works as expected.
>>> It's possible that wxRichMessageDialog::ShowModal() does not like being
>>> overridden. Will someone check to see if this issue occurs on macos or
>>> linux?
>>
>> I have just tried to recreate the mentioned bug report on Linux, but it
>> works fine here. I have successfully changed the path, got the dialog
>> displayed and confirmed everything by clicking OK.
>
> I confirmed with a debugger that it is definitely hanging on the
> wxRichMessageDialog::ShowModal() call. This may not be a viable
> solution on windows. Technically ShowModal() is implemented in
> wxDialog. Calling wxDialog::ShowModal() doesn't work either. I can
> change this to use wxRichMessageDialog rather than KIDIALOG to fix the
> bug but that doesn't fix every place else KIDIALOG is being used.
>
Hi Wayne,
Only FYI, I can reproduce this hang on wxWidgets 3.0.4, but not on 3.1.1
It looks like a wxWidgets bug fixed in 3.1.1 version (I am using this version for my daily work on
Kicad on Windows when I do not need the wxPython support).
>>
>>> Also, what is the purpose of the "Do not show this message again"
>>> checkbox when it's only for the current session? Generally speaking
>>> checking this option would not show the message forever. This seems
>>> like it would be confusing to the user.
>>
>> It is the same kind of relief you get with wxWidgets asserts. If there
>> is a window that will keep nagging you because you have done something
>> wonky on purpose, then you have a choice to ignore a warning dialog
>> instead of straining your finger. I have added this option to handle
>> warnings about malformed polygons, as without do-not-show-again checkbox
>> you can spend a lot of time closing warnings before you even get a
>> chance to fix polygons.
>
> This is fine but I think users will expect the dialog to be gone forever
> not just the current session.
>
>>
>> Cheers,
>> Orson
>>
>>> Cheers,
>>>
>>> Wayne
--
Jean-Pierre CHARRAS
Follow ups
References