summaryrefslogtreecommitdiffstats
path: root/demos/qt3d/photobrowser3d/imagemanager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'demos/qt3d/photobrowser3d/imagemanager.cpp')
-rw-r--r--demos/qt3d/photobrowser3d/imagemanager.cpp133
1 files changed, 0 insertions, 133 deletions
diff --git a/demos/qt3d/photobrowser3d/imagemanager.cpp b/demos/qt3d/photobrowser3d/imagemanager.cpp
deleted file mode 100644
index 6f2ec5bc..00000000
--- a/demos/qt3d/photobrowser3d/imagemanager.cpp
+++ /dev/null
@@ -1,133 +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 QtQuick3D module 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 "imagemanager.h"
-#include "qatlas.h"
-#include "filescanner.h"
-#include "threadpool.h"
-
-#include <QTime>
-#include <QTimer>
-#include <QDir>
-
-ImageManager::ImageManager()
-{
-}
-
-ImageManager::~ImageManager()
-{
-}
-
-// INVARIANT: only ever called before the run() function is started
-// therefore no need for synchronized url
-void ImageManager::setImageBaseUrl(const QUrl &url)
-{
- Q_ASSERT(!isRunning());
- m_url = url;
-}
-
-/*!
- Stop the running threads if any, then sit waiting in the event loop
- for a quit call.
-*/
-void ImageManager::stop()
-{
- emit stopAll();
-}
-
-void ImageManager::scanForFiles()
-{
- // TODO: In a real app there would be a way to detect new files arriving
- // and trigger a rescan to pick these new files up. Here we just scan
- // once and then destroy the scanner, to save on resources.
-
-#ifndef QT_USE_TEST_IMAGES
- // TODO: If the amount of files is large and the app is quit early the
- // scanner could still be going when the threadpool quits. For now
- // assume its ok...
- FileScanner *scanner = new FileScanner;
- scanner->setBaseUrl(m_url);
- connect(scanner, SIGNAL(imageUrl(QUrl)), this, SIGNAL(imageUrl(QUrl)));
- connect(scanner, SIGNAL(finished()), scanner, SLOT(deleteLater()));
- connect(this, SIGNAL(stopAll()), scanner, SLOT(stop()));
- scanner->start();
-#else
- QDir testImages(":/pictures");
- QStringList pics = testImages.entryList();
- for (int i = 0; i < pics.size(); ++i)
- {
- QUrl url;
- url.setScheme("file");
- url.setPath(testImages.filePath(pics.at(i)));
- emit imageUrl(url);
- }
- qDebug() << "== test images loaded ==";
-#endif
-}
-
-void ImageManager::quit()
-{
- QThread::quit();
-}
-
-void ImageManager::run()
-{
- if (m_url.scheme() != "file")
- {
- qWarning("URL scheme %s not yet supported", qPrintable(m_url.scheme()));
- return;
- }
-
- // execute once in the event loop below
- QTimer::singleShot(0, this, SLOT(scanForFiles()));
-
-#ifndef QT_NO_THREADED_FILE_LOAD
- ThreadPool pool;
-
- connect(this, SIGNAL(deployLoader(ThumbnailableImage)),
- &pool, SLOT(deployLoader(ThumbnailableImage)));
-
- connect(this, SIGNAL(stopAll()), &pool, SLOT(stop()));
- connect(&pool, SIGNAL(stopped()), this, SLOT(quit()));
-#endif
-
- exec();
-}