summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--editorlib/src/editorscene.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/editorlib/src/editorscene.cpp b/editorlib/src/editorscene.cpp
index d4ca572..789bb75 100644
--- a/editorlib/src/editorscene.cpp
+++ b/editorlib/src/editorscene.cpp
@@ -276,10 +276,16 @@ void EditorScene::resetScene()
bool EditorScene::saveScene(const QUrl &fileUrl, bool autosave)
{
+ QUrl url = fileUrl;
+ if (!url.toString().endsWith(QStringLiteral(".qt3d.qrc"))) {
+ QString filePath = url.toString() + QStringLiteral(".qt3d.qrc");
+ url.setUrl(filePath);
+ }
+
Qt3DCore::QEntity *camera = nullptr;
if (m_activeSceneCameraIndex >= 0 && m_activeSceneCameraIndex < m_sceneCameras.size())
camera = m_sceneCameras.at(m_activeSceneCameraIndex).cameraEntity;
- bool retval = m_sceneParser->exportQmlScene(m_sceneEntity, fileUrl, camera, autosave);
+ bool retval = m_sceneParser->exportQmlScene(m_sceneEntity, url, camera, autosave);
if (retval)
m_undoHandler->setClean();
else