diff options
Diffstat (limited to 'main.cpp')
-rw-r--r-- | main.cpp | 27 |
1 files changed, 18 insertions, 9 deletions
@@ -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; } |