aboutsummaryrefslogtreecommitdiffstats
path: root/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'main.cpp')
-rw-r--r--main.cpp27
1 files changed, 18 insertions, 9 deletions
diff --git a/main.cpp b/main.cpp
index e5a53a3d8..fd4822324 100644
--- a/main.cpp
+++ b/main.cpp
@@ -11,6 +11,7 @@
#include "qt-ui/diveplanner.h"
#include <QStringList>
+#include <git2.h>
QTranslator *qtTranslator, *ssrfTranslator;
@@ -19,16 +20,15 @@ int main(int argc, char **argv)
int i;
bool no_filenames = true;
- setup_system_prefs();
- prefs = default_prefs;
- fill_profile_color();
- init_ui(&argc, &argv);
- parse_xml_init();
- taglist_init_global();
-
+ init_qt(&argc, &argv);
QStringList files;
QStringList importedFiles;
QStringList arguments = QCoreApplication::arguments();
+
+ bool dedicated_console = arguments.length() > 1 &&
+ (arguments.at(1) == QString("--win32console"));
+ subsurface_console_init(dedicated_console);
+
for (i = 1; i < arguments.length(); i++) {
QString a = arguments.at(i);
if (a.at(0) == '-') {
@@ -42,18 +42,27 @@ int main(int argc, char **argv)
files.push_back(a);
}
}
+ git_threads_init();
+ setup_system_prefs();
+ prefs = default_prefs;
+ fill_profile_color();
+ parse_xml_init();
+ taglist_init_global();
+ init_ui();
if (no_filenames) {
QString defaultFile(prefs.default_filename);
if (!defaultFile.isEmpty())
files.push_back(QString(prefs.default_filename));
}
- parse_xml_exit();
+
MainWindow *m = MainWindow::instance();
- m->setLoadedWithFiles( !files.isEmpty() || !importedFiles.isEmpty());
+ m->setLoadedWithFiles(!files.isEmpty() || !importedFiles.isEmpty());
m->loadFiles(files);
m->importFiles(importedFiles);
if (!quit)
run_ui();
exit_ui();
+ parse_xml_exit();
+ subsurface_console_exit();
return 0;
}