← Back to team overview

kicad-developers team mailing list archive

Re: [PATCH] DRC: do not close and reopen progress dialog

 

On Wed, Aug 17, 2016 at 01:44:40PM +0200, jp charras wrote:
> Le 17/08/2016 à 13:39, Chris Pavlina a écrit :
> > On Aug 17, 2016 06:47, "jp charras" <jp.charras@xxxxxxxxxx <mailto:jp.charras@xxxxxxxxxx>> wrote:
> >>
> >> Le 12/08/2016 à 15:18, Chris Pavlina a écrit :
> >> > Gah, it works here. There's always some system-specific issue with wx,
> >> > isn't there.
> >> >
> >> > Okay, don't merge, I'll test this on all the platforms.
> >> >
> >> > On Fri, Aug 12, 2016 at 02:45:37PM +0200, jp charras wrote:
> >> >> Le 12/08/2016 à 02:32, Chris Pavlina a écrit :
> >> >>> I'm running into an extremely irritating UI bug with DRC on this big
> >> >>> board - halfway through DRC, the progress dialog is torn down and
> >> >>> reopened. DRC is taking two full minutes with this board, which means I
> >> >>> invariably do something else while it runs - and when it pops up the
> >> >>> second progress dialog, that dialog receives any spacebar key press I
> >> >>> may have been making whilst typing, cancelling DRC. I did it three times
> >> >>> in a row earlier today. I wanted to throw my workstation out the window.
> >> >>>
> >> >>> This patch fixes that. The DRC task creates a single progress bar dialog
> >> >>> and hands it to anything that needs it, keeping it open until the end.--
> >> >>
> >> >> Patch tested on W7 32 bits:
> >> >> The progress dialog is shown during track tests, but not during zone filling.
> >> >>
> >> >>
> >> >> Jean-Pierre CHARRAS
> >>
> >> Hi Chris,
> >>
> >> What is the status of your patch ?
> > 
> > Nearly forgotten. So much other work to do...
> > 
> >>
> >> On W7, 32 bits, adding
> >> progressDialog->Show();
> >> in zones_by_polygon_fill_functions.cpp, line 154 fixes this problem.
> >>
> >> This is not surprising, the progress dialog has the attribute wxPD_AUTO_HIDE, which is usual and
> >> correct.
> >> Therefore it is no more shown (but not destroyed) after the first time the max count is reached.
> > 
> > Thanks for the pointer, I'll have a look. Perhaps it would be better to remove that attribute.
> 
> No. I tried. It does not work.
> The DRC calculation is stopped when the max count is reached,
> and you have to close the dialog to continue.
> Not usable.

Sounds to me like if you insert ->Show() like you're suggesting, the
effective behavior goes back to what it was before, no? Dialog is
hidden, then reopened? That defeats the entire purpose.

Might have to look into this a bit more.

> 
> > 
> >>
> >> --
> >> Jean-Pierre CHARRAS
> > 
> 
> 
> -- 
> Jean-Pierre CHARRAS


Follow ups

References