mirror of
https://github.com/ModOrganizer2/modorganizer.git
synced 2026-07-27 13:58:24 -07:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7084021067 | ||
|
|
1dd2acf07f | ||
|
|
3fad475013 | ||
|
|
2bd755743c | ||
|
|
9eb1dd0ec0 | ||
|
|
e473caf14a | ||
|
|
1c87f1d8d4 | ||
|
|
bb6cde175a | ||
|
|
bd93864ed2 | ||
|
|
406d6f28c0 |
+7
-2
@@ -80,7 +80,8 @@ int run(int argc, char *argv[])
|
||||
// stuff that's done only once, even if MO restarts in the loop below
|
||||
app.firstTimeSetup(multiProcess);
|
||||
|
||||
// force the "Select instance" dialog on startup (only for first loop)
|
||||
// force the "Select instance" dialog on startup, only for first loop or when
|
||||
// the current instance cannot be used
|
||||
bool pick = cl.pick();
|
||||
|
||||
// MO runs in a loop because it can be restarted in several ways, such as
|
||||
@@ -105,13 +106,17 @@ int run(int argc, char *argv[])
|
||||
const auto r = app.setup(multiProcess, pick);
|
||||
pick = false;
|
||||
|
||||
if (r == RestartExitCode) {
|
||||
if (r == RestartExitCode || r == ReselectExitCode) {
|
||||
// resets things when MO is "restarted"
|
||||
app.resetForRestart();
|
||||
|
||||
// don't reprocess command line
|
||||
cl.clear();
|
||||
|
||||
if (r == ReselectExitCode) {
|
||||
pick = true;
|
||||
}
|
||||
|
||||
continue;
|
||||
} else if (r != 0) {
|
||||
// something failed, quit
|
||||
|
||||
@@ -492,7 +492,7 @@ std::optional<int> MOApplication::setupInstanceLoop(
|
||||
continue;
|
||||
} else if (setupResult == SetupInstanceResults::SelectAnother) {
|
||||
InstanceManager::singleton().clearCurrentInstance();
|
||||
return RestartExitCode;
|
||||
return ReselectExitCode;
|
||||
} else {
|
||||
return 1;
|
||||
}
|
||||
|
||||
+10
-10
@@ -5781,48 +5781,48 @@ Continue?</source>
|
||||
<context>
|
||||
<name>PluginContainer</name>
|
||||
<message>
|
||||
<location filename="plugincontainer.cpp" line="1006"/>
|
||||
<location filename="plugincontainer.cpp" line="1016"/>
|
||||
<source>Plugin error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="plugincontainer.cpp" line="1007"/>
|
||||
<location filename="plugincontainer.cpp" line="1017"/>
|
||||
<source>Mod Organizer failed to load the plugin '%1' last time it was started.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="plugincontainer.cpp" line="1010"/>
|
||||
<location filename="plugincontainer.cpp" line="1020"/>
|
||||
<source>The plugin can be skipped for this session, blacklisted, or loaded normally, in which case it might fail again. Blacklisted plugins can be re-enabled later in the settings.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="plugincontainer.cpp" line="1015"/>
|
||||
<location filename="plugincontainer.cpp" line="1025"/>
|
||||
<source>Skip this plugin</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="plugincontainer.cpp" line="1016"/>
|
||||
<location filename="plugincontainer.cpp" line="1026"/>
|
||||
<source>Blacklist this plugin</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="plugincontainer.cpp" line="1017"/>
|
||||
<location filename="plugincontainer.cpp" line="1027"/>
|
||||
<source>Load this plugin</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="plugincontainer.cpp" line="1114"/>
|
||||
<location filename="plugincontainer.cpp" line="1124"/>
|
||||
<source>Some plugins could not be loaded</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="plugincontainer.cpp" line="1117"/>
|
||||
<location filename="plugincontainer.cpp" line="1135"/>
|
||||
<location filename="plugincontainer.cpp" line="1127"/>
|
||||
<location filename="plugincontainer.cpp" line="1145"/>
|
||||
<source>Description missing</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="plugincontainer.cpp" line="1126"/>
|
||||
<location filename="plugincontainer.cpp" line="1136"/>
|
||||
<source>The following plugins could not be loaded. The reason may be missing dependencies (i.e. python) or an outdated version:</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
||||
@@ -952,6 +952,16 @@ void PluginContainer::reloadPlugin(QString const& filepath)
|
||||
|
||||
void PluginContainer::unloadPlugins()
|
||||
{
|
||||
if (m_Organizer) {
|
||||
// this will clear several structures that can hold on to pointers to
|
||||
// plugins, as well as read the plugin blacklist from the ini file, which
|
||||
// is used in loadPlugins() below to skip plugins
|
||||
//
|
||||
// note that the first thing loadPlugins() does is call unloadPlugins(),
|
||||
// so this makes sure the blacklist is always available
|
||||
m_Organizer->settings().plugins().clearPlugins();
|
||||
}
|
||||
|
||||
bf::for_each(m_Plugins, [](auto& t) { t.second.clear(); });
|
||||
bf::for_each(m_AccessPlugins, [](auto& t) { t.second.clear(); });
|
||||
m_Requirements.clear();
|
||||
|
||||
@@ -74,6 +74,7 @@ enum class Exit
|
||||
};
|
||||
|
||||
const int RestartExitCode = INT_MAX;
|
||||
const int ReselectExitCode = INT_MAX - 1;
|
||||
|
||||
using ExitFlags = QFlags<Exit>;
|
||||
Q_DECLARE_OPERATORS_FOR_FLAGS(ExitFlags);
|
||||
|
||||
+2
-2
@@ -4,13 +4,13 @@
|
||||
// Otherwise, if letters are used in VER_FILEVERSION_STR, uses the full MOBase::VersionInfo parser
|
||||
// Otherwise, uses the numbers from VER_FILEVERSION and sets the release type as pre-alpha
|
||||
#define VER_FILEVERSION 2,4,0
|
||||
#define VER_FILEVERSION_STR "2.4.0rc2\0"
|
||||
#define VER_FILEVERSION_STR "2.4.0\0"
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION VER_FILEVERSION
|
||||
PRODUCTVERSION VER_FILEVERSION
|
||||
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
||||
FILEFLAGS VS_FF_PRERELEASE
|
||||
FILEFLAGS (0)
|
||||
FILEOS VOS__WINDOWS32
|
||||
FILETYPE VFT_APP
|
||||
FILESUBTYPE (0)
|
||||
|
||||
Reference in New Issue
Block a user