summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorYann Bodson <yann.bodson@nokia.com>2009-07-24 04:52:57 (GMT)
committerYann Bodson <yann.bodson@nokia.com>2009-07-24 04:52:57 (GMT)
commit17030b55cc61daac51112a3a43e12b96ba7fa280 (patch)
treefb69eb283a77882f3e08e99bb4d83b918b3ee5e3 /src
parent8ba5e3b86984fce9fd3999d643cad6a732653940 (diff)
downloadQt-17030b55cc61daac51112a3a43e12b96ba7fa280.zip
Qt-17030b55cc61daac51112a3a43e12b96ba7fa280.tar.gz
Qt-17030b55cc61daac51112a3a43e12b96ba7fa280.tar.bz2
Add a 'loading' property to fontfamily.
Diffstat (limited to 'src')
-rw-r--r--src/declarative/util/qmlfontfamily.cpp13
-rw-r--r--src/declarative/util/qmlfontfamily.h4
2 files changed, 16 insertions, 1 deletions
diff --git a/src/declarative/util/qmlfontfamily.cpp b/src/declarative/util/qmlfontfamily.cpp
index 407d2ab..e539085 100644
--- a/src/declarative/util/qmlfontfamily.cpp
+++ b/src/declarative/util/qmlfontfamily.cpp
@@ -57,13 +57,14 @@ class QmlFontFamilyPrivate : public QObjectPrivate
Q_DECLARE_PUBLIC(QmlFontFamily);
public:
- QmlFontFamilyPrivate() : reply(0) {}
+ QmlFontFamilyPrivate() : reply(0), loading(false) {}
void addFontToDatabase(const QByteArray &);
QUrl url;
QString name;
QNetworkReply *reply;
+ bool loading;
};
QML_DEFINE_TYPE(Qt,4,6,(QT_VERSION&0x00ff00)>>8,FontFamily,QmlFontFamily)
@@ -94,6 +95,8 @@ void QmlFontFamily::setSource(const QUrl &url)
return;
d->url = qmlContext(this)->resolvedUrl(url);
+ d->loading = true;
+ emit loadingChanged();
#ifndef QT_NO_LOCALFILE_OPTIMIZED_QML
if (d->url.scheme() == QLatin1String("file")) {
QFile file(d->url.toLocalFile());
@@ -125,6 +128,12 @@ void QmlFontFamily::setName(const QString &name)
emit nameChanged();
}
+bool QmlFontFamily::isLoading() const
+{
+ Q_D(const QmlFontFamily);
+ return d->loading;
+}
+
void QmlFontFamily::replyFinished()
{
Q_D(QmlFontFamily);
@@ -144,6 +153,8 @@ void QmlFontFamilyPrivate::addFontToDatabase(const QByteArray &ba)
if (id != -1) {
name = QFontDatabase::applicationFontFamilies(id).at(0);
emit q->nameChanged();
+ loading = false;
+ emit q->loadingChanged();
} else {
qWarning() << "Cannot load font: " << name << url;
}
diff --git a/src/declarative/util/qmlfontfamily.h b/src/declarative/util/qmlfontfamily.h
index 739a553..c647f67 100644
--- a/src/declarative/util/qmlfontfamily.h
+++ b/src/declarative/util/qmlfontfamily.h
@@ -59,6 +59,7 @@ class Q_DECLARATIVE_EXPORT QmlFontFamily : public QObject
Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged)
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
+ Q_PROPERTY(bool loading READ isLoading NOTIFY loadingChanged)
public:
QmlFontFamily(QObject *parent = 0);
@@ -70,11 +71,14 @@ public:
QString name() const;
void setName(const QString &name);
+ bool isLoading() const;
+
private Q_SLOTS:
void replyFinished();
Q_SIGNALS:
void nameChanged();
+ void loadingChanged();
};
QT_END_NAMESPACE