It looks like you're new here. If you want to get involved, click one of these buttons!
Hi Matthias,
I know you have abandoned the xSection module a long time ago, but we have developed it into an encompassing add-in that works well. Obviously, I cannot post the code here (wrote many many many extra things for it), but the output function has a progressbar that shows up after a second or two. In past versions of klayout (< 0.30 ?), it worked well. In the newer versions, we had to comment the .inc out, and as a result, no progress bar is shown. This is because other calls that update the view and layers were somehow not executed while progress bar was active. This manifested itself as saved snapshots that were not zoomed correctly, and had layer properties that were assigned wrong (or not at all, not sure). The only thing that worked in the end is to disable the progressbar. Even if app.process_events is not ever called, the automatic step-by-step saveSnapshot functions produced correct layer properties and view zooms.
I assume you have changed something in the progress bar class. Anything we can do here to make it play nicer with the main thread ?
Thanks
Thomas.
Comments
Hi @tnoradam,
I did not specifically change something in progress bar. But maybe you can check if that only happens if you have the macro IDE open? With the IDE open, a number of events are ignored as that created a crazy interference of macro IDE operation and code as the macro IDE runs in the same event thread as the code you are potentially debugging.
If that does not work, you can try issuing explicit calls to "Application#process_events". BTW: the progress object has a "yield_interval" constructor argument that controls how often it will call "process_events" and thus keeping the application alive. You can try setting this argument to 0, which basically means "on every call of inc()".
Matthias