summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorMartin Jones <martin.jones@nokia.com>2009-10-26 06:12:25 (GMT)
committerMartin Jones <martin.jones@nokia.com>2009-10-26 06:12:25 (GMT)
commit819503280f9ac63c362957fb551d8a3b0d22eee5 (patch)
treed5e8ef1f0b42bfde8a5f907910201672f95bbe1c /tools
parent5dedd5ee9c88c075c6ffeb09526088d93671efaa (diff)
parentdb09dc27d32cbc3be51773c86f189418c12ac971 (diff)
downloadQt-819503280f9ac63c362957fb551d8a3b0d22eee5.zip
Qt-819503280f9ac63c362957fb551d8a3b0d22eee5.tar.gz
Qt-819503280f9ac63c362957fb551d8a3b0d22eee5.tar.bz2
Merge branch 'kinetic-declarativeui' of scm.dev.nokia.troll.no:qt/kinetic into kinetic-declarativeui
Diffstat (limited to 'tools')
-rw-r--r--tools/qmldebugger/canvasframerate.cpp18
-rw-r--r--tools/qmldebugger/canvasframerate.h4
-rw-r--r--tools/qmldebugger/engine.cpp21
-rw-r--r--tools/qmldebugger/engine.h5
-rw-r--r--tools/qmldebugger/expressionquerywidget.cpp27
-rw-r--r--tools/qmldebugger/expressionquerywidget.h7
-rw-r--r--tools/qmldebugger/objectpropertiesview.cpp9
-rw-r--r--tools/qmldebugger/objectpropertiesview.h5
-rw-r--r--tools/qmldebugger/objecttree.cpp9
-rw-r--r--tools/qmldebugger/objecttree.h5
-rw-r--r--tools/qmldebugger/qmldebugger.cpp1
-rw-r--r--tools/qmldebugger/watchtable.cpp13
-rw-r--r--tools/qmldebugger/watchtable.h5
-rw-r--r--tools/qmlviewer/qmlviewer.cpp93
-rw-r--r--tools/qmlviewer/qmlviewer.h4
15 files changed, 151 insertions, 75 deletions
diff --git a/tools/qmldebugger/canvasframerate.cpp b/tools/qmldebugger/canvasframerate.cpp
index 0d23050..7c5d089 100644
--- a/tools/qmldebugger/canvasframerate.cpp
+++ b/tools/qmldebugger/canvasframerate.cpp
@@ -32,7 +32,6 @@ public slots:
protected:
virtual void paintEvent(QPaintEvent *);
- virtual QSize sizeHint() const;
private slots:
void scrollbarChanged(int);
@@ -57,6 +56,8 @@ private:
QLineGraph::QLineGraph(QWidget *parent)
: QWidget(parent), sb(Qt::Horizontal, this), position(-1), samplesPerWidth(99), resolutionForHeight(50), ignoreScroll(false)
{
+ setMinimumHeight(180);
+
sb.setMaximum(0);
sb.setMinimum(0);
sb.setSingleStep(1);
@@ -68,11 +69,6 @@ QLineGraph::QLineGraph(QWidget *parent)
QObject::connect(&sb, SIGNAL(valueChanged(int)), this, SLOT(scrollbarChanged(int)));
}
-QSize QLineGraph::sizeHint() const
-{
- return QSize(800, 600);
-}
-
void QLineGraph::scrollbarChanged(int v)
{
if(ignoreScroll)
@@ -291,6 +287,16 @@ CanvasFrameRate::CanvasFrameRate(QmlDebugConnection *client, QWidget *parent)
newTab();
}
+void CanvasFrameRate::setSizeHint(const QSize &size)
+{
+ m_sizeHint = size;
+}
+
+QSize CanvasFrameRate::sizeHint() const
+{
+ return m_sizeHint;
+}
+
void CanvasFrameRate::newTab()
{
if (m_tabs->count()) {
diff --git a/tools/qmldebugger/canvasframerate.h b/tools/qmldebugger/canvasframerate.h
index cef267d..aa275aa 100644
--- a/tools/qmldebugger/canvasframerate.h
+++ b/tools/qmldebugger/canvasframerate.h
@@ -14,6 +14,9 @@ class CanvasFrameRate : public QWidget
public:
CanvasFrameRate(QmlDebugConnection *, QWidget *parent = 0);
+ void setSizeHint(const QSize &);
+ virtual QSize sizeHint() const;
+
private slots:
void newTab();
void stateChanged(int);
@@ -22,6 +25,7 @@ private:
QTabWidget *m_tabs;
QSpinBox *m_spin;
QObject *m_plugin;
+ QSize m_sizeHint;
};
QT_END_NAMESPACE
diff --git a/tools/qmldebugger/engine.cpp b/tools/qmldebugger/engine.cpp
index fac10f3..a1fd009 100644
--- a/tools/qmldebugger/engine.cpp
+++ b/tools/qmldebugger/engine.cpp
@@ -12,6 +12,7 @@
#include "engine.h"
#include "objectpropertiesview.h"
+#include "expressionquerywidget.h"
#include "objecttree.h"
#include "watchtable.h"
@@ -37,7 +38,7 @@ private:
};
EnginePane::EnginePane(QmlDebugConnection *conn, QWidget *parent)
-: QWidget(parent), m_client(new QmlEngineDebug(conn, this)), m_engines(0), m_context(0), m_watchTableModel(0)
+: QWidget(parent), m_client(new QmlEngineDebug(conn, this)), m_engines(0), m_context(0), m_watchTableModel(0), m_exprQueryWidget(0)
{
QVBoxLayout *layout = new QVBoxLayout(this);
layout->setContentsMargins(0, 0, 0, 0);
@@ -71,7 +72,7 @@ EnginePane::EnginePane(QmlDebugConnection *conn, QWidget *parent)
WatchTableHeaderView *header = new WatchTableHeaderView(m_watchTableModel);
m_watchTableView->setHorizontalHeader(header);
- connect(m_objTree, SIGNAL(objectSelected(QmlDebugObjectReference)),
+ connect(m_objTree, SIGNAL(currentObjectChanged(QmlDebugObjectReference)),
m_propertiesView, SLOT(reload(QmlDebugObjectReference)));
connect(m_objTree, SIGNAL(expressionWatchRequested(QmlDebugObjectReference,QString)),
m_watchTableModel, SLOT(expressionWatchRequested(QmlDebugObjectReference,QString)));
@@ -83,10 +84,20 @@ EnginePane::EnginePane(QmlDebugConnection *conn, QWidget *parent)
m_propertiesView, SLOT(watchCreated(QmlDebugWatch*)));
connect(m_watchTableView, SIGNAL(objectActivated(int)),
- m_objTree, SLOT(selectObject(int)));
-
+ m_objTree, SLOT(setCurrentObject(int)));
+
+ m_exprQueryWidget = new ExpressionQueryWidget(m_client);
+ connect(m_objTree, SIGNAL(currentObjectChanged(QmlDebugObjectReference)),
+ m_exprQueryWidget, SLOT(setCurrentObject(QmlDebugObjectReference)));
+
+ QSplitter *propertiesTab = new QSplitter(Qt::Vertical);
+ propertiesTab->addWidget(m_propertiesView);
+ propertiesTab->addWidget(m_exprQueryWidget);
+ propertiesTab->setStretchFactor(0, 2);
+ propertiesTab->setStretchFactor(1, 1);
+
m_tabs = new QTabWidget(this);
- m_tabs->addTab(m_propertiesView, tr("Properties"));
+ m_tabs->addTab(propertiesTab, tr("Properties"));
m_tabs->addTab(m_watchTableView, tr("Watched"));
splitter->addWidget(m_objTree);
diff --git a/tools/qmldebugger/engine.h b/tools/qmldebugger/engine.h
index 8e8c0f2..a3ebe46 100644
--- a/tools/qmldebugger/engine.h
+++ b/tools/qmldebugger/engine.h
@@ -17,6 +17,7 @@ class QmlDebugWatch;
class ObjectTree;
class WatchTableModel;
class WatchTableView;
+class ExpressionQueryWidget;
class QTabWidget;
@@ -45,12 +46,12 @@ private:
ObjectTree *m_objTree;
QTabWidget *m_tabs;
WatchTableView *m_watchTableView;
+ WatchTableModel *m_watchTableModel;
+ ExpressionQueryWidget *m_exprQueryWidget;
QmlView *m_engineView;
QList<QObject *> m_engineItems;
- WatchTableModel *m_watchTableModel;
-
ObjectPropertiesView *m_propertiesView;
};
diff --git a/tools/qmldebugger/expressionquerywidget.cpp b/tools/qmldebugger/expressionquerywidget.cpp
index b29b465..53ede3a 100644
--- a/tools/qmldebugger/expressionquerywidget.cpp
+++ b/tools/qmldebugger/expressionquerywidget.cpp
@@ -1,3 +1,5 @@
+#include <QtCore/qdebug.h>
+
#include <QtGui/qlabel.h>
#include <QtGui/qtextedit.h>
#include <QtGui/qlineedit.h>
@@ -14,25 +16,21 @@ ExpressionQueryWidget::ExpressionQueryWidget(QmlEngineDebug *client, QWidget *pa
m_style(Compact),
m_client(client),
m_query(0),
- m_groupBox(0),
m_textEdit(new QTextEdit),
m_lineEdit(0),
m_button(0)
{
m_prompt = QLatin1String(">> ");
- m_groupBox = new QGroupBox;
- QVBoxLayout *vbox = new QVBoxLayout(m_groupBox);
- vbox->addWidget(m_textEdit);
-
QVBoxLayout *layout = new QVBoxLayout(this);
- layout->addWidget(m_groupBox);
+ layout->setMargin(0);
+ layout->addWidget(m_textEdit);
updateTitle();
if (m_style == Compact) {
QHBoxLayout *hbox = new QHBoxLayout;
- m_button = new QPushButton(tr("Execute"));
+ m_button = new QPushButton(tr("Query"));
m_button->setEnabled(false);
connect(m_button, SIGNAL(clicked()), SLOT(executeExpression()));
m_lineEdit = new QLineEdit;
@@ -41,7 +39,7 @@ ExpressionQueryWidget::ExpressionQueryWidget(QmlEngineDebug *client, QWidget *pa
hbox->addWidget(new QLabel(tr("Expression:")));
hbox->addWidget(m_lineEdit);
hbox->addWidget(m_button);
- vbox->addLayout(hbox);
+ layout->addLayout(hbox);
m_textEdit->setReadOnly(true);
m_lineEdit->installEventFilter(this);
@@ -50,17 +48,21 @@ ExpressionQueryWidget::ExpressionQueryWidget(QmlEngineDebug *client, QWidget *pa
}
}
+void ExpressionQueryWidget::setEngineDebug(QmlEngineDebug *client)
+{
+ m_client = client;
+}
+
void ExpressionQueryWidget::updateTitle()
{
if (m_currObject.debugId() < 0) {
- m_groupBox->setTitle(tr("Expression queries"));
+ m_title = tr("Expression queries");
} else {
QString desc = QLatin1String("<")
+ m_currObject.className() + QLatin1String(": ")
+ (m_currObject.name().isEmpty() ? QLatin1String("<unnamed>") : m_currObject.name())
+ QLatin1String(">");
- m_groupBox->setTitle(tr("Expression queries (using context for %1)"
- , "Selected object").arg(desc));
+ m_title = tr("Expression queries (using context for %1)" , "Selected object").arg(desc);
}
}
@@ -103,6 +105,9 @@ void ExpressionQueryWidget::showCurrentContext()
void ExpressionQueryWidget::executeExpression()
{
+ if (!m_client)
+ return;
+
if (m_style == Compact)
m_expr = m_lineEdit->text().trimmed();
else
diff --git a/tools/qmldebugger/expressionquerywidget.h b/tools/qmldebugger/expressionquerywidget.h
index 8db8f9f..3d9b580 100644
--- a/tools/qmldebugger/expressionquerywidget.h
+++ b/tools/qmldebugger/expressionquerywidget.h
@@ -21,7 +21,9 @@ public:
Shell
};
- ExpressionQueryWidget(QmlEngineDebug *client, QWidget *parent = 0);
+ ExpressionQueryWidget(QmlEngineDebug *client = 0, QWidget *parent = 0);
+
+ void setEngineDebug(QmlEngineDebug *client);
protected:
bool eventFilter(QObject *obj, QEvent *event);
@@ -44,7 +46,6 @@ private:
QmlEngineDebug *m_client;
QmlDebugExpressionQuery *m_query;
- QGroupBox *m_groupBox;
QTextEdit *m_textEdit;
QLineEdit *m_lineEdit;
QPushButton *m_button;
@@ -52,6 +53,8 @@ private:
QString m_expr;
QString m_lastExpr;
+ QString m_title;
+
QmlDebugObjectReference m_currObject;
QmlDebugObjectReference m_objectAtLastFocus;
};
diff --git a/tools/qmldebugger/objectpropertiesview.cpp b/tools/qmldebugger/objectpropertiesview.cpp
index 61afe3f..274552a 100644
--- a/tools/qmldebugger/objectpropertiesview.cpp
+++ b/tools/qmldebugger/objectpropertiesview.cpp
@@ -53,8 +53,15 @@ ObjectPropertiesView::ObjectPropertiesView(QmlEngineDebug *client, QWidget *pare
layout->addWidget(m_tree);
}
+void ObjectPropertiesView::setEngineDebug(QmlEngineDebug *client)
+{
+ m_client = client;
+}
+
void ObjectPropertiesView::reload(const QmlDebugObjectReference &obj)
{
+ if (!m_client)
+ return;
if (m_query)
delete m_query;
@@ -68,7 +75,7 @@ void ObjectPropertiesView::reload(const QmlDebugObjectReference &obj)
void ObjectPropertiesView::queryFinished()
{
- if (!m_query)
+ if (!m_client || !m_query)
return;
QmlDebugObjectReference obj = m_query->object();
diff --git a/tools/qmldebugger/objectpropertiesview.h b/tools/qmldebugger/objectpropertiesview.h
index 0f72ff4..d555940 100644
--- a/tools/qmldebugger/objectpropertiesview.h
+++ b/tools/qmldebugger/objectpropertiesview.h
@@ -9,13 +9,16 @@ QT_BEGIN_NAMESPACE
class QTreeWidget;
class QTreeWidgetItem;
+class QmlDebugConnection;
class ObjectPropertiesView : public QWidget
{
Q_OBJECT
public:
- ObjectPropertiesView(QmlEngineDebug *client, QWidget *parent = 0);
+ ObjectPropertiesView(QmlEngineDebug *client = 0, QWidget *parent = 0);
+ void setEngineDebug(QmlEngineDebug *client);
+
signals:
void activated(const QmlDebugObjectReference &, const QmlDebugPropertyReference &);
diff --git a/tools/qmldebugger/objecttree.cpp b/tools/qmldebugger/objecttree.cpp
index 0b92ceb..981a80b 100644
--- a/tools/qmldebugger/objecttree.cpp
+++ b/tools/qmldebugger/objecttree.cpp
@@ -18,13 +18,22 @@ ObjectTree::ObjectTree(QmlEngineDebug *client, QWidget *parent)
m_query(0)
{
setHeaderHidden(true);
+ setMinimumWidth(250);
connect(this, SIGNAL(currentItemChanged(QTreeWidgetItem *, QTreeWidgetItem *)),
this, SLOT(currentItemChanged(QTreeWidgetItem *)));
}
+void ObjectTree::setEngineDebug(QmlEngineDebug *client)
+{
+ m_client = client;
+}
+
void ObjectTree::reload(int objectDebugId)
{
+ if (!m_client)
+ return;
+
if (m_query) {
delete m_query;
m_query = 0;
diff --git a/tools/qmldebugger/objecttree.h b/tools/qmldebugger/objecttree.h
index 3c0a5c6..95820f3 100644
--- a/tools/qmldebugger/objecttree.h
+++ b/tools/qmldebugger/objecttree.h
@@ -11,14 +11,17 @@ class QmlEngineDebug;
class QmlDebugObjectReference;
class QmlDebugObjectQuery;
class QmlDebugContextReference;
+class QmlDebugConnection;
class ObjectTree : public QTreeWidget
{
Q_OBJECT
public:
- ObjectTree(QmlEngineDebug *client, QWidget *parent = 0);
+ ObjectTree(QmlEngineDebug *client = 0, QWidget *parent = 0);
+ void setEngineDebug(QmlEngineDebug *client);
+
signals:
void currentObjectChanged(const QmlDebugObjectReference &);
void expressionWatchRequested(const QmlDebugObjectReference &, const QString &);
diff --git a/tools/qmldebugger/qmldebugger.cpp b/tools/qmldebugger/qmldebugger.cpp
index e0a76b6..2828026 100644
--- a/tools/qmldebugger/qmldebugger.cpp
+++ b/tools/qmldebugger/qmldebugger.cpp
@@ -46,6 +46,7 @@ QmlDebugger::QmlDebugger(QWidget *parent)
layout->addWidget(m_tabs);
CanvasFrameRate *cfr = new CanvasFrameRate(&client, this);
+ cfr->setSizeHint(QSize(800, 600));
m_tabs->addTab(cfr, tr("Frame Rate"));
m_enginePane = new EnginePane(&client, this);
diff --git a/tools/qmldebugger/watchtable.cpp b/tools/qmldebugger/watchtable.cpp
index 512bfb2..774727b 100644
--- a/tools/qmldebugger/watchtable.cpp
+++ b/tools/qmldebugger/watchtable.cpp
@@ -23,6 +23,11 @@ WatchTableModel::~WatchTableModel()
delete m_columns[i].watch;
}
+void WatchTableModel::setEngineDebug(QmlEngineDebug *client)
+{
+ m_client = client;
+}
+
void WatchTableModel::addWatch(QmlDebugWatch *watch, const QString &title)
{
QString property;
@@ -193,7 +198,7 @@ void WatchTableModel::addValue(int column, const QVariant &value)
void WatchTableModel::togglePropertyWatch(const QmlDebugObjectReference &object, const QmlDebugPropertyReference &property)
{
- if (!property.hasNotifySignal())
+ if (!m_client || !property.hasNotifySignal())
return;
QmlDebugWatch *watch = findWatch(object.debugId(), property.name());
@@ -228,6 +233,9 @@ void WatchTableModel::watchedValueChanged(const QByteArray &propertyName, const
void WatchTableModel::expressionWatchRequested(const QmlDebugObjectReference &obj, const QString &expr)
{
+ if (!m_client)
+ return;
+
QmlDebugWatch *watch = m_client->addWatch(obj, expr, this);
if (watch->state() == QmlDebugWatch::Dead) {
@@ -241,6 +249,9 @@ void WatchTableModel::expressionWatchRequested(const QmlDebugObjectReference &ob
void WatchTableModel::stopWatching(int column)
{
+ if (!m_client)
+ return;
+
QmlDebugWatch *watch = findWatch(column);
if (watch) {
m_client->removeWatch(watch);
diff --git a/tools/qmldebugger/watchtable.h b/tools/qmldebugger/watchtable.h
index abada2b..772142c 100644
--- a/tools/qmldebugger/watchtable.h
+++ b/tools/qmldebugger/watchtable.h
@@ -13,6 +13,7 @@ QT_BEGIN_NAMESPACE
class QmlDebugWatch;
class QmlEngineDebug;
+class QmlDebugConnection;
class QmlDebugPropertyReference;
class QmlDebugObjectReference;
@@ -20,9 +21,11 @@ class WatchTableModel : public QAbstractTableModel
{
Q_OBJECT
public:
- WatchTableModel(QmlEngineDebug *client, QObject *parent = 0);
+ WatchTableModel(QmlEngineDebug *client = 0, QObject *parent = 0);
~WatchTableModel();
+ void setEngineDebug(QmlEngineDebug *client);
+
QmlDebugWatch *findWatch(int column) const;
int columnForWatch(QmlDebugWatch *watch) const;
diff --git a/tools/qmlviewer/qmlviewer.cpp b/tools/qmlviewer/qmlviewer.cpp
index 60fa13a..b115abb 100644
--- a/tools/qmlviewer/qmlviewer.cpp
+++ b/tools/qmlviewer/qmlviewer.cpp
@@ -310,6 +310,7 @@ QmlViewer::QmlViewer(QWidget *parent, Qt::WindowFlags flags)
canvas->setFocus();
QObject::connect(canvas, SIGNAL(sceneResized(QSize)), this, SLOT(sceneResized(QSize)));
+ QObject::connect(canvas, SIGNAL(initialSize(QSize)), this, SLOT(adjustSizeSlot()));
QObject::connect(canvas, SIGNAL(errors(QList<QmlError>)), this, SLOT(executeErrors()));
if (!(flags & Qt::FramelessWindowHint))
@@ -335,6 +336,11 @@ QmlViewer::QmlViewer(QWidget *parent, Qt::WindowFlags flags)
recordTimer.setRepeating(true);
}
+void QmlViewer::adjustSizeSlot()
+{
+ adjustSize();
+}
+
QMenuBar *QmlViewer::menuBar() const
{
if (!mb)
@@ -600,14 +606,17 @@ void QmlViewer::addLibraryPath(const QString& lib)
void QmlViewer::reload()
{
- openQml(currentFileName);
+ openQml(canvas->url());
}
void QmlViewer::open()
{
- QString fileName = QFileDialog::getOpenFileName(this, tr("Open QML file"), currentFileName, tr("QML Files (*.qml)"));
- if (!fileName.isEmpty())
- openQml(fileName);
+ QString cur = canvas->url().toLocalFile();
+ QString fileName = QFileDialog::getOpenFileName(this, tr("Open QML file"), cur, tr("QML Files (*.qml)"));
+ if (!fileName.isEmpty()) {
+ QFileInfo fi(fileName);
+ openQml(QUrl::fromLocalFile(fi.absoluteFilePath()));
+ }
}
void QmlViewer::executeErrors()
@@ -615,55 +624,55 @@ void QmlViewer::executeErrors()
if (tester) tester->executefailure();
}
-void QmlViewer::openQml(const QString& fileName)
+void QmlViewer::openQml(const QUrl& url)
{
- setWindowTitle(tr("%1 - Qt Declarative UI Viewer").arg(fileName));
+ QString fileName = url.toLocalFile();
+ setWindowTitle(tr("%1 - Qt Declarative UI Viewer").arg(fileName.isEmpty() ? url.toString() : fileName));
if (!m_script.isEmpty())
tester = new QFxTester(m_script, m_scriptOptions, canvas);
canvas->reset();
- currentFileName = fileName;
- QUrl url(fileName);
- QFileInfo fi(fileName);
- if (fi.exists()) {
- if (fi.suffix().toLower() != QLatin1String("qml")) {
- qWarning() << "qmlviewer cannot open non-QML file" << fileName;
- return;
- }
+ if (!fileName.isEmpty()) {
+ QFileInfo fi(fileName);
+ if (fi.exists()) {
+ if (fi.suffix().toLower() != QLatin1String("qml")) {
+ qWarning() << "qmlviewer cannot open non-QML file" << fileName;
+ return;
+ }
- url = QUrl::fromLocalFile(fi.absoluteFilePath());
- QmlContext *ctxt = canvas->rootContext();
- QDir dir(fi.path()+"/dummydata", "*.qml");
- QStringList list = dir.entryList();
- for (int i = 0; i < list.size(); ++i) {
- QString qml = list.at(i);
- QFile f(dir.filePath(qml));
- f.open(QIODevice::ReadOnly);
- QByteArray data = f.readAll();
- QmlComponent comp(canvas->engine());
- comp.setData(data, QUrl());
- QObject *dummyData = comp.create();
-
- if(comp.isError()) {
- QList<QmlError> errors = comp.errors();
- foreach (const QmlError &error, errors) {
- qWarning() << error;
+ QmlContext *ctxt = canvas->rootContext();
+ QDir dir(fi.path()+"/dummydata", "*.qml");
+ QStringList list = dir.entryList();
+ for (int i = 0; i < list.size(); ++i) {
+ QString qml = list.at(i);
+ QFile f(dir.filePath(qml));
+ f.open(QIODevice::ReadOnly);
+ QByteArray data = f.readAll();
+ QmlComponent comp(canvas->engine());
+ comp.setData(data, QUrl());
+ QObject *dummyData = comp.create();
+
+ if(comp.isError()) {
+ QList<QmlError> errors = comp.errors();
+ foreach (const QmlError &error, errors) {
+ qWarning() << error;
+ }
+ if (tester) tester->executefailure();
}
- if (tester) tester->executefailure();
- }
- if (dummyData) {
- qWarning() << "Loaded dummy data:" << dir.filePath(qml);
- qml.truncate(qml.length()-4);
- ctxt->setContextProperty(qml, dummyData);
- dummyData->setParent(this);
+ if (dummyData) {
+ qWarning() << "Loaded dummy data:" << dir.filePath(qml);
+ qml.truncate(qml.length()-4);
+ ctxt->setContextProperty(qml, dummyData);
+ dummyData->setParent(this);
+ }
}
+ } else {
+ qWarning() << "qmlviewer cannot find file:" << fileName;
+ return;
}
- } else {
- qWarning() << "qmlviewer cannot find file:" << fileName;
- return;
}
canvas->setUrl(url);
@@ -677,7 +686,7 @@ void QmlViewer::openQml(const QString& fileName)
canvas->updateGeometry();
if (mb)
mb->updateGeometry();
- resize(sizeHint());
+ adjustSize();
} else {
if (scaleSkin)
canvas->resize(canvas->sizeHint());
diff --git a/tools/qmlviewer/qmlviewer.h b/tools/qmlviewer/qmlviewer.h
index 7f9dca0..50495db 100644
--- a/tools/qmlviewer/qmlviewer.h
+++ b/tools/qmlviewer/qmlviewer.h
@@ -63,7 +63,7 @@ public:
public slots:
void sceneResized(QSize size);
- void openQml(const QString& fileName);
+ void openQml(const QUrl&);
void open();
void reload();
void takeSnapShot();
@@ -88,12 +88,12 @@ private slots:
void chooseRecordingOptions();
void pickRecordingFile();
void setScaleSkin();
+ void adjustSizeSlot();
private:
void setupProxy();
QString getVideoFileName();
- QString currentFileName;
PreviewDeviceSkin *skin;
QSize skinscreensize;
QmlView *canvas;