<div dir="auto"><div>Hi Peter<div dir="auto"><br></div><div dir="auto">In addition to Matthias' advice perhaps try using QNetworkAccessManager[1] and related classes in order to deal with your http requests asynchronously. This should fix the UI blocking issues.</div><div dir="auto"><br></div><div dir="auto">Best regards</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">[1] - <a href="http://pyqt.sourceforge.net/Docs/PyQt4/qnetworkaccessmanager.html#details">http://pyqt.sourceforge.net/Docs/PyQt4/qnetworkaccessmanager.html#details</a></div><br><div class="gmail_extra"><br><div class="gmail_quote">Em 05/10/2017 15:18, "Matthias Kuhn" <<a href="mailto:matthias@opengis.ch">matthias@opengis.ch</a>> escreveu:<br type="attribution"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Peter,<br>
<br>
Have a look at this answer here, which explains how you can trigger the same behavior without using the print and relying on side-effects of the console open.<br>
<br>
It also outlines the risks involved in using this kind of approach.<br>
<br>
<a href="https://gis.stackexchange.com/a/257016" rel="noreferrer" target="_blank">https://gis.stackexchange.com/<wbr>a/257016</a><br>
<br>
Cheers<font color="#888888"><br>
Matthias</font><div class="elided-text"><br>
<br>
On 10/05/2017 03:25 PM, Peter Devoy wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Just a little update; it is the fact I am using print() to output<br>
debug information upon each request which is allowing the UI to<br>
repaint.  Also, it seems that opening and closing the Python console<br>
once is enough.<br>
<br>
Peter<br>
<br>
3XE<br>
P: 01326 567155<br>
M: 07770 693662<br>
A: 3XE Ltd<br>
Tremough Innovation Centre<br>
PENRYN<br>
TR10 9TA<br>
3XE Ltd · Registered in England and Wales · 9356871<br>
<br>
<br>
On 4 October 2017 at 20:53, Peter Devoy <<a href="mailto:peter@3xe.co.uk" target="_blank">peter@3xe.co.uk</a>> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi all<br>
<br>
In my plugin I have extended QAbstractListModel to create a list of<br>
objects; each object in the list has a 'url' property containing the<br>
URL of an API resource.  When the user selects a feature in main QGIS<br>
interface, each object in the list makes a HTTP request to its URL and<br>
updates its properties from the response data.<br>
<br>
Changes in the objects' properties are reflected in a QListView.  E.g.<br>
a  property 'status'  is set to 'WARN' if the HTTP request fails --<br>
this is reflected in the QListView by the respective list item's icon<br>
turning yellow.<br>
<br>
If I have the Python console open in QGIS the QListView items update<br>
as the ListModel's objects update. However, if the Python console is<br>
not open, the plugin's UI thread appears to be blocked until each item<br>
in the list has completed its changes and all the items update at<br>
once; please can anyone recommend a way to avoid this?<br>
<br>
I have been developing on QGIS 2.1X.<br>
<br>
Kind regards<br>
<br>
<br>
Peter<br>
</blockquote>
______________________________<wbr>_________________<br>
QGIS-Developer mailing list<br>
<a href="mailto:QGIS-Developer@lists.osgeo.org" target="_blank">QGIS-Developer@lists.osgeo.org</a><br>
List info: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailma<wbr>n/listinfo/qgis-developer</a><br>
Unsubscribe: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailma<wbr>n/listinfo/qgis-developer</a><br>
<br>
</blockquote>
<br>
______________________________<wbr>_________________<br>
QGIS-Developer mailing list<br>
<a href="mailto:QGIS-Developer@lists.osgeo.org" target="_blank">QGIS-Developer@lists.osgeo.org</a><br>
List info: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailma<wbr>n/listinfo/qgis-developer</a><br>
Unsubscribe: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailma<wbr>n/listinfo/qgis-developer</a></div></blockquote></div><br></div></div></div>