Qt 4.8
|
#include <qbackingstore_p.h>
Public Functions | |
void | flush (QWidget *widget=0, QWindowSurface *surface=0) |
Flushes the contents of the backing store into the top-level widget. More... | |
bool | isDirty () const |
void | markDirty (const QRegion &rgn, QWidget *widget, bool updateImmediately=false, bool invalidateBuffer=false) |
Marks the region of the widget as dirty (if not already marked as dirty) and posts an UpdateRequest event to the top-level widget (if not already posted). More... | |
void | markDirty (const QRect &rect, QWidget *widget, bool updateImmediately=false, bool invalidateBuffer=false) |
This function is equivalent to calling markDirty(QRegion(rect), ...), but is more efficient as it eliminates QRegion operations/allocations and can use the rect more precisely for additional cut-offs. More... | |
QWidgetBackingStore (QWidget *t) | |
QWindowSurface * | surface () const |
void | sync (QWidget *exposedWidget, const QRegion &exposedRegion) |
Synchronizes the exposedRegion of the exposedWidget with the backing store. More... | |
void | sync () |
Synchronizes the backing store, i.e. More... | |
QPoint | topLevelOffset () const |
~QWidgetBackingStore () | |
Static Public Functions | |
static void | showYellowThing (QWidget *widget, const QRegion &rgn, int msec, bool) |
Private Functions | |
void | addDirtyWidget (QWidget *widget, const QRegion &rgn) |
void | addStaticWidget (QWidget *widget) |
void | appendDirtyOnScreenWidget (QWidget *widget) |
void | beginPaint (QRegion &toClean, QWidget *widget, QWindowSurface *windowSurface, BeginPaintInfo *returnInfo, bool toCleanIsInTopLevelCoordinates=true) |
Prepares the window surface to paint a\ toClean region of the widget and updates the BeginPaintInfo struct accordingly. More... | |
bool | bltRect (const QRect &rect, int dx, int dy, QWidget *widget) |
void | dirtyOnScreenWidgetsRemoveAll (QWidget *widget) |
QRegion | dirtyRegion (QWidget *widget=0) const |
Returns the region (in top-level coordinates) that needs repaint and/or flush. More... | |
void | dirtyWidgetsRemoveAll (QWidget *widget) |
void | endPaint (const QRegion &cleaned, QWindowSurface *windowSurface, BeginPaintInfo *beginPaintInfo) |
bool | hasStaticContents () const |
void | markDirtyOnScreen (const QRegion &dirtyOnScreen, QWidget *widget, const QPoint &topLevelOffset) |
Marks the region of the widget as dirty on screen. More... | |
void | moveStaticWidgets (QWidget *reparented) |
void | releaseBuffer () |
void | removeDirtyWidget (QWidget *w) |
void | removeStaticWidget (QWidget *widget) |
void | resetWidget (QWidget *widget) |
QRegion | staticContents (QWidget *widget=0, const QRect &withinClipRect=QRect()) const |
Returns the static content inside the parent if non-zero; otherwise the static content for the entire backing store is returned. More... | |
QRect | topLevelRect () const |
void | updateLists (QWidget *widget) |
void | updateStaticContentsSize () |
Static Private Functions | |
static bool | flushPaint (QWidget *widget, const QRegion &rgn) |
static void | unflushPaint (QWidget *widget, const QRegion &rgn) |
Properties | |
QRegion | dirty |
QRegion | dirtyFromPreviousSync |
QRegion | dirtyOnScreen |
QVector< QWidget * > * | dirtyOnScreenWidgets |
QVector< QWidget * > | dirtyWidgets |
uint | fullUpdatePending: 1 |
uint | hasDirtyFromPreviousSync: 1 |
QList< QWidget * > | staticWidgets |
QWidget * | tlw |
QPoint | tlwOffset |
QWindowSurface * | windowSurface |
Friends | |
class | QETWidget |
QRegion | qt_dirtyRegion (QWidget *) |
class | QWidget |
class | QWidgetPrivate |
class | QWindowSurface |
class | QWSManagerPrivate |
class | QWSWindowSurface |
Definition at line 75 of file qbackingstore_p.h.
QWidgetBackingStore::QWidgetBackingStore | ( | QWidget * | t | ) |
Definition at line 884 of file qbackingstore.cpp.
QWidgetBackingStore::~QWidgetBackingStore | ( | ) |
Definition at line 903 of file qbackingstore.cpp.
Definition at line 147 of file qbackingstore_p.h.
Referenced by markDirty().
|
inlineprivate |
Definition at line 173 of file qbackingstore_p.h.
Referenced by moveStaticWidgets(), and updateLists().
|
inlineprivate |
Definition at line 217 of file qbackingstore_p.h.
Referenced by markDirtyOnScreen().
|
private |
Prepares the window surface to paint a\ toClean region of the widget and updates the BeginPaintInfo struct accordingly.
The toClean region might be clipped by the window surface.
Definition at line 306 of file qbackingstore.cpp.
Referenced by sync().
Definition at line 277 of file qbackingstore.cpp.
Referenced by QWidgetPrivate::moveRect(), and QWidgetPrivate::scrollRect().
|
inlineprivate |
Definition at line 230 of file qbackingstore_p.h.
Referenced by removeDirtyWidget().
Returns the region (in top-level coordinates) that needs repaint and/or flush.
If the widget is non-zero, only the dirty region for the widget is returned and the region will be in widget coordinates.
Definition at line 419 of file qbackingstore.cpp.
Referenced by qt_dirtyRegion().
|
inlineprivate |
Definition at line 162 of file qbackingstore_p.h.
Referenced by removeDirtyWidget().
|
private |
Definition at line 393 of file qbackingstore.cpp.
Referenced by sync().
void QWidgetBackingStore::flush | ( | QWidget * | widget = 0 , |
QWindowSurface * | surface = 0 |
||
) |
Flushes the contents of the backing store into the top-level widget.
If the widget is non-zero, the content is flushed to the widget. If the surface is non-zero, the content of the surface is flushed.
Definition at line 1425 of file qbackingstore.cpp.
Referenced by beginPaint(), endPaint(), and sync().
Definition at line 236 of file qbackingstore.cpp.
Referenced by beginPaint(), QWidgetPrivate::drawWidget(), and QWidgetPrivate::repaint_sys().
|
inlineprivate |
Definition at line 264 of file qbackingstore_p.h.
Referenced by qt_grab_cursor(), sync(), and QETWidget::translateConfigEvent().
|
inline |
Definition at line 91 of file qbackingstore_p.h.
Referenced by sync().
void QWidgetBackingStore::markDirty | ( | const QRegion & | rgn, |
QWidget * | widget, | ||
bool | updateImmediately = false , |
||
bool | invalidateBuffer = false |
||
) |
Marks the region of the widget as dirty (if not already marked as dirty) and posts an UpdateRequest event to the top-level widget (if not already posted).
If updateImmediately is true, the event is sent immediately instead of posted.
If invalidateBuffer is true, all widgets intersecting with the region will be dirty.
If the widget paints directly on screen, the event is sent to the widget instead of the top-level widget, and invalidateBuffer is completely ignored.
Definition at line 553 of file qbackingstore.cpp.
Referenced by QETWidget::forceUpdate(), QWidgetPrivate::invalidateBuffer(), QWidgetPrivate::moveRect(), QWidget::repaint(), QWidgetPrivate::scrollRect(), and QWidget::update().
void QWidgetBackingStore::markDirty | ( | const QRect & | rect, |
QWidget * | widget, | ||
bool | updateImmediately = false , |
||
bool | invalidateBuffer = false |
||
) |
This function is equivalent to calling markDirty(QRegion(rect), ...), but is more efficient as it eliminates QRegion operations/allocations and can use the rect more precisely for additional cut-offs.
Definition at line 648 of file qbackingstore.cpp.
|
private |
Marks the region of the widget as dirty on screen.
The region will be copied from the backing store to the widget's native parent next time flush() is called.
Paint on screen widgets are ignored.
Definition at line 731 of file qbackingstore.cpp.
Referenced by QWidgetPrivate::drawWidget(), QWidgetPrivate::moveRect(), removeDirtyWidget(), QWidgetPrivate::scrollRect(), and sync().
|
inlineprivate |
Definition at line 188 of file qbackingstore_p.h.
|
private |
Definition at line 286 of file qbackingstore.cpp.
Referenced by isServerProcess().
|
private |
Definition at line 776 of file qbackingstore.cpp.
Referenced by QWidget::setParent().
|
inlineprivate |
Definition at line 183 of file qbackingstore_p.h.
|
inlineprivate |
Definition at line 244 of file qbackingstore_p.h.
Referenced by removeDirtyWidget(), sync(), and ~QWidgetBackingStore().
|
static |
Definition at line 158 of file qbackingstore.cpp.
Referenced by flushPaint(), and qt_flush().
|
private |
Returns the static content inside the parent if non-zero; otherwise the static content for the entire backing store is returned.
The content will be clipped to withinClipRect if non-empty.
Definition at line 475 of file qbackingstore.cpp.
Referenced by QWidgetPrivate::invalidateBuffer_resizeHelper(), and sync().
|
inline |
Definition at line 89 of file qbackingstore_p.h.
Referenced by beginPaint(), flush(), QWidgetPrivate::moveRect(), QWidgetPrivate::scrollRect(), and showYellowThing().
Synchronizes the exposedRegion of the exposedWidget with the backing store.
If there's nothing to repaint, the area is flushed and painting does not occur; otherwise the area is marked as dirty on screen and will be flushed right after we are done with all painting.
Definition at line 1135 of file qbackingstore.cpp.
void QWidgetBackingStore::sync | ( | ) |
Synchronizes the backing store, i.e.
dirty areas are repainted and flushed.
Definition at line 1167 of file qbackingstore.cpp.
Referenced by sync().
|
inline |
Definition at line 87 of file qbackingstore_p.h.
|
inlineprivate |
Definition at line 208 of file qbackingstore_p.h.
Referenced by beginPaint(), dirtyRegion(), and sync().
Definition at line 258 of file qbackingstore.cpp.
Referenced by QWidgetPrivate::drawWidget(), endPaint(), and QWidgetPrivate::repaint_sys().
|
private |
Definition at line 860 of file qbackingstore.cpp.
Referenced by QWidgetBackingStore().
|
inlineprivate |
Definition at line 254 of file qbackingstore_p.h.
Referenced by sync().
Definition at line 271 of file qbackingstore_p.h.
Definition at line 1111 of file qwidget.cpp.
Definition at line 269 of file qbackingstore_p.h.
|
friend |
Definition at line 268 of file qbackingstore_p.h.
|
friend |
Definition at line 272 of file qbackingstore_p.h.
|
friend |
Definition at line 270 of file qbackingstore_p.h.
Referenced by removeDirtyWidget().
|
friend |
Definition at line 273 of file qbackingstore_p.h.
|
private |
Definition at line 110 of file qbackingstore_p.h.
Referenced by bltRect(), dirtyRegion(), QWidgetPrivate::invalidateBuffer_resizeHelper(), markDirty(), QWidgetPrivate::scrollRect(), and sync().
|
private |
Definition at line 111 of file qbackingstore_p.h.
Referenced by beginPaint(), and sync().
|
private |
Definition at line 109 of file qbackingstore_p.h.
Referenced by beginPaint(), dirtyRegion(), flush(), and markDirtyOnScreen().
Definition at line 113 of file qbackingstore_p.h.
Referenced by dirtyRegion(), flush(), and ~QWidgetBackingStore().
Definition at line 112 of file qbackingstore_p.h.
Referenced by dirtyRegion(), markDirty(), sync(), and ~QWidgetBackingStore().
|
private |
Definition at line 120 of file qbackingstore_p.h.
Referenced by bltRect(), dirtyRegion(), markDirty(), and sync().
|
private |
Definition at line 119 of file qbackingstore_p.h.
Referenced by beginPaint(), and sync().
Definition at line 114 of file qbackingstore_p.h.
Referenced by staticContents().
|
private |
Definition at line 108 of file qbackingstore_p.h.
Referenced by beginPaint(), bltRect(), dirtyRegion(), endPaint(), flush(), markDirty(), markDirtyOnScreen(), QWidgetPrivate::moveRect(), QWidgetBackingStore(), removeDirtyWidget(), QWidgetPrivate::scrollRect(), staticContents(), sync(), unflushPaint(), and updateLists().
|
private |
Definition at line 122 of file qbackingstore_p.h.
Referenced by beginPaint(), bltRect(), flush(), removeDirtyWidget(), and sync().
|
private |
Definition at line 115 of file qbackingstore_p.h.
Referenced by beginPaint(), bltRect(), dirtyRegion(), effectiveState(), flush(), isServerProcess(), markDirty(), QWidgetBackingStore(), releaseBuffer(), removeDirtyWidget(), QWidgetPrivate::scrollRect(), QWidget::setWindowSurface(), staticContents(), sync(), unflushPaint(), QWidget::windowSurface(), and ~QWidgetBackingStore().