summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Burke <patrick.burke@nokia.com>2011-11-14 15:50:44 +1000
committerQt by Nokia <qt-info@nokia.com>2011-11-17 06:27:40 +0100
commitc2965294aef0984e7f43c5a3ce6e24fb8be12c62 (patch)
tree71c70a8ee4b156606a0ea9a6f91eb81036d89127
parente556eee57ff8e6175401e06e2e823aa9d981172b (diff)
ModelTweaker: Alter relative paths correctly between qml/model
Change-Id: I335889d230467761f620ce311b789ae40081366a Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
-rw-r--r--util/qt3d/modeltweak/QuickSave.h17
-rw-r--r--util/qt3d/modeltweak/qml/ConfigPane.qml2
2 files changed, 13 insertions, 6 deletions
diff --git a/util/qt3d/modeltweak/QuickSave.h b/util/qt3d/modeltweak/QuickSave.h
index 77af1951..9cba5835 100644
--- a/util/qt3d/modeltweak/QuickSave.h
+++ b/util/qt3d/modeltweak/QuickSave.h
@@ -20,20 +20,27 @@ public:
QuickSave(QObject *parent=0) : QObject(parent) {}
QString save() const {
- QString fileName = QFileDialog::getOpenFileName(0, tr("Save File"), "",tr("Files (*.qml)"));
+ QString qmlFilename = QFileDialog::getOpenFileName(0, tr("Save File"), "",tr("Files (*.qml)"));
// FIXME: ensure fileName is appropriate as a qml Component
- if(!fileName.endsWith(".qml"))
- fileName.append(".qml");
+ if(!qmlFilename.endsWith(".qml"))
+ qmlFilename.append(".qml");
- QFile file(fileName);
+ QString modelFilename = QUrl(_filename).toLocalFile();
+
+ QDir outputDir = QFileInfo(qmlFilename).absoluteDir();
+ QString relativeFilename = outputDir.relativeFilePath(modelFilename);
+
+ QFile file(qmlFilename);
qDebug("Attempting to write: %s", file.fileName().toAscii().constData());
if (!file.open(QFile::WriteOnly))
return file.errorString();
- file.write(_data.toUtf8());
+ QString dataToWrite = _data.arg(relativeFilename);
+
+ file.write(dataToWrite.toUtf8());
file.close();
diff --git a/util/qt3d/modeltweak/qml/ConfigPane.qml b/util/qt3d/modeltweak/qml/ConfigPane.qml
index 81e46584..e1f61a01 100644
--- a/util/qt3d/modeltweak/qml/ConfigPane.qml
+++ b/util/qt3d/modeltweak/qml/ConfigPane.qml
@@ -174,7 +174,7 @@ Row {
"\n" +
" Mesh {\n" +
" id: source_mesh\n" +
- " source: \"" + targetMesh + "\"\n" +
+ " source: \"%1\"\n" +
" }\n" +
"\n" +
" mesh: source_mesh\n" +