summaryrefslogtreecommitdiffstats
path: root/src/declarative/util
diff options
context:
space:
mode:
authorYann Bodson <yann.bodson@nokia.com>2009-08-04 22:41:15 (GMT)
committerYann Bodson <yann.bodson@nokia.com>2009-08-04 22:41:15 (GMT)
commit7950ccd27ea1353c699dc77242a03bd347daa5e5 (patch)
tree50de2fbe52d3024a5060883570bb3e74a6bb23f2 /src/declarative/util
parent8b4d6c9c173fdd3ec50d73bf23e2cef434e8cb1d (diff)
downloadQt-7950ccd27ea1353c699dc77242a03bd347daa5e5.zip
Qt-7950ccd27ea1353c699dc77242a03bd347daa5e5.tar.gz
Qt-7950ccd27ea1353c699dc77242a03bd347daa5e5.tar.bz2
Move QmlFontFamily to extra.
Diffstat (limited to 'src/declarative/util')
-rw-r--r--src/declarative/util/qmlfontfamily.cpp206
-rw-r--r--src/declarative/util/qmlfontfamily.h94
-rw-r--r--src/declarative/util/util.pri2
3 files changed, 0 insertions, 302 deletions
diff --git a/src/declarative/util/qmlfontfamily.cpp b/src/declarative/util/qmlfontfamily.cpp
deleted file mode 100644
index 73688c1..0000000
--- a/src/declarative/util/qmlfontfamily.cpp
+++ /dev/null
@@ -1,206 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
-** Contact: Qt Software Information (qt-info@nokia.com)
-**
-** This file is part of the QtDeclarative module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** No Commercial Usage
-** This file contains pre-release code and may not be distributed.
-** You may use this file in accordance with the terms and conditions
-** contained in the either Technology Preview License Agreement or the
-** Beta Release License Agreement.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, 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.0, 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.
-**
-** If you are unsure which license is appropriate for your use, please
-** contact the sales department at qt-sales@nokia.com.
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "private/qobject_p.h"
-#include "qmlfontfamily.h"
-#include <QUrl>
-#include <QDebug>
-#include <QNetworkRequest>
-#include <QNetworkReply>
-#include <QFile>
-#include <QmlContext>
-#include <QtDeclarative/qmlengine.h>
-#include <QFontDatabase>
-
-QT_BEGIN_NAMESPACE
-
-class QmlFontFamilyPrivate : public QObjectPrivate
-{
- Q_DECLARE_PUBLIC(QmlFontFamily);
-
-public:
- QmlFontFamilyPrivate() : reply(0), status(QmlFontFamily::Null) {}
-
- void addFontToDatabase(const QByteArray &);
-
- QUrl url;
- QString name;
- QNetworkReply *reply;
- QmlFontFamily::Status status;
-};
-
-QML_DEFINE_TYPE(Qt,4,6,(QT_VERSION&0x00ff00)>>8,FontFamily,QmlFontFamily)
-
-/*!
- \qmlclass FontFamily QmlFontFamily
- \ingroup group_utility
- \brief This item allows using fonts by name or url.
-
- Example:
- \code
- FontFamily { id: FixedFont; name: "Courier" }
- FontFamily { id: WebFont; source: "http://www.mysite.com/myfont.ttf" }
-
- Text { text: "Fixed-size font"; font.family: FixedFont.name }
- Text { text: "Fancy font"; font.family: WebFont.name }
- \endcode
-*/
-QmlFontFamily::QmlFontFamily(QObject *parent)
- : QObject(*(new QmlFontFamilyPrivate), parent)
-{
-}
-
-QmlFontFamily::~QmlFontFamily()
-{
-}
-
-/*!
- \qmlproperty url FontFamily::source
- The url of the font to load.
-*/
-QUrl QmlFontFamily::source() const
-{
- Q_D(const QmlFontFamily);
- return d->url;
-}
-
-void QmlFontFamily::setSource(const QUrl &url)
-{
- Q_D(QmlFontFamily);
- if (url == d->url)
- return;
- d->url = qmlContext(this)->resolvedUrl(url);
-
- d->status = Loading;
- emit statusChanged();
-#ifndef QT_NO_LOCALFILE_OPTIMIZED_QML
- if (d->url.scheme() == QLatin1String("file")) {
- QFile file(d->url.toLocalFile());
- file.open(QIODevice::ReadOnly);
- QByteArray ba = file.readAll();
- d->addFontToDatabase(ba);
- } else
-#endif
- {
- QNetworkRequest req(d->url);
- req.setAttribute(QNetworkRequest::CacheLoadControlAttribute, QNetworkRequest::PreferCache);
- d->reply = qmlEngine(this)->networkAccessManager()->get(req);
- QObject::connect(d->reply, SIGNAL(finished()), this, SLOT(replyFinished()));
- }
-}
-
-/*!
- \qmlproperty string FontFamily::name
-
- This property holds the name of the font family.
- It is set automatically when a font is loaded using the \c url property.
-
- Use this to set the \c font.family property of a \c Text item.
-
- Example:
- \qml
- FontFamily { id: WebFont; source: "http://www.mysite.com/myfont.ttf" }
- Text { text: "Fancy font"; font.family: WebFont.name }
- \endqml
-*/
-QString QmlFontFamily::name() const
-{
- Q_D(const QmlFontFamily);
- return d->name;
-}
-
-void QmlFontFamily::setName(const QString &name)
-{
- Q_D(QmlFontFamily);
- if (d->name == name )
- return;
- d->name = name;
- emit nameChanged();
-}
-
-/*!
- \qmlproperty enum FontFamily::status
-
- This property holds the status of font loading. It can be one of:
- \list
- \o Null - no font has been set
- \o Ready - the font has been loaded
- \o Loading - the font is currently being loaded
- \o Error - an error occurred while loading the font
- \endlist
-*/
-QmlFontFamily::Status QmlFontFamily::status() const
-{
- Q_D(const QmlFontFamily);
- return d->status;
-}
-
-void QmlFontFamily::replyFinished()
-{
- Q_D(QmlFontFamily);
- if (!d->reply->error()) {
- QByteArray ba = d->reply->readAll();
- d->addFontToDatabase(ba);
- } else {
- d->status = Error;
- emit statusChanged();
- }
- d->reply->deleteLater();
- d->reply = 0;
-}
-
-void QmlFontFamilyPrivate::addFontToDatabase(const QByteArray &ba)
-{
- Q_Q(QmlFontFamily);
-
- int id = QFontDatabase::addApplicationFontFromData(ba);
- if (id != -1) {
- name = QFontDatabase::applicationFontFamilies(id).at(0);
- emit q->nameChanged();
- status = QmlFontFamily::Ready;
- } else {
- status = QmlFontFamily::Error;
- qWarning() << "Cannot load font: " << name << url;
- }
- emit q->statusChanged();
-}
-
-QT_END_NAMESPACE
diff --git a/src/declarative/util/qmlfontfamily.h b/src/declarative/util/qmlfontfamily.h
deleted file mode 100644
index 17b6635..0000000
--- a/src/declarative/util/qmlfontfamily.h
+++ /dev/null
@@ -1,94 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
-** Contact: Qt Software Information (qt-info@nokia.com)
-**
-** This file is part of the QtDeclarative module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** No Commercial Usage
-** This file contains pre-release code and may not be distributed.
-** You may use this file in accordance with the terms and conditions
-** contained in the either Technology Preview License Agreement or the
-** Beta Release License Agreement.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, 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.0, 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.
-**
-** If you are unsure which license is appropriate for your use, please
-** contact the sales department at qt-sales@nokia.com.
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef QMLFONTFAMILY_H
-#define QMLFONTFAMILY_H
-
-#include <QtCore/qobject.h>
-#include <QtDeclarative/qml.h>
-
-QT_BEGIN_HEADER
-
-QT_BEGIN_NAMESPACE
-
-QT_MODULE(Declarative)
-
-class QmlFontFamilyPrivate;
-class Q_DECLARATIVE_EXPORT QmlFontFamily : public QObject
-{
- Q_OBJECT
- Q_DECLARE_PRIVATE(QmlFontFamily)
- Q_ENUMS(Status)
-
- Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged)
- Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
- Q_PROPERTY(Status status READ status NOTIFY statusChanged)
-
-public:
- enum Status { Null = 0, Ready, Loading, Error };
-
- QmlFontFamily(QObject *parent = 0);
- ~QmlFontFamily();
-
- QUrl source() const;
- void setSource(const QUrl &url);
-
- QString name() const;
- void setName(const QString &name);
-
- Status status() const;
-
-private Q_SLOTS:
- void replyFinished();
-
-Q_SIGNALS:
- void nameChanged();
- void statusChanged();
-};
-
-QT_END_NAMESPACE
-
-QML_DECLARE_TYPE(QmlFontFamily)
-
-QT_END_HEADER
-
-#endif // QMLFONTFAMILY_H
-
diff --git a/src/declarative/util/util.pri b/src/declarative/util/util.pri
index dfb79ac..59e3695 100644
--- a/src/declarative/util/util.pri
+++ b/src/declarative/util/util.pri
@@ -7,7 +7,6 @@ SOURCES += \
util/qmlscript.cpp \
util/qmlanimation.cpp \
util/qmlfont.cpp \
- util/qmlfontfamily.cpp \
util/qmlpalette.cpp \
util/qmlfollow.cpp \
util/qmlstate.cpp\
@@ -34,7 +33,6 @@ HEADERS += \
util/qmlanimation.h \
util/qmlanimation_p.h \
util/qmlfont.h \
- util/qmlfontfamily.h \
util/qmlpalette.h \
util/qmlfollow.h \
util/qmlstate.h\