diff options
| author | Silarn <jrim@rimpo.org> | 2019-01-28 18:36:19 -0600 |
|---|---|---|
| committer | Silarn <jrim@rimpo.org> | 2019-02-18 21:28:24 -0600 |
| commit | 4932c52136ce1c8a704c5322e26ca75e55726a15 (patch) | |
| tree | b3f7fe778da2a1491cadacb8467552147f1a6d3f | |
| parent | 23ff0bea74c05599184d4049a17510b62a49791f (diff) | |
Add counter for API requests
| -rw-r--r-- | src/mainwindow.cpp | 26 | ||||
| -rw-r--r-- | src/mainwindow.h | 2 | ||||
| -rw-r--r-- | src/mainwindow.ui | 3437 | ||||
| -rw-r--r-- | src/nexusinterface.cpp | 7 | ||||
| -rw-r--r-- | src/nexusinterface.h | 1 |
5 files changed, 1769 insertions, 1704 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index f875c95c..2f39bf7a 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -363,6 +363,12 @@ MainWindow::MainWindow(QSettings &initSettings ui->bossButton->setToolTip(tr("There is no supported sort mechanism for this game. You will probably have to use a third-party tool.")); } + ui->apiRequests->setAutoFillBackground(true); + QPalette palette = ui->apiRequests->palette(); + palette.setColor(ui->apiRequests->backgroundRole(), Qt::darkGreen); + palette.setColor(ui->apiRequests->foregroundRole(), Qt::white); + ui->apiRequests->setPalette(palette); + connect(ui->savegameList, SIGNAL(itemEntered(QListWidgetItem*)), this, SLOT(saveSelectionChanged(QListWidgetItem*))); connect(ui->modList, SIGNAL(dropModeUpdate(bool)), m_OrganizerCore.modList(), SLOT(dropModeUpdate(bool))); @@ -398,6 +404,7 @@ MainWindow::MainWindow(QSettings &initSettings this, SLOT(updateWindowTitle(const QString&, bool))); connect(NexusInterface::instance(&pluginContainer)->getAccessManager(), SIGNAL(credentialsReceived(const QString&, bool)), NexusInterface::instance(&m_PluginContainer), SLOT(setRateMax(const QString&, bool))); + connect(NexusInterface::instance(&pluginContainer), SIGNAL(requestsChanged(int, int)), this, SLOT(updateAPICounter(int, int))); connect(&TutorialManager::instance(), SIGNAL(windowTutorialFinished(QString)), this, SLOT(windowTutorialFinished(QString))); connect(ui->tabWidget, SIGNAL(currentChanged(int)), &TutorialManager::instance(), SIGNAL(tabChanged(int))); @@ -5619,6 +5626,25 @@ void MainWindow::nxmRequestFailed(QString gameName, int modID, int, QVariant, in } +void MainWindow::updateAPICounter(int queueCount, int requestsRemaining) +{ + ui->apiRequests->setText(QString("API: Q: %1 | T: %2").arg(queueCount).arg(requestsRemaining)); + if (requestsRemaining > 150) { + QPalette palette = ui->apiRequests->palette(); + palette.setColor(ui->apiRequests->backgroundRole(), Qt::darkGreen); + ui->apiRequests->setPalette(palette); + } else if (requestsRemaining < 50) { + QPalette palette = ui->apiRequests->palette(); + palette.setColor(ui->apiRequests->backgroundRole(), Qt::darkRed); + ui->apiRequests->setPalette(palette); + } else { + QPalette palette = ui->apiRequests->palette(); + palette.setColor(ui->apiRequests->backgroundRole(), Qt::darkYellow); + ui->apiRequests->setPalette(palette); + } +} + + BSA::EErrorCode MainWindow::extractBSA(BSA::Archive &archive, BSA::Folder::Ptr folder, const QString &destination, QProgressDialog &progress) { diff --git a/src/mainwindow.h b/src/mainwindow.h index bf475120..900f7cba 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -515,6 +515,8 @@ private slots: void nxmDownloadURLs(QString, int modID, int fileID, QVariant userData, QVariant resultData, int requestID); void nxmRequestFailed(QString gameName, int modID, int fileID, QVariant userData, int requestID, QNetworkReply::NetworkError error, const QString &errorString); + void updateAPICounter(int queueCount, int requestsRemaining); + void editCategories(); void deselectFilters(); diff --git a/src/mainwindow.ui b/src/mainwindow.ui index 72cfa21b..1aa7ce4c 100644 --- a/src/mainwindow.ui +++ b/src/mainwindow.ui @@ -1,1703 +1,1734 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>MainWindow</class>
- <widget class="QMainWindow" name="MainWindow">
- <property name="geometry">
- <rect>
- <x>0</x>
- <y>0</y>
- <width>926</width>
- <height>710</height>
- </rect>
- </property>
- <property name="acceptDrops">
- <bool>true</bool>
- </property>
- <property name="windowTitle">
- <string notr="true">Mod Organizer</string>
- </property>
- <property name="windowIcon">
- <iconset>
- <normaloff>mo_icon.ico</normaloff>mo_icon.ico</iconset>
- </property>
- <property name="documentMode">
- <bool>false</bool>
- </property>
- <widget class="QWidget" name="centralWidget">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <layout class="QHBoxLayout" name="horizontalLayout_8">
- <item>
- <widget class="QSplitter" name="topLevelSplitter">
- <property name="orientation">
- <enum>Qt::Vertical</enum>
- </property>
- <widget class="QWidget" name="horizontalLayoutWidget_2">
- <layout class="QHBoxLayout" name="horizontalLayout_10" stretch="0,2">
- <item>
- <layout class="QVBoxLayout" name="verticalLayout_8">
- <item>
- <widget class="QGroupBox" name="categoriesGroup">
- <property name="title">
- <string>Categories</string>
- </property>
- <layout class="QVBoxLayout" name="verticalLayout_10" stretch="6,0,0">
- <property name="spacing">
- <number>0</number>
- </property>
- <property name="leftMargin">
- <number>3</number>
- </property>
- <property name="topMargin">
- <number>7</number>
- </property>
- <property name="rightMargin">
- <number>3</number>
- </property>
- <property name="bottomMargin">
- <number>1</number>
- </property>
- <item>
- <widget class="QTreeWidget" name="categoriesList">
- <property name="minimumSize">
- <size>
- <width>120</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize">
- <size>
- <width>214</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="contextMenuPolicy">
- <enum>Qt::CustomContextMenu</enum>
- </property>
- <property name="selectionMode">
- <enum>QAbstractItemView::ExtendedSelection</enum>
- </property>
- <property name="indentation">
- <number>0</number>
- </property>
- <property name="uniformRowHeights">
- <bool>true</bool>
- </property>
- <attribute name="headerVisible">
- <bool>false</bool>
- </attribute>
- <column>
- <property name="text">
- <string notr="true">1</string>
- </property>
- </column>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="clickBlankButton">
- <property name="enabled">
- <bool>false</bool>
- </property>
- <property name="sizePolicy">
- <sizepolicy hsizetype="Minimum" vsizetype="Maximum">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>0</width>
- <height>25</height>
- </size>
- </property>
- <property name="text">
- <string>Clear</string>
- </property>
- <property name="flat">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QWidget" name="widget" native="true">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <layout class="QHBoxLayout" name="horizontalLayout_11">
- <item>
- <widget class="QRadioButton" name="categoriesAndBtn">
- <property name="toolTip">
- <string>If checked, only mods that match all selected categories are displayed.</string>
- </property>
- <property name="text">
- <string>And</string>
- </property>
- <property name="checked">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QRadioButton" name="categoriesOrBtn">
- <property name="toolTip">
- <string>If checked, all mods that match at least one of the selected categories are displayed.</string>
- </property>
- <property name="text">
- <string>Or</string>
- </property>
- </widget>
- </item>
- </layout>
- </widget>
- </item>
- </layout>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <widget class="QSplitter" name="splitter">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <widget class="QWidget" name="layoutWidget">
- <layout class="QVBoxLayout" name="verticalLayout">
- <property name="spacing">
- <number>2</number>
- </property>
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout_6" stretch="0,1,0,0,0,0,0,0,0">
- <item>
- <widget class="QLabel" name="label_3">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="text">
- <string>Profile</string>
- </property>
- <property name="buddy">
- <cstring>profileBox</cstring>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QComboBox" name="profileBox">
- <property name="toolTip">
- <string>Pick a module collection</string>
- </property>
- <property name="whatsThis">
- <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-<html><head><meta name="qrichtext" content="1" /><style type="text/css">
-p, li { white-space: pre-wrap; }
-</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Create profiles here. Each profile contains its own list of active mods and esps. This way you can quickly switch between setups for different play throughs.</span></p>
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Please note that right now your esp load order is not kept seperate for different profiles.</span></p></body></html></string>
- </property>
- </widget>
- </item>
- <item>
- <spacer name="horizontalSpacer">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <widget class="QPushButton" name="listOptionsBtn">
- <property name="maximumSize">
- <size>
- <width>16777215</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="toolTip">
- <string>Open list options...</string>
- </property>
- <property name="whatsThis">
- <string>Refresh list. This is usually not necessary unless you modified data outside the program.</string>
- </property>
- <property name="text">
- <string/>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/settings</normaloff>:/MO/gui/settings</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>16</width>
- <height>16</height>
- </size>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="openFolderMenu">
- <property name="toolTip">
- <string>Show Open Folders menu...</string>
- </property>
- <property name="text">
- <string/>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/open_folder</normaloff>:/MO/gui/open_folder</iconset>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="restoreModsButton">
- <property name="toolTip">
- <string>Restore Backup...</string>
- </property>
- <property name="text">
- <string notr="true"/>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/restore</normaloff>:/MO/gui/restore</iconset>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="saveModsButton">
- <property name="toolTip">
- <string>Create Backup</string>
- </property>
- <property name="text">
- <string notr="true"/>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/backup</normaloff>:/MO/gui/backup</iconset>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="activeModslabel">
- <property name="text">
- <string>Active:</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="LCDNumber" name="activeModsCounter">
- <property name="minimumSize">
- <size>
- <width>0</width>
- <height>26</height>
- </size>
- </property>
- <property name="whatsThis">
- <string>This provides statistics about the mod list. The total number of active mod is normally displayed. Other statistics may be accessed with the tooltip of this counter.</string>
- </property>
- <property name="frameShadow">
- <enum>QFrame::Sunken</enum>
- </property>
- <property name="digitCount">
- <number>5</number>
- </property>
- <property name="segmentStyle">
- <enum>QLCDNumber::Flat</enum>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <widget class="ModListView" name="modList">
- <property name="minimumSize">
- <size>
- <width>330</width>
- <height>400</height>
- </size>
- </property>
- <property name="palette">
- <palette>
- <active>
- <colorrole role="ButtonText">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>64</red>
- <green>64</green>
- <blue>64</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="Link">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>255</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="LinkVisited">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>170</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- </active>
- <inactive>
- <colorrole role="ButtonText">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>64</red>
- <green>64</green>
- <blue>64</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="Link">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>255</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="LinkVisited">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>170</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- </inactive>
- <disabled>
- <colorrole role="ButtonText">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>120</red>
- <green>120</green>
- <blue>120</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="Link">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>255</red>
- <green>0</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- <colorrole role="LinkVisited">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>0</red>
- <green>170</green>
- <blue>0</blue>
- </color>
- </brush>
- </colorrole>
- </disabled>
- </palette>
- </property>
- <property name="contextMenuPolicy">
- <enum>Qt::CustomContextMenu</enum>
- </property>
- <property name="toolTip">
- <string>List of available mods.</string>
- </property>
- <property name="whatsThis">
- <string>This is a list of installed mods. Use the checkboxes to activate/deactivate mods and drag & drop mods to change their "installation" orders.</string>
- </property>
- <property name="styleSheet">
- <string notr="true"/>
- </property>
- <property name="editTriggers">
- <set>QAbstractItemView::EditKeyPressed|QAbstractItemView::SelectedClicked</set>
- </property>
- <property name="showDropIndicator" stdset="0">
- <bool>true</bool>
- </property>
- <property name="dragEnabled">
- <bool>true</bool>
- </property>
- <property name="dragDropMode">
- <enum>QAbstractItemView::DragDrop</enum>
- </property>
- <property name="defaultDropAction">
- <enum>Qt::MoveAction</enum>
- </property>
- <property name="alternatingRowColors">
- <bool>true</bool>
- </property>
- <property name="selectionMode">
- <enum>QAbstractItemView::ExtendedSelection</enum>
- </property>
- <property name="selectionBehavior">
- <enum>QAbstractItemView::SelectRows</enum>
- </property>
- <property name="indentation">
- <number>20</number>
- </property>
- <property name="uniformRowHeights">
- <bool>true</bool>
- </property>
- <property name="itemsExpandable">
- <bool>true</bool>
- </property>
- <property name="sortingEnabled">
- <bool>true</bool>
- </property>
- <property name="expandsOnDoubleClick">
- <bool>false</bool>
- </property>
- <attribute name="headerDefaultSectionSize">
- <number>35</number>
- </attribute>
- <attribute name="headerShowSortIndicator" stdset="0">
- <bool>true</bool>
- </attribute>
- <attribute name="headerStretchLastSection">
- <bool>false</bool>
- </attribute>
- </widget>
- </item>
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout_4" stretch="0,0,1,1,0,1,1,1">
- <item>
- <widget class="QPushButton" name="displayCategoriesBtn">
- <property name="maximumSize">
- <size>
- <width>20</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="text">
- <string notr="true">x</string>
- </property>
- <property name="iconSize">
- <size>
- <width>20</width>
- <height>20</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="label_2">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Minimum" vsizetype="Preferred">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="text">
- <string>Filter</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="currentCategoryLabel">
- <property name="font">
- <font>
- <pointsize>8</pointsize>
- <italic>true</italic>
- </font>
- </property>
- </widget>
- </item>
- <item>
- <spacer name="horizontalSpacer_5">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item alignment="Qt::AlignLeft">
- <widget class="QPushButton" name="clearFiltersButton">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>0</width>
- <height>22</height>
- </size>
- </property>
- <property name="baseSize">
- <size>
- <width>95</width>
- <height>0</height>
- </size>
- </property>
- <property name="visible">
- <bool>false</bool>
- </property>
- <property name="layoutDirection">
- <enum>Qt::RightToLeft</enum>
- </property>
- <property name="styleSheet">
- <string notr="true">border:1px solid #ff0000;</string>
- </property>
- <property name="text">
- <string>Clear all Filters</string>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/edit_clear</normaloff>:/MO/gui/edit_clear</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>12</width>
- <height>12</height>
- </size>
- </property>
- </widget>
- </item>
- <item>
- <spacer name="horizontalSpacer_4">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <widget class="QComboBox" name="groupCombo">
- <property name="baseSize">
- <size>
- <width>220</width>
- <height>0</height>
- </size>
- </property>
- <property name="focusPolicy">
- <enum>Qt::ClickFocus</enum>
- </property>
- <item>
- <property name="text">
- <string>No groups</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Categories</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Nexus IDs</string>
- </property>
- </item>
- </widget>
- </item>
- <item>
- <widget class="MOBase::LineEditClear" name="modFilterEdit">
- <property name="baseSize">
- <size>
- <width>220</width>
- <height>0</height>
- </size>
- </property>
- <property name="placeholderText">
- <string>Filter</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="layoutWidget_2">
- <layout class="QVBoxLayout" name="verticalLayout_2">
- <item>
- <widget class="QFrame" name="startGroup">
- <layout class="QHBoxLayout" name="horizontalLayout_5" stretch="1,0">
- <item>
- <widget class="QComboBox" name="executablesListBox">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>0</width>
- <height>40</height>
- </size>
- </property>
- <property name="font">
- <font>
- <pointsize>9</pointsize>
- <weight>75</weight>
- <bold>true</bold>
- </font>
- </property>
- <property name="toolTip">
- <string>Pick a program to run.</string>
- </property>
- <property name="whatsThis">
- <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-<html><head><meta name="qrichtext" content="1" /><style type="text/css">
-p, li { white-space: pre-wrap; }
-</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Choose the program to run. Once you start using ModOrganizer, you should always run your game and tools from here or through shortcuts created here, otherwise mods installed through MO will not be visible.</span></p>
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You can add new Tools to this list, but I can't promise tools I haven't tested will work.</span></p></body></html></string>
- </property>
- <property name="iconSize">
- <size>
- <width>32</width>
- <height>32</height>
- </size>
- </property>
- <property name="frame">
- <bool>false</bool>
- </property>
- </widget>
- </item>
- <item>
- <layout class="QVBoxLayout" name="verticalLayout_12" stretch="0,0">
- <item>
- <widget class="QPushButton" name="startButton">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>120</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize">
- <size>
- <width>16777215</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="font">
- <font>
- <pointsize>10</pointsize>
- <weight>75</weight>
- <bold>true</bold>
- </font>
- </property>
- <property name="toolTip">
- <string>Run program</string>
- </property>
- <property name="whatsThis">
- <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-<html><head><meta name="qrichtext" content="1" /><style type="text/css">
-p, li { white-space: pre-wrap; }
-</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Run the selected program with ModOrganizer enabled.</span></p></body></html></string>
- </property>
- <property name="locale">
- <locale language="English" country="UnitedStates"/>
- </property>
- <property name="text">
- <string>Run</string>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/run</normaloff>:/MO/gui/run</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>36</width>
- <height>36</height>
- </size>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="linkButton">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>140</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize">
- <size>
- <width>16777215</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="baseSize">
- <size>
- <width>0</width>
- <height>0</height>
- </size>
- </property>
- <property name="toolTip">
- <string>Create a shortcut in your start menu or on the desktop to the specified program</string>
- </property>
- <property name="whatsThis">
- <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-<html><head><meta name="qrichtext" content="1" /><style type="text/css">
-p, li { white-space: pre-wrap; }
-</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">This creates a start menu shortcut that directly starts the selected program with the MO active.</span></p></body></html></string>
- </property>
- <property name="text">
- <string>Shortcut</string>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/link</normaloff>:/MO/gui/link</iconset>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- </layout>
- </widget>
- </item>
- <item>
- <widget class="QTabWidget" name="tabWidget">
- <property name="minimumSize">
- <size>
- <width>340</width>
- <height>250</height>
- </size>
- </property>
- <property name="maximumSize">
- <size>
- <width>16777215</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="contextMenuPolicy">
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="tabShape">
- <enum>QTabWidget::Rounded</enum>
- </property>
- <property name="currentIndex">
- <number>0</number>
- </property>
- <widget class="QWidget" name="espTab">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="maximumSize">
- <size>
- <width>16777215</width>
- <height>16777215</height>
- </size>
- </property>
- <attribute name="title">
- <string>Plugins</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_4">
- <property name="leftMargin">
- <number>6</number>
- </property>
- <property name="topMargin">
- <number>6</number>
- </property>
- <property name="rightMargin">
- <number>6</number>
- </property>
- <property name="bottomMargin">
- <number>0</number>
- </property>
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout_7">
- <item>
- <widget class="QPushButton" name="bossButton">
- <property name="visible">
- <bool>true</bool>
- </property>
- <property name="text">
- <string>Sort</string>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/sort</normaloff>:/MO/gui/sort</iconset>
- </property>
- </widget>
- </item>
- <item>
- <spacer name="horizontalSpacer_2">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <widget class="QPushButton" name="restoreButton">
- <property name="toolTip">
- <string>Restore Backup...</string>
- </property>
- <property name="text">
- <string notr="true"/>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/restore</normaloff>:/MO/gui/restore</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>16</width>
- <height>16</height>
- </size>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="saveButton">
- <property name="toolTip">
- <string>Create Backup</string>
- </property>
- <property name="text">
- <string notr="true"/>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/backup</normaloff>:/MO/gui/backup</iconset>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="activePluginsLabel">
- <property name="text">
- <string>Active:</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="LCDNumber" name="activePluginsCounter">
- <property name="minimumSize">
- <size>
- <width>0</width>
- <height>26</height>
- </size>
- </property>
- <property name="whatsThis">
- <string>This provides statistics about the plugin list. The total number of active plugins is normally displayed. Other statistics may be accessed with the tooltip of this counter.</string>
- </property>
- <property name="frameShadow">
- <enum>QFrame::Sunken</enum>
- </property>
- <property name="digitCount">
- <number>4</number>
- </property>
- <property name="segmentStyle">
- <enum>QLCDNumber::Flat</enum>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <widget class="PluginListView" name="espList">
- <property name="minimumSize">
- <size>
- <width>250</width>
- <height>250</height>
- </size>
- </property>
- <property name="palette">
- <palette>
- <active>
- <colorrole role="ButtonText">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>64</red>
- <green>64</green>
- <blue>64</blue>
- </color>
- </brush>
- </colorrole>
- </active>
- <inactive>
- <colorrole role="ButtonText">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>64</red>
- <green>64</green>
- <blue>64</blue>
- </color>
- </brush>
- </colorrole>
- </inactive>
- <disabled>
- <colorrole role="ButtonText">
- <brush brushstyle="SolidPattern">
- <color alpha="255">
- <red>120</red>
- <green>120</green>
- <blue>120</blue>
- </color>
- </brush>
- </colorrole>
- </disabled>
- </palette>
- </property>
- <property name="contextMenuPolicy">
- <enum>Qt::CustomContextMenu</enum>
- </property>
- <property name="toolTip">
- <string>List of available esp/esm files</string>
- </property>
- <property name="whatsThis">
- <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-<html><head><meta name="qrichtext" content="1" /><style type="text/css">
-p, li { white-space: pre-wrap; }
-</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">This list contains the esps, esms, and esls contained in the active mods. These require their own load order. Use drag&amp;drop to modify this load order. Please note that MO will only save the load order for mods that are active/checked.<br />There is a great tool named &quot;BOSS&quot; to automatically sort these files.</span></p></body></html></string>
- </property>
- <property name="editTriggers">
- <set>QAbstractItemView::EditKeyPressed|QAbstractItemView::SelectedClicked</set>
- </property>
- <property name="dragEnabled">
- <bool>true</bool>
- </property>
- <property name="dragDropOverwriteMode">
- <bool>false</bool>
- </property>
- <property name="dragDropMode">
- <enum>QAbstractItemView::InternalMove</enum>
- </property>
- <property name="defaultDropAction">
- <enum>Qt::MoveAction</enum>
- </property>
- <property name="alternatingRowColors">
- <bool>true</bool>
- </property>
- <property name="selectionMode">
- <enum>QAbstractItemView::ExtendedSelection</enum>
- </property>
- <property name="selectionBehavior">
- <enum>QAbstractItemView::SelectRows</enum>
- </property>
- <property name="indentation">
- <number>0</number>
- </property>
- <property name="uniformRowHeights">
- <bool>true</bool>
- </property>
- <property name="itemsExpandable">
- <bool>false</bool>
- </property>
- <property name="sortingEnabled">
- <bool>true</bool>
- </property>
- <property name="expandsOnDoubleClick">
- <bool>false</bool>
- </property>
- <attribute name="headerStretchLastSection">
- <bool>false</bool>
- </attribute>
- </widget>
- </item>
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout_3">
- <item>
- <widget class="MOBase::LineEditClear" name="espFilterEdit">
- <property name="text">
- <string/>
- </property>
- <property name="placeholderText">
- <string>Filter</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="bsaTab">
- <property name="visible">
- <bool>false</bool>
- </property>
- <attribute name="title">
- <string>Archives</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_9">
- <property name="leftMargin">
- <number>6</number>
- </property>
- <property name="topMargin">
- <number>6</number>
- </property>
- <property name="rightMargin">
- <number>6</number>
- </property>
- <property name="bottomMargin">
- <number>6</number>
- </property>
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout_9" stretch="0">
- <item>
- <widget class="QLabel" name="managedArchiveLabel">
- <property name="toolTip">
- <string><html><head/><body><p>BSAs / BA2s are bundles of game assets (textures, scripts, etc.). By default, the engine loads these bundles in a separate step from loose files. <p>Their load order is specified by the priority of the corresponding plugin (right pane, plugins tab).</p><p>If there is a matching plugin, the game will load them no matter what.</p></body></html></string>
- </property>
- <property name="text">
- <string><html><head/><body><p>Currently detected archives. (<a href="#"><span style=" text-decoration: underline; color:#0000ff;">What is an archive?</span></a>)</p></body></html></string>
- </property>
- <property name="wordWrap">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <widget class="MOBase::SortableTreeWidget" name="bsaList" native="true">
- <property name="contextMenuPolicy">
- <enum>Qt::CustomContextMenu</enum>
- </property>
- <property name="toolTip">
- <string>List of available BS Archives. Archives not checked here are not managed by MO and ignore installation order.</string>
- </property>
- <property name="whatsThis">
- <string>BSA files are archives (comparable to .zip files) that contain data assets (meshes, textures, ...) to be used by the game. As such they "compete" with loose files in your data directory over which is loaded.
- By default, BSAs that share their base name with an enabled ESP (i.e. plugin.esp and plugin.bsa) are automatically loaded and will have precedence over all loose files, the installation order you set up to the left is then ignored!
-
- BSAs checked here are loaded in such a way that your installation order is obeyed properly.</string>
- </property>
- <property name="showDropIndicator" stdset="0">
- <bool>false</bool>
- </property>
- <property name="dragEnabled" stdset="0">
- <bool>false</bool>
- </property>
- <property name="dragDropOverwriteMode" stdset="0">
- <bool>false</bool>
- </property>
- <property name="indentation" stdset="0">
- <number>20</number>
- </property>
- <property name="itemsExpandable" stdset="0">
- <bool>true</bool>
- </property>
- <property name="columnCount" stdset="0">
- <number>1</number>
- </property>
- <column>
- <property name="text">
- <string notr="true">Archives</string>
- </property>
- </column>
- </widget>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="dataTab">
- <attribute name="title">
- <string>Data</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_5">
- <property name="leftMargin">
- <number>6</number>
- </property>
- <property name="topMargin">
- <number>6</number>
- </property>
- <property name="rightMargin">
- <number>6</number>
- </property>
- <property name="bottomMargin">
- <number>6</number>
- </property>
- <item>
- <widget class="QPushButton" name="btnRefreshData">
- <property name="toolTip">
- <string>refresh data-directory overview</string>
- </property>
- <property name="whatsThis">
- <string>Refresh the overview. This may take a moment.</string>
- </property>
- <property name="text">
- <string>Refresh</string>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/resources/view-refresh.png</normaloff>:/MO/gui/resources/view-refresh.png</iconset>
- </property>
- </widget>
- </item>
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout_2">
- <item>
- <widget class="QTreeWidget" name="dataTree">
- <property name="contextMenuPolicy">
- <enum>Qt::CustomContextMenu</enum>
- </property>
- <property name="whatsThis">
- <string>This is an overview of your data directory as visible to the game (and tools). </string>
- </property>
- <property name="uniformRowHeights">
- <bool>true</bool>
- </property>
- <property name="animated">
- <bool>true</bool>
- </property>
- <attribute name="headerDefaultSectionSize">
- <number>400</number>
- </attribute>
- <column>
- <property name="text">
- <string>File</string>
- </property>
- </column>
- <column>
- <property name="text">
- <string>Mod</string>
- </property>
- </column>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout_12">
- <item>
- <widget class="QCheckBox" name="conflictsCheckBox">
- <property name="toolTip">
- <string>Filters the above list so that only conflicts are displayed.</string>
- </property>
- <property name="whatsThis">
- <string>Filters the above list so that only conflicts are displayed.</string>
- </property>
- <property name="text">
- <string>Show only conflicts</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QCheckBox" name="showArchiveDataCheckBox">
- <property name="toolTip">
- <string>Filters the above list so that files from archives are not shown</string>
- </property>
- <property name="statusTip">
- <string/>
- </property>
- <property name="whatsThis">
- <string>Filters the above list so that files from archives are not shown</string>
- </property>
- <property name="text">
- <string>Show files from Archives</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="savesTab">
- <attribute name="title">
- <string>Saves</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_3">
- <property name="leftMargin">
- <number>6</number>
- </property>
- <property name="topMargin">
- <number>6</number>
- </property>
- <property name="rightMargin">
- <number>6</number>
- </property>
- <property name="bottomMargin">
- <number>6</number>
- </property>
- <item>
- <widget class="QListWidget" name="savegameList">
- <property name="contextMenuPolicy">
- <enum>Qt::CustomContextMenu</enum>
- </property>
- <property name="toolTip">
- <string notr="true"/>
- </property>
- <property name="whatsThis">
- <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-<html><head><meta name="qrichtext" content="1" /><style type="text/css">
-p, li { white-space: pre-wrap; }
-</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">This is a list of all save games for this game. Hover over a list entry to get detailed information about the save including a list of esps/esms that were used at the time this save was created but aren't active now.</span></p>
-<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"></p>
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you click &quot;Fix Mods...&quot; in the context menu, MO will try to activate all mods and esps to fix those missing esps. It will not disable anything!</span></p></body></html></string>
- </property>
- <property name="selectionMode">
- <enum>QAbstractItemView::ExtendedSelection</enum>
- </property>
- <property name="selectionBehavior">
- <enum>QAbstractItemView::SelectRows</enum>
- </property>
- </widget>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="downloadTab">
- <attribute name="title">
- <string>Downloads</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_7">
- <property name="leftMargin">
- <number>2</number>
- </property>
- <property name="topMargin">
- <number>2</number>
- </property>
- <property name="rightMargin">
- <number>2</number>
- </property>
- <property name="bottomMargin">
- <number>2</number>
- </property>
- <item>
- <widget class="QPushButton" name="btnRefreshDownloads">
- <property name="toolTip">
- <string>Refresh downloads view</string>
- </property>
- <property name="text">
- <string>Refresh</string>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/resources/view-refresh.png</normaloff>:/MO/gui/resources/view-refresh.png</iconset>
- </property>
- </widget>
- </item>
- <item>
- <layout class="QVBoxLayout" name="downloadLayout">
- <item>
- <widget class="DownloadListWidget" name="downloadView">
- <property name="minimumSize">
- <size>
- <width>320</width>
- <height>0</height>
- </size>
- </property>
- <property name="contextMenuPolicy">
- <enum>Qt::CustomContextMenu</enum>
- </property>
- <property name="acceptDrops">
- <bool>true</bool>
- </property>
- <property name="toolTip">
- <string/>
- </property>
- <property name="whatsThis">
- <string>This is a list of mods you downloaded from Nexus. Double click one to install it. You can also drag an archive into here.</string>
- </property>
- <property name="verticalScrollBarPolicy">
- <enum>Qt::ScrollBarAlwaysOn</enum>
- </property>
- <property name="dragEnabled">
- <bool>true</bool>
- </property>
- <property name="dragDropMode">
- <enum>QAbstractItemView::DragDrop</enum>
- </property>
- <property name="defaultDropAction">
- <enum>Qt::MoveAction</enum>
- </property>
- <property name="alternatingRowColors">
- <bool>true</bool>
- </property>
- <property name="verticalScrollMode">
- <enum>QAbstractItemView::ScrollPerPixel</enum>
- </property>
- <property name="indentation">
- <number>0</number>
- </property>
- <property name="itemsExpandable">
- <bool>false</bool>
- </property>
- <property name="sortingEnabled">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout" stretch="0,0,2">
- <item>
- <widget class="QCheckBox" name="showHiddenBox">
- <property name="text">
- <string>Show Hidden</string>
- </property>
- </widget>
- </item>
- <item>
- <spacer name="horizontalSpacer_3">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <widget class="MOBase::LineEditClear" name="downloadFilterEdit">
- <property name="placeholderText">
- <string>Filter</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- </layout>
- </widget>
- </widget>
- </item>
- </layout>
- </widget>
- </widget>
- </item>
- </layout>
- </widget>
- <widget class="QTreeView" name="logList">
- <property name="contextMenuPolicy">
- <enum>Qt::ActionsContextMenu</enum>
- </property>
- <property name="selectionMode">
- <enum>QAbstractItemView::NoSelection</enum>
- </property>
- <property name="uniformRowHeights">
- <bool>true</bool>
- </property>
- <property name="itemsExpandable">
- <bool>false</bool>
- </property>
- <property name="headerHidden">
- <bool>true</bool>
- </property>
- </widget>
- </widget>
- </item>
- </layout>
- </widget>
- <widget class="QToolBar" name="toolBar">
- <property name="enabled">
- <bool>true</bool>
- </property>
- <property name="contextMenuPolicy">
- <enum>Qt::CustomContextMenu</enum>
- </property>
- <property name="windowTitle">
- <string>Tool Bar</string>
- </property>
- <property name="movable">
- <bool>false</bool>
- </property>
- <property name="iconSize">
- <size>
- <width>42</width>
- <height>36</height>
- </size>
- </property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonIconOnly</enum>
- </property>
- <property name="floatable">
- <bool>false</bool>
- </property>
- <attribute name="toolBarArea">
- <enum>TopToolBarArea</enum>
- </attribute>
- <attribute name="toolBarBreak">
- <bool>false</bool>
- </attribute>
- <addaction name="actionChange_Game"/>
- <addaction name="actionInstallMod"/>
- <addaction name="actionNexus"/>
- <addaction name="actionAdd_Profile"/>
- <addaction name="actionModify_Executables"/>
- <addaction name="actionTool"/>
- <addaction name="actionSettings"/>
- <addaction name="separator"/>
- <addaction name="actionEndorseMO"/>
- <addaction name="actionNotifications"/>
- <addaction name="actionUpdate"/>
- <addaction name="actionHelp"/>
- </widget>
- <widget class="QStatusBar" name="statusBar"/>
- <action name="actionInstallMod">
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/resources/system-installer.png</normaloff>:/MO/gui/resources/system-installer.png</iconset>
- </property>
- <property name="text">
- <string>Install Mod</string>
- </property>
- <property name="iconText">
- <string>Install &Mod</string>
- </property>
- <property name="toolTip">
- <string>Install a new mod from an archive</string>
- </property>
- <property name="shortcut">
- <string>Ctrl+M</string>
- </property>
- </action>
- <action name="actionAdd_Profile">
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/profiles</normaloff>:/MO/gui/profiles</iconset>
- </property>
- <property name="text">
- <string>Profiles</string>
- </property>
- <property name="iconText">
- <string>&Profiles</string>
- </property>
- <property name="toolTip">
- <string>Configure Profiles</string>
- </property>
- <property name="shortcut">
- <string>Ctrl+P</string>
- </property>
- </action>
- <action name="actionModify_Executables">
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/icon_executable</normaloff>:/MO/gui/icon_executable</iconset>
- </property>
- <property name="text">
- <string>Executables</string>
- </property>
- <property name="iconText">
- <string>&Executables</string>
- </property>
- <property name="toolTip">
- <string>Configure the executables that can be started through Mod Organizer</string>
- </property>
- <property name="shortcut">
- <string>Ctrl+E</string>
- </property>
- </action>
- <action name="actionTool">
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/plugins</normaloff>:/MO/gui/plugins</iconset>
- </property>
- <property name="text">
- <string>Tools</string>
- </property>
- <property name="iconText">
- <string>&Tools</string>
- </property>
- <property name="toolTip">
- <string>Tools</string>
- </property>
- <property name="shortcut">
- <string>Ctrl+I</string>
- </property>
- </action>
- <action name="actionSettings">
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/settings</normaloff>:/MO/gui/settings</iconset>
- </property>
- <property name="text">
- <string>Settings</string>
- </property>
- <property name="iconText">
- <string>&Settings</string>
- </property>
- <property name="toolTip">
- <string>Configure settings and workarounds</string>
- </property>
- <property name="shortcut">
- <string>Ctrl+S</string>
- </property>
- </action>
- <action name="actionNexus">
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/resources/internet-web-browser.png</normaloff>:/MO/gui/resources/internet-web-browser.png</iconset>
- </property>
- <property name="text">
- <string>Nexus</string>
- </property>
- <property name="toolTip">
- <string>Search nexus network for more mods</string>
- </property>
- <property name="shortcut">
- <string>Ctrl+N</string>
- </property>
- </action>
- <action name="actionUpdate">
- <property name="enabled">
- <bool>false</bool>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/update</normaloff>:/MO/gui/update</iconset>
- </property>
- <property name="text">
- <string>Update</string>
- </property>
- <property name="toolTip">
- <string>Mod Organizer is up-to-date</string>
- </property>
- </action>
- <action name="actionNotifications">
- <property name="enabled">
- <bool>false</bool>
- </property>
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/warning</normaloff>:/MO/gui/warning</iconset>
- </property>
- <property name="text">
- <string>No Notifications</string>
- </property>
- <property name="whatsThis">
- <string>This button will be highlighted if MO discovered potential problems in your setup and provide tips on how to fix them.</string>
- </property>
- </action>
- <action name="actionHelp">
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/help</normaloff>:/MO/gui/help</iconset>
- </property>
- <property name="text">
- <string>Help</string>
- </property>
- <property name="toolTip">
- <string>Help</string>
- </property>
- <property name="shortcut">
- <string>Ctrl+H</string>
- </property>
- </action>
- <action name="actionEndorseMO">
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/icon_favorite</normaloff>:/MO/gui/icon_favorite</iconset>
- </property>
- <property name="text">
- <string>Endorse MO</string>
- </property>
- <property name="toolTip">
- <string>Endorse Mod Organizer</string>
- </property>
- </action>
- <action name="actionCopy_Log_to_Clipboard">
- <property name="text">
- <string>Copy Log to Clipboard</string>
- </property>
- </action>
- <action name="actionChange_Game">
- <property name="icon">
- <iconset resource="resources.qrc">
- <normaloff>:/MO/gui/instance_switch</normaloff>:/MO/gui/instance_switch</iconset>
- </property>
- <property name="text">
- <string>Change Game</string>
- </property>
- <property name="toolTip">
- <string>Open the Instance selection dialog to manage a different Game</string>
- </property>
- </action>
- </widget>
- <layoutdefault spacing="6" margin="11"/>
- <customwidgets>
- <customwidget>
- <class>MOBase::LineEditClear</class>
- <extends>QLineEdit</extends>
- <header>lineeditclear.h</header>
- </customwidget>
- <customwidget>
- <class>ModListView</class>
- <extends>QTreeView</extends>
- <header>modlistview.h</header>
- </customwidget>
- <customwidget>
- <class>PluginListView</class>
- <extends>QTreeView</extends>
- <header>pluginlistview.h</header>
- </customwidget>
- <customwidget>
- <class>LCDNumber</class>
- <extends>QLCDNumber</extends>
- <header>lcdnumber.h</header>
- </customwidget>
- <customwidget>
- <class>DownloadListWidget</class>
- <extends>QTreeView</extends>
- <header>downloadlistwidget.h</header>
- </customwidget>
- <customwidget>
- <class>MOBase::SortableTreeWidget</class>
- <extends>QWidget</extends>
- <header>sortabletreewidget.h</header>
- </customwidget>
- </customwidgets>
- <resources>
- <include location="resources.qrc"/>
- </resources>
- <connections/>
-</ui>
+<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>MainWindow</class> + <widget class="QMainWindow" name="MainWindow"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>926</width> + <height>710</height> + </rect> + </property> + <property name="acceptDrops"> + <bool>true</bool> + </property> + <property name="windowTitle"> + <string notr="true">Mod Organizer</string> + </property> + <property name="windowIcon"> + <iconset> + <normaloff>mo_icon.ico</normaloff>mo_icon.ico</iconset> + </property> + <property name="documentMode"> + <bool>false</bool> + </property> + <widget class="QWidget" name="centralWidget"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <layout class="QHBoxLayout" name="horizontalLayout_8"> + <item> + <widget class="QSplitter" name="topLevelSplitter"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <widget class="QWidget" name="horizontalLayoutWidget_2"> + <layout class="QHBoxLayout" name="horizontalLayout_10" stretch="0,2"> + <item> + <layout class="QVBoxLayout" name="verticalLayout_8"> + <item> + <widget class="QGroupBox" name="categoriesGroup"> + <property name="title"> + <string>Categories</string> + </property> + <layout class="QVBoxLayout" name="verticalLayout_10" stretch="6,0,0"> + <property name="spacing"> + <number>0</number> + </property> + <property name="leftMargin"> + <number>3</number> + </property> + <property name="topMargin"> + <number>7</number> + </property> + <property name="rightMargin"> + <number>3</number> + </property> + <property name="bottomMargin"> + <number>1</number> + </property> + <item> + <widget class="QTreeWidget" name="categoriesList"> + <property name="minimumSize"> + <size> + <width>120</width> + <height>0</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>214</width> + <height>16777215</height> + </size> + </property> + <property name="contextMenuPolicy"> + <enum>Qt::CustomContextMenu</enum> + </property> + <property name="selectionMode"> + <enum>QAbstractItemView::ExtendedSelection</enum> + </property> + <property name="indentation"> + <number>0</number> + </property> + <property name="uniformRowHeights"> + <bool>true</bool> + </property> + <attribute name="headerVisible"> + <bool>false</bool> + </attribute> + <column> + <property name="text"> + <string notr="true">1</string> + </property> + </column> + </widget> + </item> + <item> + <widget class="QPushButton" name="clickBlankButton"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Maximum"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>0</width> + <height>25</height> + </size> + </property> + <property name="text"> + <string>Clear</string> + </property> + <property name="flat"> + <bool>true</bool> + </property> + </widget> + </item> + <item> + <widget class="QWidget" name="widget" native="true"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <layout class="QHBoxLayout" name="horizontalLayout_11"> + <item> + <widget class="QRadioButton" name="categoriesAndBtn"> + <property name="toolTip"> + <string>If checked, only mods that match all selected categories are displayed.</string> + </property> + <property name="text"> + <string>And</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </item> + <item> + <widget class="QRadioButton" name="categoriesOrBtn"> + <property name="toolTip"> + <string>If checked, all mods that match at least one of the selected categories are displayed.</string> + </property> + <property name="text"> + <string>Or</string> + </property> + </widget> + </item> + </layout> + </widget> + </item> + </layout> + </widget> + </item> + </layout> + </item> + <item> + <widget class="QSplitter" name="splitter"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Expanding"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <widget class="QWidget" name="layoutWidget"> + <layout class="QVBoxLayout" name="verticalLayout"> + <property name="spacing"> + <number>2</number> + </property> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_6" stretch="0,1,0,0,0,0,0,0,0"> + <item> + <widget class="QLabel" name="label_3"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>Profile</string> + </property> + <property name="buddy"> + <cstring>profileBox</cstring> + </property> + </widget> + </item> + <item> + <widget class="QComboBox" name="profileBox"> + <property name="toolTip"> + <string>Pick a module collection</string> + </property> + <property name="whatsThis"> + <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Create profiles here. Each profile contains its own list of active mods and esps. This way you can quickly switch between setups for different play throughs.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Please note that right now your esp load order is not kept seperate for different profiles.</span></p></body></html></string> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QPushButton" name="listOptionsBtn"> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>16777215</height> + </size> + </property> + <property name="toolTip"> + <string>Open list options...</string> + </property> + <property name="whatsThis"> + <string>Refresh list. This is usually not necessary unless you modified data outside the program.</string> + </property> + <property name="text"> + <string/> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/settings</normaloff>:/MO/gui/settings</iconset> + </property> + <property name="iconSize"> + <size> + <width>16</width> + <height>16</height> + </size> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="openFolderMenu"> + <property name="toolTip"> + <string>Show Open Folders menu...</string> + </property> + <property name="text"> + <string/> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/open_folder</normaloff>:/MO/gui/open_folder</iconset> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="restoreModsButton"> + <property name="toolTip"> + <string>Restore Backup...</string> + </property> + <property name="text"> + <string notr="true"/> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/restore</normaloff>:/MO/gui/restore</iconset> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="saveModsButton"> + <property name="toolTip"> + <string>Create Backup</string> + </property> + <property name="text"> + <string notr="true"/> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/backup</normaloff>:/MO/gui/backup</iconset> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="activeModslabel"> + <property name="text"> + <string>Active:</string> + </property> + </widget> + </item> + <item> + <widget class="LCDNumber" name="activeModsCounter"> + <property name="minimumSize"> + <size> + <width>0</width> + <height>26</height> + </size> + </property> + <property name="whatsThis"> + <string>This provides statistics about the mod list. The total number of active mod is normally displayed. Other statistics may be accessed with the tooltip of this counter.</string> + </property> + <property name="frameShadow"> + <enum>QFrame::Sunken</enum> + </property> + <property name="digitCount"> + <number>5</number> + </property> + <property name="segmentStyle"> + <enum>QLCDNumber::Flat</enum> + </property> + </widget> + </item> + </layout> + </item> + <item> + <widget class="ModListView" name="modList"> + <property name="minimumSize"> + <size> + <width>330</width> + <height>400</height> + </size> + </property> + <property name="palette"> + <palette> + <active> + <colorrole role="ButtonText"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>64</red> + <green>64</green> + <blue>64</blue> + </color> + </brush> + </colorrole> + <colorrole role="Link"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>255</red> + <green>0</green> + <blue>0</blue> + </color> + </brush> + </colorrole> + <colorrole role="LinkVisited"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>0</red> + <green>170</green> + <blue>0</blue> + </color> + </brush> + </colorrole> + </active> + <inactive> + <colorrole role="ButtonText"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>64</red> + <green>64</green> + <blue>64</blue> + </color> + </brush> + </colorrole> + <colorrole role="Link"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>255</red> + <green>0</green> + <blue>0</blue> + </color> + </brush> + </colorrole> + <colorrole role="LinkVisited"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>0</red> + <green>170</green> + <blue>0</blue> + </color> + </brush> + </colorrole> + </inactive> + <disabled> + <colorrole role="ButtonText"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>120</red> + <green>120</green> + <blue>120</blue> + </color> + </brush> + </colorrole> + <colorrole role="Link"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>255</red> + <green>0</green> + <blue>0</blue> + </color> + </brush> + </colorrole> + <colorrole role="LinkVisited"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>0</red> + <green>170</green> + <blue>0</blue> + </color> + </brush> + </colorrole> + </disabled> + </palette> + </property> + <property name="contextMenuPolicy"> + <enum>Qt::CustomContextMenu</enum> + </property> + <property name="toolTip"> + <string>List of available mods.</string> + </property> + <property name="whatsThis"> + <string>This is a list of installed mods. Use the checkboxes to activate/deactivate mods and drag & drop mods to change their "installation" orders.</string> + </property> + <property name="styleSheet"> + <string notr="true"/> + </property> + <property name="editTriggers"> + <set>QAbstractItemView::EditKeyPressed|QAbstractItemView::SelectedClicked</set> + </property> + <property name="showDropIndicator" stdset="0"> + <bool>true</bool> + </property> + <property name="dragEnabled"> + <bool>true</bool> + </property> + <property name="dragDropMode"> + <enum>QAbstractItemView::DragDrop</enum> + </property> + <property name="defaultDropAction"> + <enum>Qt::MoveAction</enum> + </property> + <property name="alternatingRowColors"> + <bool>true</bool> + </property> + <property name="selectionMode"> + <enum>QAbstractItemView::ExtendedSelection</enum> + </property> + <property name="selectionBehavior"> + <enum>QAbstractItemView::SelectRows</enum> + </property> + <property name="indentation"> + <number>20</number> + </property> + <property name="uniformRowHeights"> + <bool>true</bool> + </property> + <property name="itemsExpandable"> + <bool>true</bool> + </property> + <property name="sortingEnabled"> + <bool>true</bool> + </property> + <property name="expandsOnDoubleClick"> + <bool>false</bool> + </property> + <attribute name="headerDefaultSectionSize"> + <number>35</number> + </attribute> + <attribute name="headerShowSortIndicator" stdset="0"> + <bool>true</bool> + </attribute> + <attribute name="headerStretchLastSection"> + <bool>false</bool> + </attribute> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_4" stretch="0,0,1,1,0,0,1,1,1"> + <item> + <widget class="QPushButton" name="displayCategoriesBtn"> + <property name="maximumSize"> + <size> + <width>20</width> + <height>16777215</height> + </size> + </property> + <property name="text"> + <string notr="true">x</string> + </property> + <property name="iconSize"> + <size> + <width>20</width> + <height>20</height> + </size> + </property> + <property name="checkable"> + <bool>true</bool> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="label_2"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>Filter</string> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="currentCategoryLabel"> + <property name="font"> + <font> + <pointsize>8</pointsize> + <italic>true</italic> + </font> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_5"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QLabel" name="apiRequests"> + <property name="toolTip"> + <string extracomment="API Queued Requests and Throttle Count">API Queued Requests and Throttle Count</string> + </property> + <property name="whatsThis"> + <string>This tracks the number of queues Nexus API requests on the left and the current requests remaining before being throttled. You have 300 requests as a regular user and 600 as a premium user. These requests renew at the rate of one per second.</string> + </property> + <property name="frameShape"> + <enum>QFrame::StyledPanel</enum> + </property> + <property name="frameShadow"> + <enum>QFrame::Sunken</enum> + </property> + <property name="lineWidth"> + <number>2</number> + </property> + <property name="midLineWidth"> + <number>1</number> + </property> + <property name="text"> + <string>API: Q: 0 | Ts: 300</string> + </property> + <property name="alignment"> + <set>Qt::AlignCenter</set> + </property> + <property name="margin"> + <number>2</number> + </property> + </widget> + </item> + <item alignment="Qt::AlignLeft"> + <widget class="QPushButton" name="clearFiltersButton"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Maximum"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>0</width> + <height>22</height> + </size> + </property> + <property name="baseSize"> + <size> + <width>95</width> + <height>0</height> + </size> + </property> + <property name="visible"> + <bool>false</bool> + </property> + <property name="layoutDirection"> + <enum>Qt::RightToLeft</enum> + </property> + <property name="styleSheet"> + <string notr="true">border:1px solid #ff0000;</string> + </property> + <property name="text"> + <string>Clear all Filters</string> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/edit_clear</normaloff>:/MO/gui/edit_clear</iconset> + </property> + <property name="iconSize"> + <size> + <width>12</width> + <height>12</height> + </size> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_4"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QComboBox" name="groupCombo"> + <property name="baseSize"> + <size> + <width>220</width> + <height>0</height> + </size> + </property> + <property name="focusPolicy"> + <enum>Qt::ClickFocus</enum> + </property> + <item> + <property name="text"> + <string>No groups</string> + </property> + </item> + <item> + <property name="text"> + <string>Categories</string> + </property> + </item> + <item> + <property name="text"> + <string>Nexus IDs</string> + </property> + </item> + </widget> + </item> + <item> + <widget class="MOBase::LineEditClear" name="modFilterEdit"> + <property name="baseSize"> + <size> + <width>220</width> + <height>0</height> + </size> + </property> + <property name="placeholderText"> + <string>Filter</string> + </property> + </widget> + </item> + </layout> + </item> + </layout> + </widget> + <widget class="QWidget" name="layoutWidget_2"> + <layout class="QVBoxLayout" name="verticalLayout_2"> + <item> + <widget class="QFrame" name="startGroup"> + <layout class="QHBoxLayout" name="horizontalLayout_5" stretch="1,0"> + <item> + <widget class="QComboBox" name="executablesListBox"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>0</width> + <height>40</height> + </size> + </property> + <property name="font"> + <font> + <pointsize>9</pointsize> + <weight>75</weight> + <bold>true</bold> + </font> + </property> + <property name="toolTip"> + <string>Pick a program to run.</string> + </property> + <property name="whatsThis"> + <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Choose the program to run. Once you start using ModOrganizer, you should always run your game and tools from here or through shortcuts created here, otherwise mods installed through MO will not be visible.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You can add new Tools to this list, but I can't promise tools I haven't tested will work.</span></p></body></html></string> + </property> + <property name="iconSize"> + <size> + <width>32</width> + <height>32</height> + </size> + </property> + <property name="frame"> + <bool>false</bool> + </property> + </widget> + </item> + <item> + <layout class="QVBoxLayout" name="verticalLayout_12" stretch="0,0"> + <item> + <widget class="QPushButton" name="startButton"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>120</width> + <height>0</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>16777215</height> + </size> + </property> + <property name="font"> + <font> + <pointsize>10</pointsize> + <weight>75</weight> + <bold>true</bold> + </font> + </property> + <property name="toolTip"> + <string>Run program</string> + </property> + <property name="whatsThis"> + <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Run the selected program with ModOrganizer enabled.</span></p></body></html></string> + </property> + <property name="locale"> + <locale language="English" country="UnitedStates"/> + </property> + <property name="text"> + <string>Run</string> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/run</normaloff>:/MO/gui/run</iconset> + </property> + <property name="iconSize"> + <size> + <width>36</width> + <height>36</height> + </size> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="linkButton"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>140</width> + <height>0</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>16777215</height> + </size> + </property> + <property name="baseSize"> + <size> + <width>0</width> + <height>0</height> + </size> + </property> + <property name="toolTip"> + <string>Create a shortcut in your start menu or on the desktop to the specified program</string> + </property> + <property name="whatsThis"> + <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">This creates a start menu shortcut that directly starts the selected program with the MO active.</span></p></body></html></string> + </property> + <property name="text"> + <string>Shortcut</string> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/link</normaloff>:/MO/gui/link</iconset> + </property> + </widget> + </item> + </layout> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QTabWidget" name="tabWidget"> + <property name="minimumSize"> + <size> + <width>340</width> + <height>250</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>16777215</height> + </size> + </property> + <property name="contextMenuPolicy"> + <enum>Qt::NoContextMenu</enum> + </property> + <property name="tabShape"> + <enum>QTabWidget::Rounded</enum> + </property> + <property name="currentIndex"> + <number>0</number> + </property> + <widget class="QWidget" name="espTab"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Expanding"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>16777215</height> + </size> + </property> + <attribute name="title"> + <string>Plugins</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_4"> + <property name="leftMargin"> + <number>6</number> + </property> + <property name="topMargin"> + <number>6</number> + </property> + <property name="rightMargin"> + <number>6</number> + </property> + <property name="bottomMargin"> + <number>0</number> + </property> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_7"> + <item> + <widget class="QPushButton" name="bossButton"> + <property name="visible"> + <bool>true</bool> + </property> + <property name="text"> + <string>Sort</string> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/sort</normaloff>:/MO/gui/sort</iconset> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_2"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QPushButton" name="restoreButton"> + <property name="toolTip"> + <string>Restore Backup...</string> + </property> + <property name="text"> + <string notr="true"/> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/restore</normaloff>:/MO/gui/restore</iconset> + </property> + <property name="iconSize"> + <size> + <width>16</width> + <height>16</height> + </size> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="saveButton"> + <property name="toolTip"> + <string>Create Backup</string> + </property> + <property name="text"> + <string notr="true"/> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/backup</normaloff>:/MO/gui/backup</iconset> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="activePluginsLabel"> + <property name="text"> + <string>Active:</string> + </property> + </widget> + </item> + <item> + <widget class="LCDNumber" name="activePluginsCounter"> + <property name="minimumSize"> + <size> + <width>0</width> + <height>26</height> + </size> + </property> + <property name="whatsThis"> + <string>This provides statistics about the plugin list. The total number of active plugins is normally displayed. Other statistics may be accessed with the tooltip of this counter.</string> + </property> + <property name="frameShadow"> + <enum>QFrame::Sunken</enum> + </property> + <property name="digitCount"> + <number>4</number> + </property> + <property name="segmentStyle"> + <enum>QLCDNumber::Flat</enum> + </property> + </widget> + </item> + </layout> + </item> + <item> + <widget class="PluginListView" name="espList"> + <property name="minimumSize"> + <size> + <width>250</width> + <height>250</height> + </size> + </property> + <property name="palette"> + <palette> + <active> + <colorrole role="ButtonText"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>64</red> + <green>64</green> + <blue>64</blue> + </color> + </brush> + </colorrole> + </active> + <inactive> + <colorrole role="ButtonText"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>64</red> + <green>64</green> + <blue>64</blue> + </color> + </brush> + </colorrole> + </inactive> + <disabled> + <colorrole role="ButtonText"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>120</red> + <green>120</green> + <blue>120</blue> + </color> + </brush> + </colorrole> + </disabled> + </palette> + </property> + <property name="contextMenuPolicy"> + <enum>Qt::CustomContextMenu</enum> + </property> + <property name="toolTip"> + <string>List of available esp/esm files</string> + </property> + <property name="whatsThis"> + <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">This list contains the esps, esms, and esls contained in the active mods. These require their own load order. Use drag&amp;drop to modify this load order. Please note that MO will only save the load order for mods that are active/checked.<br />There is a great tool named &quot;BOSS&quot; to automatically sort these files.</span></p></body></html></string> + </property> + <property name="editTriggers"> + <set>QAbstractItemView::EditKeyPressed|QAbstractItemView::SelectedClicked</set> + </property> + <property name="dragEnabled"> + <bool>true</bool> + </property> + <property name="dragDropOverwriteMode"> + <bool>false</bool> + </property> + <property name="dragDropMode"> + <enum>QAbstractItemView::InternalMove</enum> + </property> + <property name="defaultDropAction"> + <enum>Qt::MoveAction</enum> + </property> + <property name="alternatingRowColors"> + <bool>true</bool> + </property> + <property name="selectionMode"> + <enum>QAbstractItemView::ExtendedSelection</enum> + </property> + <property name="selectionBehavior"> + <enum>QAbstractItemView::SelectRows</enum> + </property> + <property name="indentation"> + <number>0</number> + </property> + <property name="uniformRowHeights"> + <bool>true</bool> + </property> + <property name="itemsExpandable"> + <bool>false</bool> + </property> + <property name="sortingEnabled"> + <bool>true</bool> + </property> + <property name="expandsOnDoubleClick"> + <bool>false</bool> + </property> + <attribute name="headerStretchLastSection"> + <bool>false</bool> + </attribute> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_3"> + <item> + <widget class="MOBase::LineEditClear" name="espFilterEdit"> + <property name="text"> + <string/> + </property> + <property name="placeholderText"> + <string>Filter</string> + </property> + </widget> + </item> + </layout> + </item> + </layout> + </widget> + <widget class="QWidget" name="bsaTab"> + <property name="visible"> + <bool>false</bool> + </property> + <attribute name="title"> + <string>Archives</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_9"> + <property name="leftMargin"> + <number>6</number> + </property> + <property name="topMargin"> + <number>6</number> + </property> + <property name="rightMargin"> + <number>6</number> + </property> + <property name="bottomMargin"> + <number>6</number> + </property> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_9" stretch="0"> + <item> + <widget class="QLabel" name="managedArchiveLabel"> + <property name="toolTip"> + <string><html><head/><body><p>BSAs / BA2s are bundles of game assets (textures, scripts, etc.). By default, the engine loads these bundles in a separate step from loose files. <p>Their load order is specified by the priority of the corresponding plugin (right pane, plugins tab).</p><p>If there is a matching plugin, the game will load them no matter what.</p></body></html></string> + </property> + <property name="text"> + <string><html><head/><body><p>Currently detected archives. (<a href="#"><span style=" text-decoration: underline; color:#0000ff;">What is an archive?</span></a>)</p></body></html></string> + </property> + <property name="wordWrap"> + <bool>true</bool> + </property> + </widget> + </item> + </layout> + </item> + <item> + <widget class="MOBase::SortableTreeWidget" name="bsaList" native="true"> + <property name="contextMenuPolicy"> + <enum>Qt::CustomContextMenu</enum> + </property> + <property name="toolTip"> + <string>List of available BS Archives. Archives not checked here are not managed by MO and ignore installation order.</string> + </property> + <property name="whatsThis"> + <string>BSA files are archives (comparable to .zip files) that contain data assets (meshes, textures, ...) to be used by the game. As such they "compete" with loose files in your data directory over which is loaded. + By default, BSAs that share their base name with an enabled ESP (i.e. plugin.esp and plugin.bsa) are automatically loaded and will have precedence over all loose files, the installation order you set up to the left is then ignored! + + BSAs checked here are loaded in such a way that your installation order is obeyed properly.</string> + </property> + <property name="showDropIndicator" stdset="0"> + <bool>false</bool> + </property> + <property name="dragEnabled" stdset="0"> + <bool>false</bool> + </property> + <property name="dragDropOverwriteMode" stdset="0"> + <bool>false</bool> + </property> + <property name="indentation" stdset="0"> + <number>20</number> + </property> + <property name="itemsExpandable" stdset="0"> + <bool>true</bool> + </property> + <property name="columnCount" stdset="0"> + <number>1</number> + </property> + <column> + <property name="text"> + <string notr="true">Archives</string> + </property> + </column> + </widget> + </item> + </layout> + </widget> + <widget class="QWidget" name="dataTab"> + <attribute name="title"> + <string>Data</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_5"> + <property name="leftMargin"> + <number>6</number> + </property> + <property name="topMargin"> + <number>6</number> + </property> + <property name="rightMargin"> + <number>6</number> + </property> + <property name="bottomMargin"> + <number>6</number> + </property> + <item> + <widget class="QPushButton" name="btnRefreshData"> + <property name="toolTip"> + <string>refresh data-directory overview</string> + </property> + <property name="whatsThis"> + <string>Refresh the overview. This may take a moment.</string> + </property> + <property name="text"> + <string>Refresh</string> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/resources/view-refresh.png</normaloff>:/MO/gui/resources/view-refresh.png</iconset> + </property> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_2"> + <item> + <widget class="QTreeWidget" name="dataTree"> + <property name="contextMenuPolicy"> + <enum>Qt::CustomContextMenu</enum> + </property> + <property name="whatsThis"> + <string>This is an overview of your data directory as visible to the game (and tools). </string> + </property> + <property name="uniformRowHeights"> + <bool>true</bool> + </property> + <property name="animated"> + <bool>true</bool> + </property> + <attribute name="headerDefaultSectionSize"> + <number>400</number> + </attribute> + <column> + <property name="text"> + <string>File</string> + </property> + </column> + <column> + <property name="text"> + <string>Mod</string> + </property> + </column> + </widget> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_12"> + <item> + <widget class="QCheckBox" name="conflictsCheckBox"> + <property name="toolTip"> + <string>Filters the above list so that only conflicts are displayed.</string> + </property> + <property name="whatsThis"> + <string>Filters the above list so that only conflicts are displayed.</string> + </property> + <property name="text"> + <string>Show only conflicts</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="showArchiveDataCheckBox"> + <property name="toolTip"> + <string>Filters the above list so that files from archives are not shown</string> + </property> + <property name="statusTip"> + <string/> + </property> + <property name="whatsThis"> + <string>Filters the above list so that files from archives are not shown</string> + </property> + <property name="text"> + <string>Show files from Archives</string> + </property> + </widget> + </item> + </layout> + </item> + </layout> + </widget> + <widget class="QWidget" name="savesTab"> + <attribute name="title"> + <string>Saves</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_3"> + <property name="leftMargin"> + <number>6</number> + </property> + <property name="topMargin"> + <number>6</number> + </property> + <property name="rightMargin"> + <number>6</number> + </property> + <property name="bottomMargin"> + <number>6</number> + </property> + <item> + <widget class="QListWidget" name="savegameList"> + <property name="contextMenuPolicy"> + <enum>Qt::CustomContextMenu</enum> + </property> + <property name="toolTip"> + <string notr="true"/> + </property> + <property name="whatsThis"> + <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">This is a list of all save games for this game. Hover over a list entry to get detailed information about the save including a list of esps/esms that were used at the time this save was created but aren't active now.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you click &quot;Fix Mods...&quot; in the context menu, MO will try to activate all mods and esps to fix those missing esps. It will not disable anything!</span></p></body></html></string> + </property> + <property name="selectionMode"> + <enum>QAbstractItemView::ExtendedSelection</enum> + </property> + <property name="selectionBehavior"> + <enum>QAbstractItemView::SelectRows</enum> + </property> + </widget> + </item> + </layout> + </widget> + <widget class="QWidget" name="downloadTab"> + <attribute name="title"> + <string>Downloads</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_7"> + <property name="leftMargin"> + <number>2</number> + </property> + <property name="topMargin"> + <number>2</number> + </property> + <property name="rightMargin"> + <number>2</number> + </property> + <property name="bottomMargin"> + <number>2</number> + </property> + <item> + <widget class="QPushButton" name="btnRefreshDownloads"> + <property name="toolTip"> + <string>Refresh downloads view</string> + </property> + <property name="text"> + <string>Refresh</string> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/resources/view-refresh.png</normaloff>:/MO/gui/resources/view-refresh.png</iconset> + </property> + </widget> + </item> + <item> + <layout class="QVBoxLayout" name="downloadLayout"> + <item> + <widget class="DownloadListWidget" name="downloadView"> + <property name="minimumSize"> + <size> + <width>320</width> + <height>0</height> + </size> + </property> + <property name="contextMenuPolicy"> + <enum>Qt::CustomContextMenu</enum> + </property> + <property name="acceptDrops"> + <bool>true</bool> + </property> + <property name="toolTip"> + <string/> + </property> + <property name="whatsThis"> + <string>This is a list of mods you downloaded from Nexus. Double click one to install it. You can also drag an archive into here.</string> + </property> + <property name="verticalScrollBarPolicy"> + <enum>Qt::ScrollBarAlwaysOn</enum> + </property> + <property name="dragEnabled"> + <bool>true</bool> + </property> + <property name="dragDropMode"> + <enum>QAbstractItemView::DragDrop</enum> + </property> + <property name="defaultDropAction"> + <enum>Qt::MoveAction</enum> + </property> + <property name="alternatingRowColors"> + <bool>true</bool> + </property> + <property name="verticalScrollMode"> + <enum>QAbstractItemView::ScrollPerPixel</enum> + </property> + <property name="indentation"> + <number>0</number> + </property> + <property name="itemsExpandable"> + <bool>false</bool> + </property> + <property name="sortingEnabled"> + <bool>true</bool> + </property> + </widget> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout" stretch="0,0,2"> + <item> + <widget class="QCheckBox" name="showHiddenBox"> + <property name="text"> + <string>Show Hidden</string> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_3"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="MOBase::LineEditClear" name="downloadFilterEdit"> + <property name="placeholderText"> + <string>Filter</string> + </property> + </widget> + </item> + </layout> + </item> + </layout> + </widget> + </widget> + </item> + </layout> + </widget> + </widget> + </item> + </layout> + </widget> + <widget class="QTreeView" name="logList"> + <property name="contextMenuPolicy"> + <enum>Qt::ActionsContextMenu</enum> + </property> + <property name="selectionMode"> + <enum>QAbstractItemView::NoSelection</enum> + </property> + <property name="uniformRowHeights"> + <bool>true</bool> + </property> + <property name="itemsExpandable"> + <bool>false</bool> + </property> + <property name="headerHidden"> + <bool>true</bool> + </property> + </widget> + </widget> + </item> + </layout> + </widget> + <widget class="QToolBar" name="toolBar"> + <property name="enabled"> + <bool>true</bool> + </property> + <property name="contextMenuPolicy"> + <enum>Qt::CustomContextMenu</enum> + </property> + <property name="windowTitle"> + <string>Tool Bar</string> + </property> + <property name="movable"> + <bool>false</bool> + </property> + <property name="iconSize"> + <size> + <width>42</width> + <height>36</height> + </size> + </property> + <property name="toolButtonStyle"> + <enum>Qt::ToolButtonIconOnly</enum> + </property> + <property name="floatable"> + <bool>false</bool> + </property> + <attribute name="toolBarArea"> + <enum>TopToolBarArea</enum> + </attribute> + <attribute name="toolBarBreak"> + <bool>false</bool> + </attribute> + <addaction name="actionChange_Game"/> + <addaction name="actionInstallMod"/> + <addaction name="actionNexus"/> + <addaction name="actionAdd_Profile"/> + <addaction name="actionModify_Executables"/> + <addaction name="actionTool"/> + <addaction name="actionSettings"/> + <addaction name="separator"/> + <addaction name="actionEndorseMO"/> + <addaction name="actionNotifications"/> + <addaction name="actionUpdate"/> + <addaction name="actionHelp"/> + </widget> + <widget class="QStatusBar" name="statusBar"/> + <action name="actionInstallMod"> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/resources/system-installer.png</normaloff>:/MO/gui/resources/system-installer.png</iconset> + </property> + <property name="text"> + <string>Install Mod</string> + </property> + <property name="iconText"> + <string>Install &Mod</string> + </property> + <property name="toolTip"> + <string>Install a new mod from an archive</string> + </property> + <property name="shortcut"> + <string>Ctrl+M</string> + </property> + </action> + <action name="actionAdd_Profile"> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/profiles</normaloff>:/MO/gui/profiles</iconset> + </property> + <property name="text"> + <string>Profiles</string> + </property> + <property name="iconText"> + <string>&Profiles</string> + </property> + <property name="toolTip"> + <string>Configure Profiles</string> + </property> + <property name="shortcut"> + <string>Ctrl+P</string> + </property> + </action> + <action name="actionModify_Executables"> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/icon_executable</normaloff>:/MO/gui/icon_executable</iconset> + </property> + <property name="text"> + <string>Executables</string> + </property> + <property name="iconText"> + <string>&Executables</string> + </property> + <property name="toolTip"> + <string>Configure the executables that can be started through Mod Organizer</string> + </property> + <property name="shortcut"> + <string>Ctrl+E</string> + </property> + </action> + <action name="actionTool"> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/plugins</normaloff>:/MO/gui/plugins</iconset> + </property> + <property name="text"> + <string>Tools</string> + </property> + <property name="iconText"> + <string>&Tools</string> + </property> + <property name="toolTip"> + <string>Tools</string> + </property> + <property name="shortcut"> + <string>Ctrl+I</string> + </property> + </action> + <action name="actionSettings"> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/settings</normaloff>:/MO/gui/settings</iconset> + </property> + <property name="text"> + <string>Settings</string> + </property> + <property name="iconText"> + <string>&Settings</string> + </property> + <property name="toolTip"> + <string>Configure settings and workarounds</string> + </property> + <property name="shortcut"> + <string>Ctrl+S</string> + </property> + </action> + <action name="actionNexus"> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/resources/internet-web-browser.png</normaloff>:/MO/gui/resources/internet-web-browser.png</iconset> + </property> + <property name="text"> + <string>Nexus</string> + </property> + <property name="toolTip"> + <string>Search nexus network for more mods</string> + </property> + <property name="shortcut"> + <string>Ctrl+N</string> + </property> + </action> + <action name="actionUpdate"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/update</normaloff>:/MO/gui/update</iconset> + </property> + <property name="text"> + <string>Update</string> + </property> + <property name="toolTip"> + <string>Mod Organizer is up-to-date</string> + </property> + </action> + <action name="actionNotifications"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/warning</normaloff>:/MO/gui/warning</iconset> + </property> + <property name="text"> + <string>No Notifications</string> + </property> + <property name="whatsThis"> + <string>This button will be highlighted if MO discovered potential problems in your setup and provide tips on how to fix them.</string> + </property> + </action> + <action name="actionHelp"> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/help</normaloff>:/MO/gui/help</iconset> + </property> + <property name="text"> + <string>Help</string> + </property> + <property name="toolTip"> + <string>Help</string> + </property> + <property name="shortcut"> + <string>Ctrl+H</string> + </property> + </action> + <action name="actionEndorseMO"> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/icon_favorite</normaloff>:/MO/gui/icon_favorite</iconset> + </property> + <property name="text"> + <string>Endorse MO</string> + </property> + <property name="toolTip"> + <string>Endorse Mod Organizer</string> + </property> + </action> + <action name="actionCopy_Log_to_Clipboard"> + <property name="text"> + <string>Copy Log to Clipboard</string> + </property> + </action> + <action name="actionChange_Game"> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/MO/gui/instance_switch</normaloff>:/MO/gui/instance_switch</iconset> + </property> + <property name="text"> + <string>Change Game</string> + </property> + <property name="toolTip"> + <string>Open the Instance selection dialog to manage a different Game</string> + </property> + </action> + </widget> + <layoutdefault spacing="6" margin="11"/> + <customwidgets> + <customwidget> + <class>MOBase::LineEditClear</class> + <extends>QLineEdit</extends> + <header>lineeditclear.h</header> + </customwidget> + <customwidget> + <class>ModListView</class> + <extends>QTreeView</extends> + <header>modlistview.h</header> + </customwidget> + <customwidget> + <class>PluginListView</class> + <extends>QTreeView</extends> + <header>pluginlistview.h</header> + </customwidget> + <customwidget> + <class>LCDNumber</class> + <extends>QLCDNumber</extends> + <header>lcdnumber.h</header> + </customwidget> + <customwidget> + <class>DownloadListWidget</class> + <extends>QTreeView</extends> + <header>downloadlistwidget.h</header> + </customwidget> + <customwidget> + <class>MOBase::SortableTreeWidget</class> + <extends>QWidget</extends> + <header>sortabletreewidget.h</header> + </customwidget> + </customwidgets> + <resources> + <include location="resources.qrc"/> + </resources> + <connections/> +</ui> diff --git a/src/nexusinterface.cpp b/src/nexusinterface.cpp index 25843c51..c149f987 100644 --- a/src/nexusinterface.cpp +++ b/src/nexusinterface.cpp @@ -203,6 +203,7 @@ void NexusInterface::setRateMax(const QString &userName, bool isPremium) m_MaxRequests = 300; m_RemainingRequests = 300; } + emit requestsChanged(m_RequestQueue.size(), m_RemainingRequests); } void NexusInterface::interpretNexusFileName(const QString &fileName, QString &modName, int &modID, bool query) @@ -543,6 +544,7 @@ void NexusInterface::nextRequest() connect(info.m_Timeout, SIGNAL(timeout()), this, SLOT(requestTimeout())); info.m_Timeout->start(); m_ActiveRequest.push_back(info); + emit requestsChanged(m_RequestQueue.size(), m_RemainingRequests); } @@ -559,6 +561,7 @@ void NexusInterface::requestFinished(std::list<NXMRequestInfo>::iterator iter) int statusCode = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(); if (statusCode == 429) { m_RemainingRequests = 0; + emit requestsChanged(m_RequestQueue.size(), m_RemainingRequests); qWarning("Requests have hit the rate limit threshold and are now being throttled. This request will be retried."); qWarning("Error: %s", reply->errorString().toUtf8().constData()); m_RequestQueue.enqueue(*iter); @@ -666,8 +669,10 @@ void NexusInterface::requestTimeout() void NexusInterface::calculateRequests() { - if (m_RemainingRequests < m_MaxRequests) + if (m_RemainingRequests < m_MaxRequests) { m_RemainingRequests++; + emit requestsChanged(m_RequestQueue.size(), m_RemainingRequests); + } } namespace { diff --git a/src/nexusinterface.h b/src/nexusinterface.h index e797d34e..a68948e6 100644 --- a/src/nexusinterface.h +++ b/src/nexusinterface.h @@ -348,6 +348,7 @@ signals: void nxmDownloadURLsAvailable(QString gameName, int modID, int fileID, QVariant userData, QVariant resultData, int requestID); void nxmEndorsementToggled(QString gameName, int modID, QVariant userData, QVariant resultData, int requestID); void nxmRequestFailed(QString gameName, int modID, int fileID, QVariant userData, int requestID, QNetworkReply::NetworkError error, const QString &errorString); + void requestsChanged(int queueCount, int requestsRemaining); public slots: |
