File indexing completed on 2024-05-12 05:12:46
0001 /* 0002 This file is part of Akonadi. 0003 0004 SPDX-FileCopyrightText: 2006 Tobias Koenig <tokoe@kde.org> 0005 0006 SPDX-License-Identifier: GPL-2.0-or-later 0007 */ 0008 0009 #include "mainwindow.h" 0010 #include "config-akonadiconsole.h" 0011 0012 #include "uistatesaver.h" 0013 0014 #include <KActionCollection> 0015 #include <KConfigGroup> 0016 #include <KLocalizedString> 0017 #include <KMessageBox> 0018 #include <KStandardAction> 0019 0020 #include <KSharedConfig> 0021 0022 MainWindow::MainWindow(QWidget *parent) 0023 : KXmlGuiWindow(parent) 0024 , mMain(new MainWidget(this)) 0025 { 0026 setCentralWidget(mMain); 0027 0028 KStandardAction::quit(qApp, &QApplication::quit, actionCollection()); 0029 0030 setupGUI(Keys /*| ToolBar | StatusBar*/ | Save | Create, QStringLiteral("akonadiconsoleui.rc")); 0031 AkonadiConsole::UiStateSaver::restoreState(this, KConfigGroup(KSharedConfig::openConfig(), QStringLiteral("UiState"))); 0032 KMessageBox::information(this, 0033 i18n("<p>Akonadi Console is purely a development tool. " 0034 "It allows you to view and change internal data structures of Akonadi. " 0035 "You should only change data in here if you know what you are doing, otherwise " 0036 "you risk damaging or losing your personal information management data.<br/>" 0037 "<b>Use at your own risk!</b></p>"), 0038 QString(), 0039 QStringLiteral("UseAtYourOwnRiskWarning")); 0040 } 0041 0042 MainWindow::~MainWindow() 0043 { 0044 delete mMain; 0045 } 0046 0047 void MainWindow::closeEvent(QCloseEvent *event) 0048 { 0049 KConfigGroup config(KSharedConfig::openConfig(), QStringLiteral("UiState")); 0050 AkonadiConsole::UiStateSaver::saveState(this, config); 0051 KSharedConfig::openConfig()->sync(); 0052 KXmlGuiWindow::closeEvent(event); 0053 } 0054 0055 #include "moc_mainwindow.cpp"