diff options
| author | Brian Munro <brian.alexander.munro@gmail.com> | 2017-10-24 06:18:00 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-10-24 06:18:00 +0200 |
| commit | 126f8deb55b64a17ba3acb677fd4283532855551 (patch) | |
| tree | 8b6cb71a669fdb8dc7546e46863f12cb8216fdb7 /src | |
| parent | 03608230acd0faa7d5fefdc11c75713a0b6c733e (diff) | |
| parent | f0f2112c1562ae123b0cd1f0b2f4f542322f2937 (diff) | |
Merge pull request #106 from Silarn/mainline_dev
Updates for tutorials and nexus description links
Diffstat (limited to 'src')
| -rw-r--r-- | src/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | src/descriptionpage.h | 28 | ||||
| -rw-r--r-- | src/modinfodialog.cpp | 14 | ||||
| -rw-r--r-- | src/organizer_en.ts | 147 | ||||
| -rw-r--r-- | src/tutorials/Highlight.qml | 2 | ||||
| -rw-r--r-- | src/tutorials/Tooltip.qml | 2 | ||||
| -rw-r--r-- | src/tutorials/TooltipArea.qml | 4 | ||||
| -rw-r--r-- | src/tutorials/TutorialDescription.qml | 2 | ||||
| -rw-r--r-- | src/tutorials/TutorialOverlay.qml | 2 | ||||
| -rw-r--r-- | src/tutorials/tutorial_conflictresolution_main.js | 20 | ||||
| -rw-r--r-- | src/tutorials/tutorial_firststeps_settings.js | 2 | ||||
| -rw-r--r-- | src/tutorials/tutorial_primer_main.js | 63 | ||||
| -rw-r--r-- | src/tutorials/tutorials_installdialog.qml | 2 | ||||
| -rw-r--r-- | src/tutorials/tutorials_mainwindow.qml | 2 | ||||
| -rw-r--r-- | src/tutorials/tutorials_modinfodialog.qml | 2 | ||||
| -rw-r--r-- | src/tutorials/tutorials_nexusdialog.qml | 2 | ||||
| -rw-r--r-- | src/tutorials/tutorials_settingsdialog.qml | 2 |
17 files changed, 176 insertions, 121 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 833f7504..d5ebf6ae 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -171,6 +171,7 @@ SET(organizer_HDRS instancemanager.h usvfsconnector.h eventfilter.h + descriptionpage.h shared/windows_error.h shared/error_report.h diff --git a/src/descriptionpage.h b/src/descriptionpage.h new file mode 100644 index 00000000..f6158ee0 --- /dev/null +++ b/src/descriptionpage.h @@ -0,0 +1,28 @@ +#include <QWebEnginePage> + +#ifndef DESCRIPTIONPAGE_H +#define DESCRIPTIONPAGE_H + +class DescriptionPage : public QWebEnginePage +{ + Q_OBJECT + +public: + DescriptionPage(QObject* parent = 0) : QWebEnginePage(parent){} + + bool acceptNavigationRequest(const QUrl & url, QWebEnginePage::NavigationType type, bool isMainFrame) + { + if (type == QWebEnginePage::NavigationTypeLinkClicked) + { + emit linkClicked(url); + return false; + } + return true; + } + +signals: + void linkClicked(const QUrl&); + +}; + +#endif //DESCRIPTIONPAGE_H diff --git a/src/modinfodialog.cpp b/src/modinfodialog.cpp index c96c2b4a..c586c6b6 100644 --- a/src/modinfodialog.cpp +++ b/src/modinfodialog.cpp @@ -19,6 +19,7 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>. #include "modinfodialog.h"
#include "ui_modinfodialog.h"
+#include "descriptionpage.h"
#include "iplugingame.h"
#include "nexusinterface.h"
@@ -38,6 +39,7 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>. #include <QMenu>
#include <QFileSystemModel>
#include <QInputDialog>
+#include <QPointer>
#include <Shlwapi.h>
@@ -85,10 +87,12 @@ ModInfoDialog::ModInfoDialog(ModInfo::Ptr modInfo, const DirectoryEntry *directo ui->notesEdit->setText(modInfo->notes());
+ ui->descriptionView->setPage(new DescriptionPage);
+
connect(&m_ThumbnailMapper, SIGNAL(mapped(const QString&)), this, SIGNAL(thumbnailClickedSignal(const QString&)));
connect(this, SIGNAL(thumbnailClickedSignal(const QString&)), this, SLOT(thumbnailClicked(const QString&)));
connect(m_ModInfo.data(), SIGNAL(modDetailsUpdated(bool)), this, SLOT(modDetailsUpdated(bool)));
- connect(ui->descriptionView, SIGNAL(linkClicked(QUrl)), this, SLOT(linkClicked(QUrl)));
+ connect(ui->descriptionView->page(), SIGNAL(linkClicked(QUrl)), this, SLOT(linkClicked(QUrl)));
//TODO: No easy way to delegate links
//ui->descriptionView->page()->acceptNavigationRequest(QWebEnginePage::DelegateAllLinks);
@@ -826,11 +830,13 @@ void ModInfoDialog::modDetailsUpdated(bool success) "<body>%1</body>"
"</html>").arg(BBCode::convertToHTML(nexusDescription));
+ ui->descriptionView->page()->setHtml(descriptionAsHTML);
+
// QString descriptionAsHTML = BBCode::convertToHTML(result["description"].toString());
- ui->descriptionView->setHtml(descriptionAsHTML);
+ // ui->descriptionView->setHtml(descriptionAsHTML);
} else {
// ui->descriptionView->setHtml(result["summary"].toString().append(QString("\r\n") + tr("(description incomplete, please visit nexus)")));
- ui->descriptionView->setHtml(tr("(description incomplete, please visit nexus)"));
+ ui->descriptionView->page()->setHtml(tr("(description incomplete, please visit nexus)"));
}
updateVersionColor();
@@ -876,7 +882,7 @@ void ModInfoDialog::on_modIDEdit_editingFinished() if (oldID != modID){
m_ModInfo->setNexusID(modID);
- ui->descriptionView->setHtml("");
+ ui->descriptionView->page()->setHtml("");
if (modID != 0) {
m_RequestStarted = false;
refreshNexusData(modID);
diff --git a/src/organizer_en.ts b/src/organizer_en.ts index 535c16a5..15785d1f 100644 --- a/src/organizer_en.ts +++ b/src/organizer_en.ts @@ -2989,227 +2989,227 @@ p, li { white-space: pre-wrap; } <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="176"/> + <location filename="modinfodialog.cpp" line="178"/> <source>&Delete</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="177"/> + <location filename="modinfodialog.cpp" line="179"/> <source>&Rename</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="178"/> + <location filename="modinfodialog.cpp" line="180"/> <source>&Hide</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="179"/> + <location filename="modinfodialog.cpp" line="181"/> <source>&Unhide</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="180"/> + <location filename="modinfodialog.cpp" line="182"/> <source>&Open</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="181"/> + <location filename="modinfodialog.cpp" line="183"/> <source>&New Folder</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="431"/> - <location filename="modinfodialog.cpp" line="446"/> + <location filename="modinfodialog.cpp" line="433"/> + <location filename="modinfodialog.cpp" line="448"/> <source>Save changes?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="431"/> - <location filename="modinfodialog.cpp" line="446"/> + <location filename="modinfodialog.cpp" line="433"/> + <location filename="modinfodialog.cpp" line="448"/> <source>Save changes to "%1"?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="636"/> + <location filename="modinfodialog.cpp" line="638"/> <source>File Exists</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="636"/> + <location filename="modinfodialog.cpp" line="638"/> <source>A file with that name exists, please enter a new one</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="653"/> + <location filename="modinfodialog.cpp" line="655"/> <source>failed to move file</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="678"/> + <location filename="modinfodialog.cpp" line="680"/> <source>failed to create directory "optional"</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="718"/> - <location filename="modinfodialog.cpp" line="1222"/> + <location filename="modinfodialog.cpp" line="720"/> + <location filename="modinfodialog.cpp" line="1230"/> <source>Info requested, please wait</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="772"/> + <location filename="modinfodialog.cpp" line="774"/> <source>Main</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="773"/> + <location filename="modinfodialog.cpp" line="775"/> <source>Update</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="774"/> + <location filename="modinfodialog.cpp" line="776"/> <source>Optional</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="775"/> + <location filename="modinfodialog.cpp" line="777"/> <source>Old</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="776"/> + <location filename="modinfodialog.cpp" line="778"/> <source>Misc</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="777"/> + <location filename="modinfodialog.cpp" line="779"/> <source>Unknown</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="788"/> + <location filename="modinfodialog.cpp" line="790"/> <source>Current Version: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="792"/> + <location filename="modinfodialog.cpp" line="794"/> <source>No update available</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="833"/> + <location filename="modinfodialog.cpp" line="841"/> <source>(description incomplete, please visit nexus)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="848"/> + <location filename="modinfodialog.cpp" line="856"/> <source><a href="%1">Visit on Nexus</a></source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="926"/> + <location filename="modinfodialog.cpp" line="934"/> <source>Failed to delete %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="937"/> - <location filename="modinfodialog.cpp" line="942"/> + <location filename="modinfodialog.cpp" line="945"/> + <location filename="modinfodialog.cpp" line="950"/> <source>Confirm</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="937"/> + <location filename="modinfodialog.cpp" line="945"/> <source>Are sure you want to delete "%1"?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="942"/> + <location filename="modinfodialog.cpp" line="950"/> <source>Are sure you want to delete the selected files?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1016"/> - <location filename="modinfodialog.cpp" line="1022"/> + <location filename="modinfodialog.cpp" line="1024"/> + <location filename="modinfodialog.cpp" line="1030"/> <source>New Folder</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1028"/> + <location filename="modinfodialog.cpp" line="1036"/> <source>Failed to create "%1"</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1132"/> - <location filename="modinfodialog.cpp" line="1156"/> + <location filename="modinfodialog.cpp" line="1140"/> + <location filename="modinfodialog.cpp" line="1164"/> <source>Replace file?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1132"/> + <location filename="modinfodialog.cpp" line="1140"/> <source>There already is a hidden version of this file. Replace it?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1135"/> - <location filename="modinfodialog.cpp" line="1159"/> + <location filename="modinfodialog.cpp" line="1143"/> + <location filename="modinfodialog.cpp" line="1167"/> <source>File operation failed</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1135"/> - <location filename="modinfodialog.cpp" line="1159"/> + <location filename="modinfodialog.cpp" line="1143"/> + <location filename="modinfodialog.cpp" line="1167"/> <source>Failed to remove "%1". Maybe you lack the required file permissions?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1146"/> - <location filename="modinfodialog.cpp" line="1169"/> + <location filename="modinfodialog.cpp" line="1154"/> + <location filename="modinfodialog.cpp" line="1177"/> <source>failed to rename %1 to %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1156"/> + <location filename="modinfodialog.cpp" line="1164"/> <source>There already is a visible version of this file. Replace it?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1202"/> + <location filename="modinfodialog.cpp" line="1210"/> <source>Un-Hide</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1204"/> + <location filename="modinfodialog.cpp" line="1212"/> <source>Hide</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1245"/> + <location filename="modinfodialog.cpp" line="1253"/> <source>Name</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1245"/> + <location filename="modinfodialog.cpp" line="1253"/> <source>Please enter a name</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1249"/> - <location filename="modinfodialog.cpp" line="1252"/> + <location filename="modinfodialog.cpp" line="1257"/> + <location filename="modinfodialog.cpp" line="1260"/> <source>Error</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1249"/> + <location filename="modinfodialog.cpp" line="1257"/> <source>Invalid name. Must be a valid file name</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1252"/> + <location filename="modinfodialog.cpp" line="1260"/> <source>A tweak by that name exists</source> <translation type="unfinished"></translation> </message> <message> - <location filename="modinfodialog.cpp" line="1266"/> + <location filename="modinfodialog.cpp" line="1274"/> <source>Create Tweak</source> <translation type="unfinished"></translation> </message> @@ -3870,7 +3870,8 @@ Continue?</source> </message> <message> <location filename="pluginlist.cpp" line="105"/> - <source>The modindex determins the formids of objects originating from this mods.</source> + <source>The modindex determines the formids of objects originating from this mods.</source> + <oldsource>The modindex determins the formids of objects originating from this mods.</oldsource> <translation type="unfinished"></translation> </message> <message> @@ -3905,37 +3906,37 @@ Continue?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="pluginlist.cpp" line="769"/> + <location filename="pluginlist.cpp" line="783"/> <source>This plugin can't be disabled (enforced by the game)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="pluginlist.cpp" line="771"/> + <location filename="pluginlist.cpp" line="785"/> <source><b>Origin</b>: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="pluginlist.cpp" line="773"/> + <location filename="pluginlist.cpp" line="787"/> <source>Author</source> <translation type="unfinished"></translation> </message> <message> - <location filename="pluginlist.cpp" line="776"/> + <location filename="pluginlist.cpp" line="790"/> <source>Description</source> <translation type="unfinished"></translation> </message> <message> - <location filename="pluginlist.cpp" line="779"/> + <location filename="pluginlist.cpp" line="793"/> <source>Missing Masters</source> <translation type="unfinished"></translation> </message> <message> - <location filename="pluginlist.cpp" line="786"/> + <location filename="pluginlist.cpp" line="800"/> <source>Enabled Masters</source> <translation type="unfinished"></translation> </message> <message> - <location filename="pluginlist.cpp" line="957"/> + <location filename="pluginlist.cpp" line="971"/> <source>failed to restore load order for %1</source> <translation type="unfinished"></translation> </message> @@ -5628,22 +5629,26 @@ On Windows XP: </message> <message> <location filename="tutorials/tutorial_conflictresolution_main.js" line="47"/> - <source><img src=":/MO/gui/emblem_conflict_overwrite" /> indicates that the mod overwrites files that are also available in another mod.</source> + <source><img src="qrc:///MO/gui/emblem_conflict_overwrite" /> indicates that the mod overwrites files that are also available in another mod.</source> + <oldsource><img src=":/MO/gui/emblem_conflict_overwrite" /> indicates that the mod overwrites files that are also available in another mod.</oldsource> <translation type="unfinished"></translation> </message> <message> <location filename="tutorials/tutorial_conflictresolution_main.js" line="51"/> - <source><img src=":/MO/gui/emblem_conflict_overwritten" /> indicates that the mod is <b>partially</b> overwritten by another.</source> + <source><img src="qrc:///MO/gui/emblem_conflict_overwritten" /> indicates that the mod is <b>partially</b> overwritten by another.</source> + <oldsource><img src=":/MO/gui/emblem_conflict_overwritten" /> indicates that the mod is <b>partially</b> overwritten by another.</oldsource> <translation type="unfinished"></translation> </message> <message> <location filename="tutorials/tutorial_conflictresolution_main.js" line="55"/> - <source><img src=":/MO/gui/emblem_conflict_mixed" /> indicates that both of the above is true.</source> + <source><img src="qrc:///MO/gui/emblem_conflict_mixed" /> indicates that both of the above is true.</source> + <oldsource><img src=":/MO/gui/emblem_conflict_mixed" /> indicates that both of the above is true.</oldsource> <translation type="unfinished"></translation> </message> <message> <location filename="tutorials/tutorial_conflictresolution_main.js" line="59"/> - <source><img src=":/MO/gui/emblem_conflict_redundant" /> indicates that the mod is completely overwrtten by another. You could as well disable it.</source> + <source><img src="qrc:///MO/gui/emblem_conflict_redundant" /> indicates that the mod is completely overwrtten by another. You could as well disable it.</source> + <oldsource><img src=":/MO/gui/emblem_conflict_redundant" /> indicates that the mod is completely overwrtten by another. You could as well disable it.</oldsource> <translation type="unfinished"></translation> </message> <message> @@ -5684,7 +5689,8 @@ On Windows XP: </message> <message> <location filename="tutorials/tutorial_conflictresolution_main.js" line="108"/> - <source>Please open the "ESPs"-tab...</source> + <source>Please open the "Plugins"-tab...</source> + <oldsource>Please open the "ESPs"-tab...</oldsource> <translation type="unfinished"></translation> </message> <message> @@ -5694,17 +5700,20 @@ On Windows XP: </message> <message> <location filename="tutorials/tutorial_conflictresolution_main.js" line="122"/> - <source>Unlike with file conflicts, MO does not provide help on finding conflicts. The good news is, there already is a perfect tool for that called BOSS. BOSS is available on the Nexus and integrates neatly with MO. Basically, if you don't have BOSS yet, install it once this tutorial is over.</source> + <source>Unlike with file conflicts, MO does not provide help on finding conflicts. The good news is, there already is a perfect tool for that called LOOT. LOOT is available on the Nexus and integrates neatly with MO. Basically, if you don't have LOOT yet, install it once this tutorial is over.</source> + <oldsource>Unlike with file conflicts, MO does not provide help on finding conflicts. The good news is, there already is a perfect tool for that called BOSS. BOSS is available on the Nexus and integrates neatly with MO. Basically, if you don't have BOSS yet, install it once this tutorial is over.</oldsource> <translation type="unfinished"></translation> </message> <message> <location filename="tutorials/tutorial_conflictresolution_main.js" line="128"/> - <source>After you installed BOSS in the default location (follow its instructions), start MO again and BOSS should automatically appear as an Executable...</source> + <source>After you installed LOOT in the default location (follow its instructions), start MO again and LOOT should automatically appear as an Executable...</source> + <oldsource>After you installed BOSS in the default location (follow its instructions), start MO again and BOSS should automatically appear as an Executable...</oldsource> <translation type="unfinished"></translation> </message> <message> <location filename="tutorials/tutorial_conflictresolution_main.js" line="133"/> - <source>When you run BOSS, it will automatically re-organize plugins for best compatibility (overwriting your manual changes). It will also open a report in your browser that warns about incompatibilities. You should read the report, at least for new mods.</source> + <source>When you run LOOT, it will automatically re-organize plugins for best compatibility (overwriting your manual changes). It will also open a report in your browser that warns about incompatibilities. You should read the report, at least for new mods.</source> + <oldsource>When you run BOSS, it will automatically re-organize plugins for best compatibility (overwriting your manual changes). It will also open a report in your browser that warns about incompatibilities. You should read the report, at least for new mods.</oldsource> <translation type="unfinished"></translation> </message> <message> diff --git a/src/tutorials/Highlight.qml b/src/tutorials/Highlight.qml index 55474c91..b6fb7676 100644 --- a/src/tutorials/Highlight.qml +++ b/src/tutorials/Highlight.qml @@ -1,4 +1,4 @@ -import QtQuick 1.1
+import QtQuick 2.7
Rectangle {
radius: 10
diff --git a/src/tutorials/Tooltip.qml b/src/tutorials/Tooltip.qml index 6424d9ab..cca71efa 100644 --- a/src/tutorials/Tooltip.qml +++ b/src/tutorials/Tooltip.qml @@ -1,4 +1,4 @@ -import QtQuick 1.1
+import QtQuick 2.7
Rectangle {
diff --git a/src/tutorials/TooltipArea.qml b/src/tutorials/TooltipArea.qml index 48a50f76..8d404beb 100644 --- a/src/tutorials/TooltipArea.qml +++ b/src/tutorials/TooltipArea.qml @@ -1,4 +1,4 @@ -import QtQuick 1.1
+import QtQuick 2.7
Rectangle {
radius: 2
@@ -17,7 +17,7 @@ Rectangle { anchors.fill: parent
hoverEnabled: true
- onMousePositionChanged: {
+ onPositionChanged: {
if (parent.parent.width - (parent.x + mouseX) < tooltip.width + 50) {
tooltip.x = parent.x + mouseX - 15 - tooltip.width
} else {
diff --git a/src/tutorials/TutorialDescription.qml b/src/tutorials/TutorialDescription.qml index 498573d2..4079b70d 100644 --- a/src/tutorials/TutorialDescription.qml +++ b/src/tutorials/TutorialDescription.qml @@ -1,4 +1,4 @@ -import QtQuick 1.1
+import QtQuick 2.7
// rectangle for description texts
Rectangle {
diff --git a/src/tutorials/TutorialOverlay.qml b/src/tutorials/TutorialOverlay.qml index 15fe9603..47e5065d 100644 --- a/src/tutorials/TutorialOverlay.qml +++ b/src/tutorials/TutorialOverlay.qml @@ -1,4 +1,4 @@ -import QtQuick 1.1
+import QtQuick 2.7
import "tutorials.js" as Logic
Rectangle {
diff --git a/src/tutorials/tutorial_conflictresolution_main.js b/src/tutorials/tutorial_conflictresolution_main.js index 00ca8d67..a60a5c8d 100644 --- a/src/tutorials/tutorial_conflictresolution_main.js +++ b/src/tutorials/tutorial_conflictresolution_main.js @@ -44,19 +44,19 @@ function getTutorialSteps() { },
function() {
unhighlight()
- tutorial.text = qsTr("<img src=\":/MO/gui/emblem_conflict_overwrite\" /> indicates that the mod overwrites files that are also available in another mod.")
+ tutorial.text = qsTr("<img src=\"qrc:///MO/gui/emblem_conflict_overwrite\" /> indicates that the mod overwrites files that are also available in another mod.")
waitForClick()
},
function() {
- tutorial.text = qsTr("<img src=\":/MO/gui/emblem_conflict_overwritten\" /> indicates that the mod is <b>partially</b> overwritten by another.")
+ tutorial.text = qsTr("<img src=\"qrc:///MO/gui/emblem_conflict_overwritten\" /> indicates that the mod is <b>partially</b> overwritten by another.")
waitForClick()
},
function() {
- tutorial.text = qsTr("<img src=\":/MO/gui/emblem_conflict_mixed\" /> indicates that both of the above is true.")
+ tutorial.text = qsTr("<img src=\"qrc:///MO/gui/emblem_conflict_mixed\" /> indicates that both of the above is true.")
waitForClick()
},
function() {
- tutorial.text = qsTr("<img src=\":/MO/gui/emblem_conflict_redundant\" /> indicates that the mod is completely overwrtten by another. You could as well disable it.");
+ tutorial.text = qsTr("<img src=\"qrc:///MO/gui/emblem_conflict_redundant\" /> indicates that the mod is completely overwrtten by another. You could as well disable it.");
waitForClick()
},
function() {
@@ -65,7 +65,7 @@ function getTutorialSteps() { },
function() {
tutorial.text = qsTr("Option A: Switch to the \"Data\"-tab if necessary")
- if (!tutorialControl.waitForTabOpen("tabWidget", 2)) {
+ if (!tutorialControl.waitForTabOpen("tabWidget", 1)) {
highlightItem("tabWidget", false)
waitForClick()
} else {
@@ -105,7 +105,7 @@ function getTutorialSteps() { waitForClick()
},
function() {
- tutorial.text = qsTr("Please open the \"ESPs\"-tab...")
+ tutorial.text = qsTr("Please open the \"Plugins\"-tab...")
highlightItem("tabWidget", true)
if (!tutorialControl.waitForTabOpen("tabWidget", 0)) {
nextStep()
@@ -120,17 +120,17 @@ function getTutorialSteps() { function() {
unhighlight()
tutorial.text = qsTr("Unlike with file conflicts, MO does not provide help on finding conflicts. The good news is, there "
- +"already is a perfect tool for that called BOSS. BOSS is available on the Nexus and integrates "
- +"neatly with MO. Basically, if you don't have BOSS yet, install it once this tutorial is over.")
+ +"already is a perfect tool for that called LOOT. LOOT is available on the Nexus and integrates "
+ +"neatly with MO. Basically, if you don't have LOOT yet, install it once this tutorial is over.")
waitForClick()
},
function() {
- tutorial.text = qsTr("After you installed BOSS in the default location (follow its instructions), start MO again and BOSS should automatically appear as an Executable...")
+ tutorial.text = qsTr("After you installed LOOT in the default location (follow its instructions), start MO again and LOOT should automatically appear as an Executable...")
highlightItem("startGroup", false)
waitForClick()
},
function() {
- tutorial.text = qsTr("When you run BOSS, it will automatically re-organize plugins for best compatibility (overwriting your manual changes). "
+ tutorial.text = qsTr("When you run LOOT, it will automatically re-organize plugins for best compatibility (overwriting your manual changes). "
+"It will also open a report in your browser that warns about incompatibilities. You should read the report, at least "
+"for new mods.")
waitForClick()
diff --git a/src/tutorials/tutorial_firststeps_settings.js b/src/tutorials/tutorial_firststeps_settings.js index dd5c6e9c..1dd77d2e 100644 --- a/src/tutorials/tutorial_firststeps_settings.js +++ b/src/tutorials/tutorial_firststeps_settings.js @@ -4,7 +4,7 @@ function getTutorialSteps() function() {
highlightItem("tabWidget", true)
tutorial.text = qsTr("You can use your regular browser to download from Nexus.\nPlease open the \"Nexus\"-tab")
- tutorialControl.waitForTabOpen("tabWidget", 1)
+ tutorialControl.waitForTabOpen("tabWidget", 2)
},
function() {
diff --git a/src/tutorials/tutorial_primer_main.js b/src/tutorials/tutorial_primer_main.js index 7ef65df9..5d5597c1 100644 --- a/src/tutorials/tutorial_primer_main.js +++ b/src/tutorials/tutorial_primer_main.js @@ -4,29 +4,40 @@ var tooltips = []
function tooltipWidget(widgetName, explanation, maxheight, clickable) {
- var rect = tutorialControl.getRect(widgetName)
- var component = Qt.createComponent("TooltipArea.qml")
- if (component.status === Component.Error) {
- console.log("b" + component.errorString())
- }
- if (typeof clickable === 'undefined') {
- clickable = false
- }
- if ((typeof maxheight === 'undefined') || maxheight === 0) {
- maxheight = rect.height
- }
+ var component = Qt.createComponent("TooltipArea.qml")
+ if (component.status === Component.Ready)
+ finishCreation(component, widgetName, explanation, maxheight, clickable);
+ else
+ component.statusChanged.connect(function() {
+ finishCreation(component, widgetName, explanation, maxheight, clickable);
+ });
+}
- var obj = component.createObject(tutToplevel,
- { "x" : rect.x,
- "y" : rect.y,
- "width" : rect.width,
- "height" : maxheight
- })
- obj.tooltipText = explanation
- obj.clickable = clickable
- obj.visible = true
+function finishCreation(component, widgetName, explanation, maxheight, clickable) {
+ if (component.status === Component.Ready) {
+ var rect = tutorialControl.getRect(widgetName)
+ if (typeof clickable === 'undefined') {
+ clickable = false
+ }
+ if ((typeof maxheight === 'undefined') || maxheight === 0) {
+ maxheight = rect.height
+ }
- tooltips.push(obj)
+ var obj = component.createObject(tutToplevel,
+ {
+ "x": rect.x,
+ "y": rect.y,
+ "width": rect.width,
+ "height": maxheight
+ })
+ obj.tooltipText = explanation
+ obj.clickable = clickable
+ obj.visible = true
+
+ tooltips.push(obj)
+ } else if (component.status === Component.Error) {
+ console.log("Error loading component: " + component.errorString())
+ }
}
function tooltipAction(actionName, explanation, maxheight, clickable) {
@@ -79,16 +90,16 @@ function setupTooptips() { tooltipWidget("bossButton", qsTr("Automatically sort plugins using the bundled LOOT application."))
tooltipWidget("espFilterEdit", qsTr("Quickly filter plugin list as you type."))
break
+ // case 1:
+ // tooltipWidget("bsaList", qsTr("All the asset archives (.bsa files) for all active mods."))
+ // break
case 1:
- tooltipWidget("bsaList", qsTr("All the asset archives (.bsa files) for all active mods."))
- break
- case 2:
tooltipWidget("dataTree", qsTr("The directory tree and all files that the program will see."))
break
- case 3:
+ case 2:
tooltipWidget("savegameList", qsTr("Save game browser. Shows all the saves for the current profile and whether or not the current mod-load status is correct."))
break
- case 4:
+ case 3:
tooltipWidget("downloadView", qsTr("Shows the mods that have been downloaded and if they’ve been installed."))
break
}
diff --git a/src/tutorials/tutorials_installdialog.qml b/src/tutorials/tutorials_installdialog.qml index 33f0a660..9cc21097 100644 --- a/src/tutorials/tutorials_installdialog.qml +++ b/src/tutorials/tutorials_installdialog.qml @@ -1,4 +1,4 @@ -import QtQuick 1.1
+import QtQuick 2.7
TutorialOverlay {
id: tutorial
diff --git a/src/tutorials/tutorials_mainwindow.qml b/src/tutorials/tutorials_mainwindow.qml index 0012b686..0d660a29 100644 --- a/src/tutorials/tutorials_mainwindow.qml +++ b/src/tutorials/tutorials_mainwindow.qml @@ -1,4 +1,4 @@ -import QtQuick 1.1
+import QtQuick 2.7
TutorialOverlay {
id: tutorial
diff --git a/src/tutorials/tutorials_modinfodialog.qml b/src/tutorials/tutorials_modinfodialog.qml index e9a56cb3..74f6adfa 100644 --- a/src/tutorials/tutorials_modinfodialog.qml +++ b/src/tutorials/tutorials_modinfodialog.qml @@ -1,4 +1,4 @@ -import QtQuick 1.1
+import QtQuick 2.7
TutorialOverlay {
id: tutorial
diff --git a/src/tutorials/tutorials_nexusdialog.qml b/src/tutorials/tutorials_nexusdialog.qml index 6a7af6d6..9fb9aafd 100644 --- a/src/tutorials/tutorials_nexusdialog.qml +++ b/src/tutorials/tutorials_nexusdialog.qml @@ -1,4 +1,4 @@ -import QtQuick 1.1
+import QtQuick 2.7
TutorialOverlay {
id: tutorial
diff --git a/src/tutorials/tutorials_settingsdialog.qml b/src/tutorials/tutorials_settingsdialog.qml index e9a56cb3..74f6adfa 100644 --- a/src/tutorials/tutorials_settingsdialog.qml +++ b/src/tutorials/tutorials_settingsdialog.qml @@ -1,4 +1,4 @@ -import QtQuick 1.1
+import QtQuick 2.7
TutorialOverlay {
id: tutorial
|
