/***************************************************************************
- * Copyright (C) 2005-08 by the Quassel IRC Team *
+ * Copyright (C) 2005-2014 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
#include "coreapplication.h"
#include "logger.h"
CoreApplicationInternal::CoreApplicationInternal()
- : _coreCreated(false)
+ : _coreCreated(false)
{
- Q_INIT_RESOURCE(sql);
}
-CoreApplicationInternal::~CoreApplicationInternal() {
- if(_coreCreated) {
- Core::saveState();
- Core::destroy();
- }
+
+CoreApplicationInternal::~CoreApplicationInternal()
+{
+ if (_coreCreated) {
+ Core::saveState();
+ Core::destroy();
+ }
}
-bool CoreApplicationInternal::init() {
- /* FIXME
- This is an initial check if logfile is writable since the warning would spam stdout if done
- in current Logger implementation. Can be dropped whenever the logfile is only opened once.
- */
- QFile logFile;
- if(!Quassel::optionValue("logfile").isEmpty()) {
- logFile.setFileName(Quassel::optionValue("logfile"));
- if(!logFile.open(QIODevice::Append | QIODevice::Text))
- qWarning("Warning: Couldn't open logfile '%s' - will log to stdout instead",qPrintable(logFile.fileName()));
- else logFile.close();
- }
-
- Core::instance(); // create and init the core
- _coreCreated = true;
-
- // if using KDE, option is called "restore" instead of "norestore"
- if(Quassel::isOptionSet("restore") || !Quassel::isOptionSet("norestore"))
- Core::restoreState();
-
- return true;
+
+bool CoreApplicationInternal::init()
+{
+ /* FIXME
+ This is an initial check if logfile is writable since the warning would spam stdout if done
+ in current Logger implementation. Can be dropped whenever the logfile is only opened once.
+ */
+ QFile logFile;
+ if (!Quassel::optionValue("logfile").isEmpty()) {
+ logFile.setFileName(Quassel::optionValue("logfile"));
+ if (!logFile.open(QIODevice::Append | QIODevice::Text))
+ qWarning("Warning: Couldn't open logfile '%s' - will log to stdout instead", qPrintable(logFile.fileName()));
+ else logFile.close();
+ }
+
+ Core::instance(); // create and init the core
+ _coreCreated = true;
+
+ if (!Quassel::isOptionSet("norestore"))
+ Core::restoreState();
+
+ return true;
}
+
/*****************************************************************************/
CoreApplication::CoreApplication(int &argc, char **argv)
-#ifdef HAVE_KDE
-: KApplication(false), Quassel() {
- Q_UNUSED(argc); Q_UNUSED(argv);
-#else
-: QCoreApplication(argc, argv), Quassel() {
-#endif
+ : QCoreApplication(argc, argv), Quassel()
+{
+#ifdef Q_OS_MAC
+ disableCrashhandler();
+#endif /* Q_OS_MAC */
- setRunMode(Quassel::CoreOnly);
- _internal = new CoreApplicationInternal();
+ setRunMode(Quassel::CoreOnly);
+ _internal = new CoreApplicationInternal();
}
-CoreApplication::~CoreApplication() {
- delete _internal;
+
+CoreApplication::~CoreApplication()
+{
+ delete _internal;
}
-bool CoreApplication::init() {
- if(Quassel::init() && _internal->init()) {
- qInstallMsgHandler(Logger::logMessage);
- return true;
- }
- return false;
+
+bool CoreApplication::init()
+{
+ if (Quassel::init() && _internal->init()) {
+#if QT_VERSION < 0x050000
+ qInstallMsgHandler(Logger::logMessage);
+#else
+ qInstallMessageHandler(Logger::logMessage);
+#endif
+ return true;
+ }
+ return false;
}