Ignore:
Timestamp:
May 5, 2011, 5:36:53 AM (14 years ago)
Author:
Dmitry A. Kuminov
Message:

trunk: Merged in qt 4.7.2 sources from branches/vendor/nokia/qt.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/src/gui/painting/qwindowsurface.cpp

    r651 r846  
    11/****************************************************************************
    22**
    3 ** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
     3** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
    44** All rights reserved.
    55** Contact: Nokia Corporation (qt-info@nokia.com)
     
    4444#include <private/qwidget_p.h>
    4545#include <private/qbackingstore_p.h>
     46#include <private/qapplication_p.h>
    4647
    4748QT_BEGIN_NAMESPACE
     
    5051{
    5152public:
    52     QWindowSurfacePrivate(QWidget *w) : window(w), staticContentsSupport(false) {}
     53    QWindowSurfacePrivate(QWidget *w)
     54        : window(w)
     55        , staticContentsSupport(0)
     56        , partialUpdateSupport(1)
     57    {
     58    }
    5359
    5460    QWidget *window;
     
    5662    QRegion staticContents;
    5763    QList<QImage*> bufferImages;
    58     bool staticContentsSupport;
     64    uint staticContentsSupport : 1;
     65    uint partialUpdateSupport : 1;
    5966};
    6067
     
    111118    : d_ptr(new QWindowSurfacePrivate(window))
    112119{
    113     if (window)
    114         window->setWindowSurface(this);
     120    if (!QApplicationPrivate::runtime_graphics_system) {
     121        if(window)
     122            window->setWindowSurface(this);
     123    }
    115124}
    116125
     
    285294void QWindowSurface::setStaticContentsSupport(bool enable)
    286295{
     296    if (enable && !d_ptr->partialUpdateSupport) {
     297        qWarning("QWindowSurface::setStaticContentsSupport: static contents support requires partial update support");
     298        return;
     299    }
    287300    d_ptr->staticContentsSupport = enable;
    288301}
     
    301314{
    302315    return d_ptr->staticContentsSupport && !d_ptr->staticContents.isEmpty();
     316}
     317
     318bool QWindowSurface::hasPartialUpdateSupport() const
     319{
     320    return d_ptr->partialUpdateSupport;
     321}
     322
     323void QWindowSurface::setPartialUpdateSupport(bool enable)
     324{
     325    if (!enable && d_ptr->staticContentsSupport) {
     326        qWarning("QWindowSurface::setPartialUpdateSupport: static contents support requires partial update support");
     327        return;
     328    }
     329    d_ptr->partialUpdateSupport = enable;
    303330}
    304331
Note: See TracChangeset for help on using the changeset viewer.