https://issues.qgis.org/https://issues.qgis.org/favicon.ico2014-01-05T01:55:10ZQGIS Issue TrackingQGIS Application - Bug report #9268: Attribute table not updating automaticallyhttps://issues.qgis.org/issues/9268?journal_id=472322014-01-05T01:55:10ZMatthias Kuhn
<ul></ul><p>I am a bit puzzled about this issue.</p>
<p>It would be an easy fix (remove the blockSignals calls on lines 192 and 194 in qgsfieldcalculator.cpp) but then, the call to mVectorLayer->changeAttributeValue specifies the parameter <code>false</code> for emitSignal, and therefore tries to actively suppress the communication channel to the attribute table. There would be two reasons for this</p>
<ul>
<li>mActiveIterator got closed (see <a class="issue tracker-1 status-5 priority-10 priority- closed" href="https://issues.qgis.org/issues/7071" title="Field calculator regression - does not update all features (Closed)">#7071</a>) but this issue is no longer existent as we now are able to have multiple iterators open</li>
<li>Performance issues (A signal being emitted for every feature on the layer, possibly heavy operation)? If this is the case, maybe there are better ways to deal with this.</li>
</ul>
<p>My opinion would be, that the emitSignal parameter (which does not work anyway) needs to be removed and signals should not be blocked, as this prevents proper reactions to attribute changes. If there are performance issues (which I didn't read of, so I have no proof for these) we have to find another solution.</p>
<p>Opinions?</p> QGIS Application - Bug report #9268: Attribute table not updating automaticallyhttps://issues.qgis.org/issues/9268?journal_id=472742014-01-07T03:09:21ZMatthias Kuhn
<ul><li><strong>Status</strong> changed from <i>Open</i> to <i>Closed</i></li></ul><p>Fixed in changeset <a class="changeset" href="https://issues.qgis.org/projects/qgis/repository/revisions/5c38775be47e683798b587f0382ca9cd81442565" title="Always emit signal when attribute values change Fix #9268 * Remove QgsVectorLayer::blockSignal...">5c38775be47e683798b587f0382ca9cd81442565</a>.</p>