Well, there is a bit of misunderstanding =)<br><br>I don&#39;t want to feed filters with chunks of bytes. =) I just want to ask a datamanager to tell me where the holes in selections are. It will look like:<br><br>QVector&lt;QRect&gt; rects = selection-&gt;getNonemptyRects();<br>
applyFilterToRects(rects);<br><br><br>Where KisSelection::getNonemptyRects() is like:<br><br>QVector&lt;QRect&gt; KisSelection::getNonemptyRects() <br>{<br>    return m_paintDevice-&gt;datamanager()-&gt;getNonemptyRects();<br>
}<br><br>QVector&lt;QRect&gt; KisTiledDataManager::getNonemptyRects() <br>{<br>
QVector&lt;QRect&gt; vector;<br>    foreach(tile) {<br>
        vector.append(tile.extent());<br>    }<br>return vector;<br>
}<br><br clear="all"><br>-- <br>Dmitry Kazakov<br>