diff options
| author | isanae <14251494+isanae@users.noreply.github.com> | 2020-11-07 17:58:07 -0500 |
|---|---|---|
| committer | isanae <14251494+isanae@users.noreply.github.com> | 2020-11-07 20:16:27 -0500 |
| commit | 98b782caff4d1b5c316f5773d7a07494912bb2d8 (patch) | |
| tree | e1d2d22698e329016bfea658bb479bcb1244d703 /src | |
| parent | 1b7384f7cb3dc32063e588c174265b8c46cfa629 (diff) | |
reordered functions, removed unused headers
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.cpp | 113 |
1 files changed, 39 insertions, 74 deletions
diff --git a/src/main.cpp b/src/main.cpp index 72d598a8..a2e16cc0 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,53 +1,56 @@ -/* -Copyright (C) 2012 Sebastian Herbord. All rights reserved. - -This file is part of Mod Organizer. - -Mod Organizer is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -Mod Organizer is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include "mainwindow.h" #include "singleinstance.h" #include "loglist.h" -#include "selectiondialog.h" #include "moapplication.h" -#include "tutorialmanager.h" -#include "nxmaccessmanager.h" -#include "instancemanager.h" -#include "instancemanagerdialog.h" -#include "createinstancedialog.h" -#include "createinstancedialogpages.h" #include "organizercore.h" -#include "env.h" -#include "envmodule.h" #include "commandline.h" -#include "sanitychecks.h" #include "shared/util.h" -#include "shared/appconfig.h" -#include "shared/error_report.h" -#include <imoinfo.h> -#include <report.h> #include <usvfs.h> #include <log.h> -#include <utility.h> using namespace MOBase; -using namespace MOShared; thread_local LPTOP_LEVEL_EXCEPTION_FILTER g_prevExceptionFilter = nullptr; thread_local std::terminate_handler g_prevTerminateHandler = nullptr; +int forwardToPrimary(SingleInstance& instance, const cl::CommandLine& cl); + +int main(int argc, char *argv[]) +{ + MOShared::SetThisThreadName("main"); + + cl::CommandLine cl; + if (auto r=cl.run(GetCommandLineW())) { + return *r; + } + + initLogging(); + + QApplication::setAttribute(Qt::AA_EnableHighDpiScaling); + MOApplication app(cl, argc, argv); + + SingleInstance instance(cl.multiple()); + if (instance.ephemeral()) { + return forwardToPrimary(instance, cl); + } + + return app.run(instance); +} + +int forwardToPrimary(SingleInstance& instance, const cl::CommandLine& cl) +{ + if (cl.shortcut().isValid()) { + instance.sendMessage(cl.shortcut().toString()); + } else if (cl.nxmLink()) { + instance.sendMessage(*cl.nxmLink()); + } else { + QMessageBox::information( + nullptr, QObject::tr("Mod Organizer"), + QObject::tr("An instance of Mod Organizer is already running")); + } + + return 0; +} + LONG WINAPI onUnhandledException(_EXCEPTION_POINTERS* ptrs) { const std::wstring& dumpPath = OrganizerCore::crashDumpsPath(); @@ -95,41 +98,3 @@ void setExceptionHandlers() g_prevExceptionFilter = SetUnhandledExceptionFilter(onUnhandledException); g_prevTerminateHandler = std::set_terminate(onTerminate); } - -int forwardToPrimary(SingleInstance& instance, const cl::CommandLine& cl) -{ - if (cl.shortcut().isValid()) { - instance.sendMessage(cl.shortcut().toString()); - } else if (cl.nxmLink()) { - instance.sendMessage(*cl.nxmLink()); - } else { - QMessageBox::information( - nullptr, QObject::tr("Mod Organizer"), - QObject::tr("An instance of Mod Organizer is already running")); - } - - return 0; -} - - -int main(int argc, char *argv[]) -{ - MOShared::SetThisThreadName("main"); - - cl::CommandLine cl; - if (auto r=cl.run(GetCommandLineW())) { - return *r; - } - - initLogging(); - - QApplication::setAttribute(Qt::AA_EnableHighDpiScaling); - MOApplication app(cl, argc, argv); - - SingleInstance instance(cl.multiple()); - if (instance.ephemeral()) { - return forwardToPrimary(instance, cl); - } - - return app.run(instance); -} |
