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/examples/qws/svgalib/svgalibpaintengine.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)
     
    77** This file is part of the examples of the Qt Toolkit.
    88**
    9 ** $QT_BEGIN_LICENSE:LGPL$
    10 ** Commercial Usage
    11 ** Licensees holding valid Qt Commercial licenses may use this file in
    12 ** accordance with the Qt Commercial License Agreement provided with the
    13 ** Software or, alternatively, in accordance with the terms contained in
    14 ** a written agreement between you and Nokia.
     9** $QT_BEGIN_LICENSE:BSD$
     10** You may use this file under the terms of the BSD license as follows:
    1511**
    16 ** GNU Lesser General Public License Usage
    17 ** Alternatively, this file may be used under the terms of the GNU Lesser
    18 ** General Public License version 2.1 as published by the Free Software
    19 ** Foundation and appearing in the file LICENSE.LGPL included in the
    20 ** packaging of this file.  Please review the following information to
    21 ** ensure the GNU Lesser General Public License version 2.1 requirements
    22 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
     12** "Redistribution and use in source and binary forms, with or without
     13** modification, are permitted provided that the following conditions are
     14** met:
     15**   * Redistributions of source code must retain the above copyright
     16**     notice, this list of conditions and the following disclaimer.
     17**   * Redistributions in binary form must reproduce the above copyright
     18**     notice, this list of conditions and the following disclaimer in
     19**     the documentation and/or other materials provided with the
     20**     distribution.
     21**   * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
     22**     the names of its contributors may be used to endorse or promote
     23**     products derived from this software without specific prior written
     24**     permission.
    2325**
    24 ** In addition, as a special exception, Nokia gives you certain additional
    25 ** rights.  These rights are described in the Nokia Qt LGPL Exception
    26 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
    27 **
    28 ** GNU General Public License Usage
    29 ** Alternatively, this file may be used under the terms of the GNU
    30 ** General Public License version 3.0 as published by the Free Software
    31 ** Foundation and appearing in the file LICENSE.GPL included in the
    32 ** packaging of this file.  Please review the following information to
    33 ** ensure the GNU General Public License version 3.0 requirements will be
    34 ** met: http://www.gnu.org/copyleft/gpl.html.
    35 **
    36 ** If you have questions regarding the use of this file, please contact
    37 ** Nokia at qt-info@nokia.com.
     26** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
     27** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
     28** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
     29** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
     30** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
     31** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
     32** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
     33** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     34** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     35** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
     36** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
    3837** $QT_END_LICENSE$
    3938**
     
    4645#include <vgagl.h>
    4746
    48 SvgalibPaintEngine::SvgalibPaintEngine()
     47SvgalibPaintEngine::SvgalibPaintEngine(QPaintDevice *device)
     48    : QRasterPaintEngine(device)
    4949{
    5050}
     
    6262    brush = Qt::NoBrush;
    6363    simpleBrush = true;
    64     matrix = QMatrix();
     64    matrix = QTransform();
    6565    simpleMatrix = true;
    6666    setClip(QRect(0, 0, device->width(), device->height()));
     
    8282
    8383//! [2]
    84 void SvgalibPaintEngine::updateState(const QPaintEngineState &state)
     84void SvgalibPaintEngine::updateState()
    8585{
    86     QPaintEngine::DirtyFlags flags = state.state();
     86    QRasterPaintEngineState *s = state();
    8787
    88     if (flags & DirtyTransform) {
    89         matrix = state.matrix();
     88    if (s->dirty & DirtyTransform) {
     89        matrix = s->matrix;
    9090        simpleMatrix = (matrix.m12() == 0 && matrix.m21() == 0);
    9191    }
    9292
    93     if (flags & DirtyPen) {
    94         pen = state.pen();
     93    if (s->dirty & DirtyPen) {
     94        pen = s->pen;
    9595        simplePen = (pen.width() == 0 || pen.widthF() <= 1)
    9696                    && (pen.style() == Qt::NoPen || pen.style() == Qt::SolidLine)
     
    9898    }
    9999
    100     if (flags & DirtyBrush) {
    101         brush = state.brush();
     100    if (s->dirty & DirtyBrush) {
     101        brush = s->brush;
    102102        simpleBrush = (brush.style() == Qt::SolidPattern
    103103                       || brush.style() == Qt::NoBrush)
     
    105105    }
    106106
    107     if (flags & DirtyClipRegion)
    108         setClip(state.clipRegion());
     107    if (s->dirty & DirtyClipRegion)
     108        setClip(s->clipRegion);
    109109
    110     if (flags & DirtyClipEnabled) {
    111         clipEnabled = state.isClipEnabled();
     110    if (s->dirty & DirtyClipEnabled) {
     111        clipEnabled = s->isClipEnabled();
    112112        updateClip();
    113113    }
    114114
    115     if (flags & DirtyClipPath) {
     115    if (s->dirty & DirtyClipPath) {
    116116        setClip(QRegion());
    117117        simpleClip = false;
    118118    }
    119119
    120     if (flags & DirtyCompositionMode) {
    121         const QPainter::CompositionMode m = state.compositionMode();
     120    if (s->dirty & DirtyCompositionMode) {
     121        const QPainter::CompositionMode m = s->composition_mode;
    122122        sourceOver = (m == QPainter::CompositionMode_SourceOver);
    123123    }
    124124
    125     if (flags & DirtyOpacity)
    126         opaque = (state.opacity() == 256);
     125    if (s->dirty & DirtyOpacity)
     126        opaque = (s->opacity == 256);
    127127
    128     if (flags & DirtyHints)
    129         aliased = !(state.renderHints() & QPainter::Antialiasing);
    130 
    131     QRasterPaintEngine::updateState(state);
     128    if (s->dirty & DirtyHints)
     129        aliased = !(s->flags.antialiased);
    132130}
    133131//! [2]
Note: See TracChangeset for help on using the changeset viewer.