void QShMemViewProtocol::flushChanges() { QRect r; if (hdr->dirty) { DisplayLock(); hdr->dirty = false; r = hdr->update; hdr->update = QRect(); if (hdr->windowId != windowId) { windowId = hdr->windowId; emit displayEmbedRequested(hdr->windowId); } else if (!hdr->windowId) { // copy the memory area, for now, be inefficient. memcpy(dataCache, ((char *)hdr) + hdr->dataoffset, displaySize); } } emit displayDataChanged(r); }
void QMMapViewProtocol::flushChanges() { // based of dirty rect, copy changes from hdr to hdrcopy memcpy(dataCache, ((char *)hdr) + hdr->dataoffset, displaySize); emit displayDataChanged(QRect(0, 0, width(), height())); }