updated application startup

This commit is contained in:
Martchus 2015-09-01 20:12:37 +02:00
parent 18636e1541
commit 8960d5be53
4 changed files with 26 additions and 19 deletions

View File

@ -43,9 +43,8 @@ int main(int argc, char *argv[])
cout << "Unable to parse arguments. " << ex.what() << "\nSee --help for available commands." << endl;
}
// set meta info for application
SET_QT_APPLICATION_INFO;
if(qtConfigArgs.areQtGuiArgsPresent()) {
return QtGui::runWidgetsGui(argc, argv);
return QtGui::runWidgetsGui(argc, argv, qtConfigArgs);
}
return 0;
}

View File

@ -2,6 +2,7 @@
#include "settings.h"
#include "mainwindow.h"
#include <qtutilities/resources/qtconfigarguments.h>
#include <qtutilities/resources/resources.h>
#if defined(GUI_QTWIDGETS)
@ -11,24 +12,28 @@
#endif
using namespace std;
using namespace ApplicationUtilities;
namespace QtGui {
int runWidgetsGui(int argc, char *argv[])
int runWidgetsGui(int argc, char *argv[], const QtConfigArguments &qtConfigArgs)
{
#ifdef GUI_QTWIDGETS
QApplication a(argc, argv);
QtUtilitiesResources::init();
Theme::setup();
QtGui::restoreSettings();
QtGui::MainWindow w;
w.show();
int r = a.exec();
QtGui::saveSettings();
return r;
SET_QT_APPLICATION_INFO;
QApplication a(argc, argv);
// load resources needed by classes of qtutilities
QtUtilitiesResources::init();
// apply settings specified via command line args
qtConfigArgs.applySettings();
QtGui::restoreSettings();
QtGui::MainWindow w;
w.show();
int r = a.exec();
QtGui::saveSettings();
return r;
#else
cout << "Application has not been build with Qt widgets GUI support." << endl;
return 0;
cout << "Application has not been build with Qt widgets GUI support." << endl;
return 0;
#endif
}

View File

@ -1,9 +1,13 @@
#ifndef QTGUI_INIT_H
#define QTGUI_INIT_H
namespace ApplicationUtilities {
class QtConfigArguments;
}
namespace QtGui {
int runWidgetsGui(int argc, char *argv[]);
int runWidgetsGui(int argc, char *argv[], const ApplicationUtilities::QtConfigArguments &qtConfigArgs);
}

View File

@ -10,9 +10,7 @@
#include <sstream>
#include <limits>
QT_BEGIN_NAMESPACE
class QIODevice;
QT_END_NAMESPACE
QT_FORWARD_DECLARE_CLASS(QIODevice)
namespace Network {
@ -42,6 +40,8 @@ public:
PermissionStatus ignoreSslErrorsPermission() const;
private:
void chuckOutputDevice();
QString m_name;
QUrl m_url;
size_t m_redirectsTo;
@ -60,7 +60,6 @@ private:
PermissionStatus m_appendPermission;
PermissionStatus m_redirectPermission;
PermissionStatus m_ignoreSslErrorsPermission;
void chuckOutputDevice();
};
/*!