History

better support for includes in entity scripts

ZappoMan committed 11 years ago

Commit cd0ee0f1 parent 137642f4 files · +25 −6Browse files

Showing the changes to libraries/script-engine/src/ScriptEngine.cpp (1 of 4 files). Show all

Unified · Split

libraries/script-engine/src/ScriptEngine.cpp+8−3
@@ -618,16 +618,20 @@ void ScriptEngine::stopTimer(QTimer *timer) { · 617 unmodified lines
618}618}
619 619
620QUrl ScriptEngine::resolvePath(const QString& include) const {620QUrl ScriptEngine::resolvePath(const QString& include) const {
621 // first lets check to see if it's already a full URL
622 QUrl url(include);621 QUrl url(include);
622 // first lets check to see if it's already a full URL
623 if (!url.scheme().isEmpty()) {623 if (!url.scheme().isEmpty()) {
624 return url;624 return url;
625 }625 }
626 626
627 // we apparently weren't a fully qualified url, so, let's assume we're relative627 // we apparently weren't a fully qualified url, so, let's assume we're relative
628 // to the original URL of our script628 // to the original URL of our script
629 QUrl parentURL(_fileNameString);629 QUrl parentURL;
630 630 if (_parentURL.isEmpty()) {
631 parentURL = QUrl(_fileNameString);
632 } else {
633 parentURL = QUrl(_parentURL);
634 }
631 // if the parent URL's scheme is empty, then this is probably a local file...635 // if the parent URL's scheme is empty, then this is probably a local file...
632 if (parentURL.scheme().isEmpty()) {636 if (parentURL.scheme().isEmpty()) {
633 parentURL = QUrl::fromLocalFile(_fileNameString);637 parentURL = QUrl::fromLocalFile(_fileNameString);
@@ -660,6 +664,7 @@ void ScriptEngine::include(const QString& includeFile) { · 26 unmodified lines
660#else664#else
661 QString fileName = url.toLocalFile();665 QString fileName = url.toLocalFile();
662#endif666#endif
667
663 QFile scriptFile(fileName);668 QFile scriptFile(fileName);
664 if (scriptFile.open(QFile::ReadOnly | QFile::Text)) {669 if (scriptFile.open(QFile::ReadOnly | QFile::Text)) {
665 qDebug() << "Including file:" << fileName;670 qDebug() << "Including file:" << fileName;