diff options
| author | Tannin <devnull@localhost> | 2015-01-06 19:31:53 +0100 |
|---|---|---|
| committer | Tannin <devnull@localhost> | 2015-01-06 19:31:53 +0100 |
| commit | 9edc39633b82b5e02d33c4b0a395fe110af28eb4 (patch) | |
| tree | 90d627525292cb87f3d4b7330b1847a17b568b61 /src/tutorials/tutorial_primer_main.js | |
| parent | b415db619ed027ec2acd283983624293274b090f (diff) | |
- bugfixes
- moved more functionality to game-plugins
- further decoupled management functionality from the UI
- created another "tutorial" which is only a single page with relevant parts of
the ui highlighted with info as tooltips
Diffstat (limited to 'src/tutorials/tutorial_primer_main.js')
| -rw-r--r-- | src/tutorials/tutorial_primer_main.js | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/src/tutorials/tutorial_primer_main.js b/src/tutorials/tutorial_primer_main.js new file mode 100644 index 00000000..12df2c86 --- /dev/null +++ b/src/tutorials/tutorial_primer_main.js @@ -0,0 +1,111 @@ +//TL Overview#5
+
+
+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 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)
+}
+
+function tooltipAction(actionName, explanation, maxheight, clickable) {
+ var rect = tutorialControl.getActionRect(actionName)
+ var component = Qt.createComponent("TooltipArea.qml")
+ if (typeof clickable === 'undefined') {
+ clickable = false
+ }
+ if ((typeof maxheight === 'undefined') || maxheight === 0) {
+ maxheight = rect.height
+ }
+ 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)
+}
+
+function setupTooptips() {
+ for (var tip in tooltips) {
+ tooltips[tip].destroy()
+ }
+ tooltips = []
+
+ tooltipWidget("modList", qsTr("This window shows all the mods that are installed. The column headers can be used for sorting. Only checked mods are active in the current profile."))
+ tooltipWidget("profileBox", qsTr("Each profile is a separate set of enabled mods and ini settings."))
+ tooltipWidget("groupCombo", qsTr("The dropdown allows various ways of grouping the mods shown in the mod list."))
+ tooltipWidget("displayCategoriesBtn", qsTr("Show/hide the category pane."))
+ tooltipWidget("modFilterEdit", qsTr("Quickly filter the mod list as you type."))
+ tooltipWidget("qt_tabwidget_tabbar", qsTr("Switch between information views."), 0, true)
+ tooltipWidget("categoriesList", qsTr("This shows mod categories and some meta categories (in angle-brackets). Select some to filter the mod list. For example select \"<Checked>\" to show only active mods."))
+ tooltipWidget("executablesListBox", qsTr("Customizable list for choosing the program to run."))
+ tooltipWidget("startButton", qsTr("When this button is clicked, Mod Organizer creates a virtual directory structure then runs the program selected to the left."))
+ tooltipWidget("linkButton", qsTr("Will create a shortcut for quick access. The shortcut can be placed in the toolbar at the top, in the Start Menu or on the Windows Desktop."))
+ tooltipWidget("logList", qsTr("Log messages produced by MO. Please note that messages with a light bulb usually don't require your attention."))
+
+ tooltipAction("actionSettings", qsTr("Configure Mod Organizer."))
+ tooltipAction("actionProblems", qsTr("Reports potential Problems about the current setup."))
+ tooltipAction("actionUpdate", qsTr("Activates if there is an update for MO. Please note that if, for any reason, MO can't communicate with NMM, this will not work either."))
+
+ switch (manager.findControl("tabWidget").currentIndex) {
+ case 0:
+ tooltipWidget("espList", qsTr("Plugins (esp/esm files) of the mods in the current profile. They need to be checked to be loaded."))
+ 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 2:
+ tooltipWidget("dataTree", qsTr("The directory tree and all files that the program will see."))
+ break
+ case 3:
+ 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:
+ tooltipWidget("downloadView", qsTr("Shows the mods that have been downloaded and if they’ve been installed."))
+ break
+ }
+}
+
+function getTutorialSteps() {
+ return [
+ function() {
+ tutorial.text = qsTr("Click to quit")
+
+ setupTooptips()
+
+ onTabChanged(setupTooptips)
+
+ waitForClick()
+ }
+ ]
+}
+
+
|
