activityfw/testapplications/activitytestfigure/circlewidget.cpp
author Jaakko Haukipuro (Nokia-MS/Oulu) <Jaakko.Haukipuro@nokia.com>
Thu, 16 Sep 2010 12:11:40 +0100
changeset 117 c63ee96dbe5f
permissions -rw-r--r--
Missing activityfw and taskswitcher components - fix for Bug 3670

/*
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description:
*
*/
#include "circlewidget.h"
#include <QRect>
#include <QPainter>
#include <QPainterPath>
#include <QPolygon>


circlewidget::circlewidget(QGraphicsItem *parent)
    : figurewidget(parent)
{
    mGridLayout->addItem(mTriangle, 2, 0, 1, 1);
    mGridLayout->addItem(mSqure, 2, 1, 1, 1);

    mColor = "blue";
    
    delete mCircle;
    mCircle = NULL;
}

circlewidget::~circlewidget()
{
}

void circlewidget::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
{
    QRect rect(10, 10, 300, 300);
    QPainterPath painterpath;
    painterpath.addEllipse(rect);
    painterpath.setFillRule(Qt::WindingFill);

    painter->setPen(Qt::black);
    if (mColor == "red") {
        painter->setBrush(Qt::red);
    } else if (mColor == "green") {
        painter->setBrush(Qt::green);
    } else if (mColor == "blue") {
        painter->setBrush(Qt::blue);
    } else {
        Q_ASSERT(false);
    }
    painter->drawPath(painterpath);
    
    figurewidget::paint(painter, option, widget);
}