File indexing completed on 2024-04-28 08:47:23

0001 /*
0002     This file is part of Choqok, the KDE micro-blogging client
0003 
0004     SPDX-FileCopyrightText: 2008-2012 Mehrdad Momeny <mehrdad.momeny@gmail.com>
0005 
0006     SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0007 */
0008 
0009 #include "choqokapplication.h"
0010 
0011 #include "choqokbehaviorsettings.h"
0012 #include "choqokdebug.h"
0013 #include "choqokuiglobal.h"
0014 #include "dbushandler.h"
0015 #include "mainwindow.h"
0016 
0017 ChoqokApplication::ChoqokApplication(int &argc, char **argv)
0018     : Choqok::Application(argc, argv)
0019     , m_mainWindow(nullptr)
0020 {
0021     qCDebug(CHOQOK);
0022 
0023     setQuitOnLastWindowClosed(false);
0024 
0025     Choqok::ChoqokDbus();
0026 }
0027 
0028 ChoqokApplication::~ChoqokApplication()
0029 {
0030     qCDebug(CHOQOK);
0031 }
0032 
0033 void ChoqokApplication::setupMainWindow()
0034 {
0035     if (m_mainWindow) {
0036         m_mainWindow->deleteLater();
0037         m_mainWindow = nullptr;
0038     }
0039 
0040     m_mainWindow = new MainWindow(this);
0041 
0042     Choqok::UI::Global::setMainWindow(m_mainWindow);
0043 }
0044 
0045 void ChoqokApplication::quitChoqok()
0046 {
0047     qCDebug(CHOQOK) ;
0048 
0049     setShuttingDown(true);
0050 
0051     if (m_mainWindow) {
0052         Choqok::BehaviorSettings::setShowMainWinOnStart(m_mainWindow->isVisible());
0053         m_mainWindow->deleteLater();
0054         m_mainWindow = nullptr;
0055     }
0056     this->quit();
0057 }
0058 
0059 #include "moc_choqokapplication.cpp"