Warning, file /frameworks/kconfigwidgets/tests/krecentfilesactiontest.cpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* 0002 This file is part of the KDE libraries 0003 SPDX-FileCopyrightText: 2014 Gregor Mi <codeminister@publicstatic.de> 0004 0005 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0006 */ 0007 0008 #include "krecentfilesactiontest.h" 0009 0010 #include <QApplication> 0011 #include <QDebug> 0012 0013 #include "krecentfilesaction.h" 0014 #include "kstandardaction.h" 0015 #include <KConfigGroup> 0016 #include <KSharedConfig> 0017 0018 #include "ui_krecentfilesactiontest.h" 0019 0020 int main(int argc, char **argv) 0021 { 0022 QApplication app(argc, argv); 0023 KRecentFilesActionTest mainWindow; 0024 mainWindow.show(); 0025 return app.exec(); 0026 } 0027 0028 class KRecentFilesActionTestPrivate 0029 { 0030 public: 0031 Ui::MainWindow *uiMainWindow; 0032 KRecentFilesAction *recentFiles; 0033 0034 public: 0035 void notifyOutputAvailable() 0036 { 0037 uiMainWindow->labelOutputAvailable->setText(uiMainWindow->labelOutputAvailable->text() + QLatin1Char('A')); 0038 qDebug() << recentFiles->items(); 0039 } 0040 0041 KConfigGroup testConfigGroup() 0042 { 0043 return KConfigGroup(KSharedConfig::openConfig(), "RecentFilesActionTest"); 0044 } 0045 }; 0046 0047 KRecentFilesActionTest::KRecentFilesActionTest() 0048 : d(new KRecentFilesActionTestPrivate) 0049 { 0050 d->uiMainWindow = new Ui::MainWindow(); 0051 d->uiMainWindow->setupUi(this); 0052 0053 d->recentFiles = KStandardAction::openRecent(this, &KRecentFilesActionTest::urlSelected, this); 0054 0055 connect(d->uiMainWindow->pbAddUrl, &QPushButton::clicked, this, &KRecentFilesActionTest::addUrl); 0056 connect(d->uiMainWindow->pbLoadEntries, &QPushButton::clicked, this, &KRecentFilesActionTest::loadEntries); 0057 connect(d->uiMainWindow->pbSaveEntries, &QPushButton::clicked, this, &KRecentFilesActionTest::saveEntries); 0058 0059 d->uiMainWindow->menuFile->addAction(d->recentFiles); 0060 0061 // loadEntries(); 0062 } 0063 0064 KRecentFilesActionTest::~KRecentFilesActionTest() 0065 { 0066 // saveEntries(); 0067 0068 delete d->uiMainWindow; 0069 delete d; 0070 } 0071 0072 void KRecentFilesActionTest::urlSelected(const QUrl &url) 0073 { 0074 qDebug() << "urlSelected" << url; 0075 d->notifyOutputAvailable(); 0076 } 0077 0078 void KRecentFilesActionTest::addUrl() 0079 { 0080 QString url = d->uiMainWindow->lineEditUrl->text(); 0081 qDebug() << "addUrl" << url; 0082 0083 d->recentFiles->addUrl(QUrl(url)); 0084 0085 d->notifyOutputAvailable(); 0086 d->uiMainWindow->lineEditUrl->setText(url + QLatin1Char('a')); 0087 } 0088 0089 void KRecentFilesActionTest::loadEntries() 0090 { 0091 d->notifyOutputAvailable(); 0092 qDebug() << "recentFiles->loadEntries()"; 0093 d->recentFiles->loadEntries(d->testConfigGroup()); 0094 d->notifyOutputAvailable(); 0095 } 0096 0097 void KRecentFilesActionTest::saveEntries() 0098 { 0099 qDebug() << "recentFiles->saveEntries()"; 0100 d->recentFiles->saveEntries(d->testConfigGroup()); 0101 }