summaryrefslogtreecommitdiffstats
path: root/demos/chip
diff options
context:
space:
mode:
authorCasper van Donderen <casper.vandonderen@nokia.com>2011-06-22 13:54:56 +0200
committerQt by Nokia <qt-info@nokia.com>2011-06-24 16:47:24 +0200
commite0d5221957bf0d7857f924f1f2ae63d490de0a0a (patch)
tree580dfcaf67d95c18c3fb548b0ffa6f79f1cd60a7 /demos/chip
parentd7c37d9bacc016b1156e15780080cfc8c24f6e6a (diff)
Move all other demos in qtbase to examples.
Change-Id: Iab0e7364d1f6b348d0e3033ea9304139f5bd6d0d Reviewed-on: http://codereview.qt.nokia.com/617 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: David Boddie
Diffstat (limited to 'demos/chip')
-rw-r--r--demos/chip/chip.cpp183
-rw-r--r--demos/chip/chip.h68
-rw-r--r--demos/chip/chip.pro20
-rw-r--r--demos/chip/fileprint.pngbin1456 -> 0 bytes
-rw-r--r--demos/chip/images.qrc10
-rw-r--r--demos/chip/main.cpp57
-rw-r--r--demos/chip/mainwindow.cpp109
-rw-r--r--demos/chip/mainwindow.h68
-rw-r--r--demos/chip/qt4logo.pngbin48333 -> 0 bytes
-rw-r--r--demos/chip/rotateleft.pngbin1754 -> 0 bytes
-rw-r--r--demos/chip/rotateright.pngbin1732 -> 0 bytes
-rw-r--r--demos/chip/view.cpp276
-rw-r--r--demos/chip/view.h104
-rw-r--r--demos/chip/zoomin.pngbin1622 -> 0 bytes
-rw-r--r--demos/chip/zoomout.pngbin1601 -> 0 bytes
15 files changed, 0 insertions, 895 deletions
diff --git a/demos/chip/chip.cpp b/demos/chip/chip.cpp
deleted file mode 100644
index 21b63bae2c..0000000000
--- a/demos/chip/chip.cpp
+++ /dev/null
@@ -1,183 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the demonstration applications of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** GNU Lesser General Public License Usage
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this
-** file. Please review the following information to ensure the GNU Lesser
-** General Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License version 3.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of this
-** file. Please review the following information to ensure the GNU General
-** Public License version 3.0 requirements will be met:
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** Other Usage
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "chip.h"
-
-#include <QtGui>
-
-Chip::Chip(const QColor &color, int x, int y)
-{
- this->x = x;
- this->y = y;
- this->color = color;
- setZValue((x + y) % 2);
-
- setFlags(ItemIsSelectable | ItemIsMovable);
- setAcceptsHoverEvents(true);
-}
-
-QRectF Chip::boundingRect() const
-{
- return QRectF(0, 0, 110, 70);
-}
-
-QPainterPath Chip::shape() const
-{
- QPainterPath path;
- path.addRect(14, 14, 82, 42);
- return path;
-}
-
-void Chip::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
-{
- Q_UNUSED(widget);
-
- QColor fillColor = (option->state & QStyle::State_Selected) ? color.dark(150) : color;
- if (option->state & QStyle::State_MouseOver)
- fillColor = fillColor.light(125);
-
- const qreal lod = option->levelOfDetailFromTransform(painter->worldTransform());
- if (lod < 0.2) {
- if (lod < 0.125) {
- painter->fillRect(QRectF(0, 0, 110, 70), fillColor);
- return;
- }
-
- QBrush b = painter->brush();
- painter->setBrush(fillColor);
- painter->drawRect(13, 13, 97, 57);
- painter->setBrush(b);
- return;
- }
-
- QPen oldPen = painter->pen();
- QPen pen = oldPen;
- int width = 0;
- if (option->state & QStyle::State_Selected)
- width += 2;
-
- pen.setWidth(width);
- QBrush b = painter->brush();
- painter->setBrush(QBrush(fillColor.dark(option->state & QStyle::State_Sunken ? 120 : 100)));
-
- painter->drawRect(QRect(14, 14, 79, 39));
- painter->setBrush(b);
-
- if (lod >= 1) {
- painter->setPen(QPen(Qt::gray, 1));
- painter->drawLine(15, 54, 94, 54);
- painter->drawLine(94, 53, 94, 15);
- painter->setPen(QPen(Qt::black, 0));
- }
-
- // Draw text
- if (lod >= 2) {
- QFont font("Times", 10);
- font.setStyleStrategy(QFont::ForceOutline);
- painter->setFont(font);
- painter->save();
- painter->scale(0.1, 0.1);
- painter->drawText(170, 180, QString("Model: VSC-2000 (Very Small Chip) at %1x%2").arg(x).arg(y));
- painter->drawText(170, 200, QString("Serial number: DLWR-WEER-123L-ZZ33-SDSJ"));
- painter->drawText(170, 220, QString("Manufacturer: Chip Manufacturer"));
- painter->restore();
- }
-
- // Draw lines
- QVarLengthArray<QLineF, 36> lines;
- if (lod >= 0.5) {
- for (int i = 0; i <= 10; i += (lod > 0.5 ? 1 : 2)) {
- lines.append(QLineF(18 + 7 * i, 13, 18 + 7 * i, 5));
- lines.append(QLineF(18 + 7 * i, 54, 18 + 7 * i, 62));
- }
- for (int i = 0; i <= 6; i += (lod > 0.5 ? 1 : 2)) {
- lines.append(QLineF(5, 18 + i * 5, 13, 18 + i * 5));
- lines.append(QLineF(94, 18 + i * 5, 102, 18 + i * 5));
- }
- }
- if (lod >= 0.4) {
- const QLineF lineData[] = {
- QLineF(25, 35, 35, 35),
- QLineF(35, 30, 35, 40),
- QLineF(35, 30, 45, 35),
- QLineF(35, 40, 45, 35),
- QLineF(45, 30, 45, 40),
- QLineF(45, 35, 55, 35)
- };
- lines.append(lineData, 6);
- }
- painter->drawLines(lines.data(), lines.size());
-
- // Draw red ink
- if (stuff.size() > 1) {
- QPen p = painter->pen();
- painter->setPen(QPen(Qt::red, 1, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin));
- painter->setBrush(Qt::NoBrush);
- QPainterPath path;
- path.moveTo(stuff.first());
- for (int i = 1; i < stuff.size(); ++i)
- path.lineTo(stuff.at(i));
- painter->drawPath(path);
- painter->setPen(p);
- }
-}
-
-void Chip::mousePressEvent(QGraphicsSceneMouseEvent *event)
-{
- QGraphicsItem::mousePressEvent(event);
- update();
-}
-
-void Chip::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
-{
- if (event->modifiers() & Qt::ShiftModifier) {
- stuff << event->pos();
- update();
- return;
- }
- QGraphicsItem::mouseMoveEvent(event);
-}
-
-void Chip::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
-{
- QGraphicsItem::mouseReleaseEvent(event);
- update();
-}
diff --git a/demos/chip/chip.h b/demos/chip/chip.h
deleted file mode 100644
index ff9f636843..0000000000
--- a/demos/chip/chip.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the demonstration applications of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** GNU Lesser General Public License Usage
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this
-** file. Please review the following information to ensure the GNU Lesser
-** General Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License version 3.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of this
-** file. Please review the following information to ensure the GNU General
-** Public License version 3.0 requirements will be met:
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** Other Usage
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef CHIP_H
-#define CHIP_H
-
-#include <QtGui/QColor>
-#include <QtGui/QGraphicsItem>
-
-class Chip : public QGraphicsItem
-{
-public:
- Chip(const QColor &color, int x, int y);
-
- QRectF boundingRect() const;
- QPainterPath shape() const;
- void paint(QPainter *painter, const QStyleOptionGraphicsItem *item, QWidget *widget);
-
-protected:
- void mousePressEvent(QGraphicsSceneMouseEvent *event);
- void mouseMoveEvent(QGraphicsSceneMouseEvent *event);
- void mouseReleaseEvent(QGraphicsSceneMouseEvent *event);
-
-private:
- int x, y;
- QColor color;
- QList<QPointF> stuff;
-};
-
-#endif
diff --git a/demos/chip/chip.pro b/demos/chip/chip.pro
deleted file mode 100644
index 1e1a7de735..0000000000
--- a/demos/chip/chip.pro
+++ /dev/null
@@ -1,20 +0,0 @@
-RESOURCES += images.qrc
-
-HEADERS += mainwindow.h view.h chip.h
-SOURCES += main.cpp
-SOURCES += mainwindow.cpp view.cpp chip.cpp
-
-contains(QT_CONFIG, opengl):QT += opengl
-
-build_all:!build_pass {
- CONFIG -= build_all
- CONFIG += release
-}
-
-# install
-target.path = $$[QT_INSTALL_DEMOS]/qtbase/chip
-sources.files = $$SOURCES $$HEADERS $$RESOURCES *.png *.pro *.html *.doc images
-sources.path = $$[QT_INSTALL_DEMOS]/qtbase/chip
-INSTALLS += target sources
-
-symbian: CONFIG += qt_demo
diff --git a/demos/chip/fileprint.png b/demos/chip/fileprint.png
deleted file mode 100644
index ba7c02dc18..0000000000
--- a/demos/chip/fileprint.png
+++ /dev/null
Binary files differ
diff --git a/demos/chip/images.qrc b/demos/chip/images.qrc
deleted file mode 100644
index c7cdf0c4c0..0000000000
--- a/demos/chip/images.qrc
+++ /dev/null
@@ -1,10 +0,0 @@
-<!DOCTYPE RCC><RCC version="1.0">
-<qresource>
- <file>qt4logo.png</file>
- <file>zoomin.png</file>
- <file>zoomout.png</file>
- <file>rotateleft.png</file>
- <file>rotateright.png</file>
- <file>fileprint.png</file>
-</qresource>
-</RCC>
diff --git a/demos/chip/main.cpp b/demos/chip/main.cpp
deleted file mode 100644
index e983e4cca6..0000000000
--- a/demos/chip/main.cpp
+++ /dev/null
@@ -1,57 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the demonstration applications of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** GNU Lesser General Public License Usage
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this
-** file. Please review the following information to ensure the GNU Lesser
-** General Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License version 3.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of this
-** file. Please review the following information to ensure the GNU General
-** Public License version 3.0 requirements will be met:
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** Other Usage
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "mainwindow.h"
-
-#include <QApplication>
-
-int main(int argc, char **argv)
-{
- Q_INIT_RESOURCE(images);
-
- QApplication app(argc, argv);
- app.setAttribute(Qt::AA_DontCreateNativeWidgetSiblings);
-
- MainWindow window;
- window.show();
-
- return app.exec();
-}
diff --git a/demos/chip/mainwindow.cpp b/demos/chip/mainwindow.cpp
deleted file mode 100644
index 7476c00ab1..0000000000
--- a/demos/chip/mainwindow.cpp
+++ /dev/null
@@ -1,109 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the demonstration applications of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** GNU Lesser General Public License Usage
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this
-** file. Please review the following information to ensure the GNU Lesser
-** General Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License version 3.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of this
-** file. Please review the following information to ensure the GNU General
-** Public License version 3.0 requirements will be met:
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** Other Usage
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "mainwindow.h"
-#include "view.h"
-#include "chip.h"
-
-#include <QtGui>
-
-MainWindow::MainWindow(QWidget *parent)
- : QWidget(parent)
-{
- populateScene();
-
- h1Splitter = new QSplitter;
- h2Splitter = new QSplitter;
-
- QSplitter *vSplitter = new QSplitter;
- vSplitter->setOrientation(Qt::Vertical);
- vSplitter->addWidget(h1Splitter);
- vSplitter->addWidget(h2Splitter);
-
- View *view = new View("Top left view");
- view->view()->setScene(scene);
- h1Splitter->addWidget(view);
-
- view = new View("Top right view");
- view->view()->setScene(scene);
- h1Splitter->addWidget(view);
-
- view = new View("Bottom left view");
- view->view()->setScene(scene);
- h2Splitter->addWidget(view);
-
- view = new View("Bottom right view");
- view->view()->setScene(scene);
- h2Splitter->addWidget(view);
-
- QHBoxLayout *layout = new QHBoxLayout;
- layout->addWidget(vSplitter);
- setLayout(layout);
-
- setWindowTitle(tr("Chip Demo"));
-}
-
-void MainWindow::populateScene()
-{
- scene = new QGraphicsScene;
-
- QImage image(":/qt4logo.png");
-
- // Populate scene
- int xx = 0;
- int nitems = 0;
- for (int i = -11000; i < 11000; i += 110) {
- ++xx;
- int yy = 0;
- for (int j = -7000; j < 7000; j += 70) {
- ++yy;
- qreal x = (i + 11000) / 22000.0;
- qreal y = (j + 7000) / 14000.0;
-
- QColor color(image.pixel(int(image.width() * x), int(image.height() * y)));
- QGraphicsItem *item = new Chip(color, xx, yy);
- item->setPos(QPointF(i, j));
- scene->addItem(item);
-
- ++nitems;
- }
- }
-}
diff --git a/demos/chip/mainwindow.h b/demos/chip/mainwindow.h
deleted file mode 100644
index 650e1f1f3c..0000000000
--- a/demos/chip/mainwindow.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the demonstration applications of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** GNU Lesser General Public License Usage
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this
-** file. Please review the following information to ensure the GNU Lesser
-** General Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License version 3.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of this
-** file. Please review the following information to ensure the GNU General
-** Public License version 3.0 requirements will be met:
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** Other Usage
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef MAINWINDOW_H
-#define MAINWINDOW_H
-
-#include <QtGui/qwidget.h>
-
-QT_FORWARD_DECLARE_CLASS(QGraphicsScene)
-QT_FORWARD_DECLARE_CLASS(QGraphicsView)
-QT_FORWARD_DECLARE_CLASS(QLabel)
-QT_FORWARD_DECLARE_CLASS(QSlider)
-QT_FORWARD_DECLARE_CLASS(QSplitter)
-
-class MainWindow : public QWidget
-{
- Q_OBJECT
-public:
- MainWindow(QWidget *parent = 0);
-
-private:
- void setupMatrix();
- void populateScene();
-
- QGraphicsScene *scene;
- QSplitter *h1Splitter;
- QSplitter *h2Splitter;
-};
-
-#endif
diff --git a/demos/chip/qt4logo.png b/demos/chip/qt4logo.png
deleted file mode 100644
index 157e86ed64..0000000000
--- a/demos/chip/qt4logo.png
+++ /dev/null
Binary files differ
diff --git a/demos/chip/rotateleft.png b/demos/chip/rotateleft.png
deleted file mode 100644
index 8cfa931986..0000000000
--- a/demos/chip/rotateleft.png
+++ /dev/null
Binary files differ
diff --git a/demos/chip/rotateright.png b/demos/chip/rotateright.png
deleted file mode 100644
index ec5e8664a1..0000000000
--- a/demos/chip/rotateright.png
+++ /dev/null
Binary files differ
diff --git a/demos/chip/view.cpp b/demos/chip/view.cpp
deleted file mode 100644
index 5634f85d98..0000000000
--- a/demos/chip/view.cpp
+++ /dev/null
@@ -1,276 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the demonstration applications of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** GNU Lesser General Public License Usage
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this
-** file. Please review the following information to ensure the GNU Lesser
-** General Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License version 3.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of this
-** file. Please review the following information to ensure the GNU General
-** Public License version 3.0 requirements will be met:
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** Other Usage
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "view.h"
-
-#include <QtGui>
-#ifndef QT_NO_OPENGL
-#include <QtOpenGL>
-#endif
-
-#include <qmath.h>
-
-void GraphicsView::wheelEvent(QWheelEvent *e)
-{
- if (e->modifiers() & Qt::ControlModifier) {
- if (e->delta() > 0)
- view->zoomIn(6);
- else
- view->zoomOut(6);
- e->accept();
- } else {
- QGraphicsView::wheelEvent(e);
- }
-}
-
-View::View(const QString &name, QWidget *parent)
- : QFrame(parent)
-{
- setFrameStyle(Sunken | StyledPanel);
- graphicsView = new GraphicsView(this);
- graphicsView->setRenderHint(QPainter::Antialiasing, false);
- graphicsView->setDragMode(QGraphicsView::RubberBandDrag);
- graphicsView->setOptimizationFlags(QGraphicsView::DontSavePainterState);
- graphicsView->setViewportUpdateMode(QGraphicsView::SmartViewportUpdate);
- graphicsView->setTransformationAnchor(QGraphicsView::AnchorUnderMouse);
-
- int size = style()->pixelMetric(QStyle::PM_ToolBarIconSize);
- QSize iconSize(size, size);
-
- QToolButton *zoomInIcon = new QToolButton;
- zoomInIcon->setAutoRepeat(true);
- zoomInIcon->setAutoRepeatInterval(33);
- zoomInIcon->setAutoRepeatDelay(0);
- zoomInIcon->setIcon(QPixmap(":/zoomin.png"));
- zoomInIcon->setIconSize(iconSize);
- QToolButton *zoomOutIcon = new QToolButton;
- zoomOutIcon->setAutoRepeat(true);
- zoomOutIcon->setAutoRepeatInterval(33);
- zoomOutIcon->setAutoRepeatDelay(0);
- zoomOutIcon->setIcon(QPixmap(":/zoomout.png"));
- zoomOutIcon->setIconSize(iconSize);
- zoomSlider = new QSlider;
- zoomSlider->setMinimum(0);
- zoomSlider->setMaximum(500);
- zoomSlider->setValue(250);
- zoomSlider->setTickPosition(QSlider::TicksRight);
-
- // Zoom slider layout
- QVBoxLayout *zoomSliderLayout = new QVBoxLayout;
- zoomSliderLayout->addWidget(zoomInIcon);
- zoomSliderLayout->addWidget(zoomSlider);
- zoomSliderLayout->addWidget(zoomOutIcon);
-
- QToolButton *rotateLeftIcon = new QToolButton;
- rotateLeftIcon->setIcon(QPixmap(":/rotateleft.png"));
- rotateLeftIcon->setIconSize(iconSize);
- QToolButton *rotateRightIcon = new QToolButton;
- rotateRightIcon->setIcon(QPixmap(":/rotateright.png"));
- rotateRightIcon->setIconSize(iconSize);
- rotateSlider = new QSlider;
- rotateSlider->setOrientation(Qt::Horizontal);
- rotateSlider->setMinimum(-360);
- rotateSlider->setMaximum(360);
- rotateSlider->setValue(0);
- rotateSlider->setTickPosition(QSlider::TicksBelow);
-
- // Rotate slider layout
- QHBoxLayout *rotateSliderLayout = new QHBoxLayout;
- rotateSliderLayout->addWidget(rotateLeftIcon);
- rotateSliderLayout->addWidget(rotateSlider);
- rotateSliderLayout->addWidget(rotateRightIcon);
-
- resetButton = new QToolButton;
- resetButton->setText(tr("0"));
- resetButton->setEnabled(false);
-
- // Label layout
- QHBoxLayout *labelLayout = new QHBoxLayout;
- label = new QLabel(name);
- label2 = new QLabel(tr("Pointer Mode"));
- selectModeButton = new QToolButton;
- selectModeButton->setText(tr("Select"));
- selectModeButton->setCheckable(true);
- selectModeButton->setChecked(true);
- dragModeButton = new QToolButton;
- dragModeButton->setText(tr("Drag"));
- dragModeButton->setCheckable(true);
- dragModeButton->setChecked(false);
- antialiasButton = new QToolButton;
- antialiasButton->setText(tr("Antialiasing"));
- antialiasButton->setCheckable(true);
- antialiasButton->setChecked(false);
- openGlButton = new QToolButton;
- openGlButton->setText(tr("OpenGL"));
- openGlButton->setCheckable(true);
-#ifndef QT_NO_OPENGL
- openGlButton->setEnabled(QGLFormat::hasOpenGL());
-#else
- openGlButton->setEnabled(false);
-#endif
- printButton = new QToolButton;
- printButton->setIcon(QIcon(QPixmap(":/fileprint.png")));
-
- QButtonGroup *pointerModeGroup = new QButtonGroup;
- pointerModeGroup->setExclusive(true);
- pointerModeGroup->addButton(selectModeButton);
- pointerModeGroup->addButton(dragModeButton);
-
- labelLayout->addWidget(label);
- labelLayout->addStretch();
- labelLayout->addWidget(label2);
- labelLayout->addWidget(selectModeButton);
- labelLayout->addWidget(dragModeButton);
- labelLayout->addStretch();
- labelLayout->addWidget(antialiasButton);
- labelLayout->addWidget(openGlButton);
- labelLayout->addWidget(printButton);
-
- QGridLayout *topLayout = new QGridLayout;
- topLayout->addLayout(labelLayout, 0, 0);
- topLayout->addWidget(graphicsView, 1, 0);
- topLayout->addLayout(zoomSliderLayout, 1, 1);
- topLayout->addLayout(rotateSliderLayout, 2, 0);
- topLayout->addWidget(resetButton, 2, 1);
- setLayout(topLayout);
-
- connect(resetButton, SIGNAL(clicked()), this, SLOT(resetView()));
- connect(zoomSlider, SIGNAL(valueChanged(int)), this, SLOT(setupMatrix()));
- connect(rotateSlider, SIGNAL(valueChanged(int)), this, SLOT(setupMatrix()));
- connect(graphicsView->verticalScrollBar(), SIGNAL(valueChanged(int)), this, SLOT(setResetButtonEnabled()));
- connect(graphicsView->horizontalScrollBar(), SIGNAL(valueChanged(int)), this, SLOT(setResetButtonEnabled()));
- connect(selectModeButton, SIGNAL(toggled(bool)), this, SLOT(togglePointerMode()));
- connect(dragModeButton, SIGNAL(toggled(bool)), this, SLOT(togglePointerMode()));
- connect(antialiasButton, SIGNAL(toggled(bool)), this, SLOT(toggleAntialiasing()));
- connect(openGlButton, SIGNAL(toggled(bool)), this, SLOT(toggleOpenGL()));
- connect(rotateLeftIcon, SIGNAL(clicked()), this, SLOT(rotateLeft()));
- connect(rotateRightIcon, SIGNAL(clicked()), this, SLOT(rotateRight()));
- connect(zoomInIcon, SIGNAL(clicked()), this, SLOT(zoomIn()));
- connect(zoomOutIcon, SIGNAL(clicked()), this, SLOT(zoomOut()));
- connect(printButton, SIGNAL(clicked()), this, SLOT(print()));
-
- setupMatrix();
-}
-
-QGraphicsView *View::view() const
-{
- return static_cast<QGraphicsView *>(graphicsView);
-}
-
-void View::resetView()
-{
- zoomSlider->setValue(250);
- rotateSlider->setValue(0);
- setupMatrix();
- graphicsView->ensureVisible(QRectF(0, 0, 0, 0));
-
- resetButton->setEnabled(false);
-}
-
-void View::setResetButtonEnabled()
-{
- resetButton->setEnabled(true);
-}
-
-void View::setupMatrix()
-{
- qreal scale = qPow(qreal(2), (zoomSlider->value() - 250) / qreal(50));
-
- QMatrix matrix;
- matrix.scale(scale, scale);
- matrix.rotate(rotateSlider->value());
-
- graphicsView->setMatrix(matrix);
- setResetButtonEnabled();
-}
-
-void View::togglePointerMode()
-{
- graphicsView->setDragMode(selectModeButton->isChecked()
- ? QGraphicsView::RubberBandDrag
- : QGraphicsView::ScrollHandDrag);
- graphicsView->setInteractive(selectModeButton->isChecked());
-}
-
-void View::toggleOpenGL()
-{
-#ifndef QT_NO_OPENGL
- graphicsView->setViewport(openGlButton->isChecked() ? new QGLWidget(QGLFormat(QGL::SampleBuffers)) : new QWidget);
-#endif
-}
-
-void View::toggleAntialiasing()
-{
- graphicsView->setRenderHint(QPainter::Antialiasing, antialiasButton->isChecked());
-}
-
-void View::print()
-{
-#ifndef QT_NO_PRINTER
- QPrinter printer;
- QPrintDialog dialog(&printer, this);
- if (dialog.exec() == QDialog::Accepted) {
- QPainter painter(&printer);
- graphicsView->render(&painter);
- }
-#endif
-}
-
-void View::zoomIn(int level)
-{
- zoomSlider->setValue(zoomSlider->value() + level);
-}
-
-void View::zoomOut(int level)
-{
- zoomSlider->setValue(zoomSlider->value() - level);
-}
-
-void View::rotateLeft()
-{
- rotateSlider->setValue(rotateSlider->value() - 10);
-}
-
-void View::rotateRight()
-{
- rotateSlider->setValue(rotateSlider->value() + 10);
-}
-
diff --git a/demos/chip/view.h b/demos/chip/view.h
deleted file mode 100644
index 7c587d4147..0000000000
--- a/demos/chip/view.h
+++ /dev/null
@@ -1,104 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the demonstration applications of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** GNU Lesser General Public License Usage
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this
-** file. Please review the following information to ensure the GNU Lesser
-** General Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License version 3.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of this
-** file. Please review the following information to ensure the GNU General
-** Public License version 3.0 requirements will be met:
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** Other Usage
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef VIEW_H
-#define VIEW_H
-
-#include <QFrame>
-#include <QGraphicsView>
-
-QT_FORWARD_DECLARE_CLASS(QLabel)
-QT_FORWARD_DECLARE_CLASS(QSlider)
-QT_FORWARD_DECLARE_CLASS(QToolButton)
-
-class View;
-
-class GraphicsView : public QGraphicsView
-{
- Q_OBJECT
-public:
- GraphicsView(View *v) : QGraphicsView(), view(v) { }
-
-protected:
- void wheelEvent(QWheelEvent *);
-
-private:
- View *view;
-};
-
-class View : public QFrame
-{
- Q_OBJECT
-public:
- View(const QString &name, QWidget *parent = 0);
-
- QGraphicsView *view() const;
-
-public slots:
- void zoomIn(int level = 1);
- void zoomOut(int level = 1);
-
-private slots:
- void resetView();
- void setResetButtonEnabled();
- void setupMatrix();
- void togglePointerMode();
- void toggleOpenGL();
- void toggleAntialiasing();
- void print();
- void rotateLeft();
- void rotateRight();
-
-private:
- GraphicsView *graphicsView;
- QLabel *label;
- QLabel *label2;
- QToolButton *selectModeButton;
- QToolButton *dragModeButton;
- QToolButton *openGlButton;
- QToolButton *antialiasButton;
- QToolButton *printButton;
- QToolButton *resetButton;
- QSlider *zoomSlider;
- QSlider *rotateSlider;
-};
-
-#endif
diff --git a/demos/chip/zoomin.png b/demos/chip/zoomin.png
deleted file mode 100644
index 8b0daeea48..0000000000
--- a/demos/chip/zoomin.png
+++ /dev/null
Binary files differ
diff --git a/demos/chip/zoomout.png b/demos/chip/zoomout.png
deleted file mode 100644
index 1575dd24f6..0000000000
--- a/demos/chip/zoomout.png
+++ /dev/null
Binary files differ