[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [kcachegrind/frameworks] /: Move away from KIO::NetAccess/KFileDialog
From: Josef Weidendorfer <Josef.Weidendorfer () gmx ! de>
Date: 2016-03-29 22:27:50
Message-ID: E1al274-0006t6-5z () scm ! kde ! org
[Download RAW message or body]
Git commit 2bd4eb504418b37004ef93e1e4f099860ff3d3d0 by Josef Weidendorfer.
Committed on 29/03/2016 at 22:25.
Pushed by weidendo into branch 'frameworks'.
Move away from KIO::NetAccess/KFileDialog
This finally allows to remove dependency on KDELibs4Support
M +1 -1 CMakeLists.txt
M +2 -1 kcachegrind/CMakeLists.txt
M +6 -8 kcachegrind/configdlg.cpp
M +0 -1 kcachegrind/kdeconfig.cpp
M +60 -37 kcachegrind/toplevel.cpp
http://commits.kde.org/kcachegrind/2bd4eb504418b37004ef93e1e4f099860ff3d3d0
diff --git a/CMakeLists.txt b/CMakeLists.txt
index cf2c9c0..6849033 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -23,7 +23,7 @@ include(ECMAddAppIcon)
find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED Core DBus Widgets)
find_package(KF5 REQUIRED
- Archive CoreAddons DocTools WidgetsAddons XmlGui I18n KDELibs4Support
+ Archive CoreAddons DocTools WidgetsAddons XmlGui I18n Config KIO
)
add_definitions(-DQT_STRICT_ITERATORS)
diff --git a/kcachegrind/CMakeLists.txt b/kcachegrind/CMakeLists.txt
index 7edf96a..273c706 100644
--- a/kcachegrind/CMakeLists.txt
+++ b/kcachegrind/CMakeLists.txt
@@ -21,7 +21,8 @@ set(kcachegrind_LIBS
KF5::CoreAddons
KF5::I18n
KF5::XmlGui
- KF5::KDELibs4Support
+ KF5::ConfigCore KF5::ConfigGui
+ KF5::KIOCore KF5::KIOFileWidgets KF5::KIOWidgets KF5::KIONTLM
)
target_link_libraries(kcachegrind core views ${kcachegrind_LIBS})
diff --git a/kcachegrind/configdlg.cpp b/kcachegrind/configdlg.cpp
index e693a93..5fc00a4 100644
--- a/kcachegrind/configdlg.cpp
+++ b/kcachegrind/configdlg.cpp
@@ -23,12 +23,11 @@
#include "configdlg.h"
#include <QCheckBox>
+#include <QDir>
+#include <QFileDialog>
#include <QMessageBox>
#include <kcolorbutton.h>
-#include <kfiledialog.h>
-#include <klocale.h>
-#include <knumvalidator.h>
#include "tracedata.h"
#include "globalguiconfig.h"
@@ -46,7 +45,7 @@ ConfigDlg::ConfigDlg(GlobalGUIConfig* c, TraceData* data,
connect(objectCombo, SIGNAL(activated(const QString &)),
this, SLOT(objectActivated(const QString &)));
- connect(objectCombo, SIGNAL(textChanged(const QString &)),
+ connect(objectCombo, SIGNAL(editTextChanged(const QString &)),
this, SLOT(objectActivated(const QString &)));
connect(objectCheck, &QAbstractButton::toggled,
this, &ConfigDlg::objectCheckChanged);
@@ -55,7 +54,7 @@ ConfigDlg::ConfigDlg(GlobalGUIConfig* c, TraceData* data,
connect(classCombo, SIGNAL(activated(const QString &)),
this, SLOT(classActivated(const QString &)));
- connect(classCombo, SIGNAL(textChanged(const QString &)),
+ connect(classCombo, SIGNAL(editTextChanged(const QString &)),
this, SLOT(classActivated(const QString &)));
connect(classCheck, &QAbstractButton::toggled,
this, &ConfigDlg::classCheckChanged);
@@ -64,7 +63,7 @@ ConfigDlg::ConfigDlg(GlobalGUIConfig* c, TraceData* data,
connect(fileCombo, SIGNAL(activated(const QString &)),
this, SLOT(fileActivated(const QString &)));
- connect(fileCombo, SIGNAL(textChanged(const QString &)),
+ connect(fileCombo, SIGNAL(editTextChanged(const QString &)),
this, SLOT(fileActivated(const QString &)));
connect(fileCheck, &QAbstractButton::toggled,
this, &ConfigDlg::fileCheckChanged);
@@ -355,8 +354,7 @@ void ConfigDlg::dirsAddPressed()
dirs = &(_config->_objectSourceDirs[objName]);
QString newDir;
- newDir = KFileDialog::getExistingDirectory(QUrl(),
- this,
+ newDir = QFileDialog::getExistingDirectory(this,
i18n("Choose Source Folder"));
if (newDir.isEmpty()) return;
diff --git a/kcachegrind/kdeconfig.cpp b/kcachegrind/kdeconfig.cpp
index 30dcab4..5f7bc08 100644
--- a/kcachegrind/kdeconfig.cpp
+++ b/kcachegrind/kdeconfig.cpp
@@ -23,7 +23,6 @@
#include "kdeconfig.h"
#include <kconfig.h>
-#include <klocale.h>
#include <kconfiggroup.h>
#include "tracedata.h"
diff --git a/kcachegrind/toplevel.cpp b/kcachegrind/toplevel.cpp
index ecc5c77..a119268 100644
--- a/kcachegrind/toplevel.cpp
+++ b/kcachegrind/toplevel.cpp
@@ -27,17 +27,22 @@
#include <stdlib.h> // for system()
-#include <QDockWidget>
#include <QDebug>
-#include <QTimer>
+#include <QDockWidget>
+#include <QEventLoop>
+#include <QFile>
+#include <QFileDialog>
#include <QLabel>
#include <QLineEdit>
-#include <QProgressBar>
-#include <QFile>
-#include <QEventLoop>
+#include <QMenu>
+#include <QMimeDatabase>
#include <QProcess>
+#include <QProgressBar>
+#include <QStatusBar>
+#include <QTemporaryFile>
+#include <QTimer>
+#include <QUrl>
#include <QtDBus/QDBusConnection>
-#include <QMimeDatabase>
#include <ktoggleaction.h>
#include <ktoolbarpopupaction.h>
@@ -46,19 +51,15 @@
#include <krecentfilesaction.h>
#include <ktoolbar.h>
#include <kstandardguiitem.h>
-#include <klocale.h>
-#include <kstatusbar.h>
#include <kstandardshortcut.h>
#include <kstandardaction.h>
-#include <kaction.h>
-#include <QUrl>
-#include <kfiledialog.h>
-#include <kio/netaccess.h>
+#include <kio/job.h>
+#include <kjobwidgets.h>
#include <kedittoolbar.h>
#include <kshortcutsdialog.h>
#include <ktip.h>
-#include <kmenu.h>
#include <kmessagebox.h>
+#include <ksharedconfig.h>
#include <kconfiggroup.h>
#include <KArchive/kfilterdev.h>
@@ -903,10 +904,11 @@ void TopLevel::newWindow()
void TopLevel::load()
{
- QUrl url = KFileDialog::getOpenUrl(QUrl("kfiledialog:///"),
- i18n("cachegrind.out* \
callgrind.out*|Callgrind Profile Data\n*|All Files"),
- this,
- i18n("Select Callgrind Profile Data"));
+ QUrl url = QFileDialog::getOpenFileUrl(this,
+ i18n("Select Callgrind Profile Data"),
+ QString(),
+ i18n("Callgrind Profile Data \
(cachegrind.out* callgrind.out*);;All Files (*)")); +
load(url);
}
@@ -914,19 +916,29 @@ void TopLevel::load(const QUrl& url)
{
if (url.isEmpty()) return;
- // network transparency
- QString tmpFile;
- // for KDE 3.2: KIO::NetAccess::download with 2 args is deprecated
- if(KIO::NetAccess::download( url, tmpFile, this )) {
- _openRecent->addUrl(url);
- _openRecent->saveEntries( KConfigGroup( KSharedConfig::openConfig(), QString() ) \
); + QString tmpFileName;
+ QTemporaryFile tmpFile;
+ if (url.isLocalFile()) {
+ tmpFileName = url.toLocalFile();
+ }
+ else if (tmpFile.open()){
+ // network transparency
+ tmpFileName = tmpFile.fileName();
+ KIO::FileCopyJob *job = KIO::file_copy(url,
+ QUrl::fromLocalFile(tmpFileName));
+ KJobWidgets::setWindow(job, this);
+ job->exec();
+ }
+ if (!tmpFileName.isEmpty()) {
+ _openRecent->addUrl(url);
+ _openRecent->saveEntries( KConfigGroup( KSharedConfig::openConfig(), QString() \
) );
- load(tmpFile);
- KIO::NetAccess::removeTempFile( tmpFile );
+ load(tmpFileName);
} else {
- KMessageBox::error(this, i18n("Could not open the file \"%1\". "
- "Check it exists and you have enough "
- "permissions to read it.", \
url.toDisplayString())); + KMessageBox::error(this, i18n("Could not open the \
file \"%1\". " + "Check it exists and you have \
enough " + "permissions to read it.",
+ url.toDisplayString()));
}
}
@@ -960,10 +972,11 @@ void TopLevel::load(QString file)
void TopLevel::add()
{
- QUrl url = KFileDialog::getOpenUrl(QUrl(),
- i18n("cachegrind.out* \
callgrind.out*|Callgrind Profile Data\n*|All Files"),
- this,
- i18n("Add Callgrind Profile Data"));
+ QUrl url = QFileDialog::getOpenFileUrl(this,
+ i18n("Add Callgrind Profile Data"),
+ QString(),
+ i18n("Callgrind Profile Data \
(cachegrind.out* callgrind.out*);;All Files (*)")); +
add(url);
}
@@ -971,14 +984,24 @@ void TopLevel::add(const QUrl &url)
{
if (url.isEmpty()) return;
- // network transparency
- QString tmpFile;
- if(KIO::NetAccess::download( url, tmpFile, this )) {
+ QString tmpFileName;
+ QTemporaryFile tmpFile;
+ if (url.isLocalFile()) {
+ tmpFileName = url.toLocalFile();
+ }
+ else if (tmpFile.open()){
+ // network transparency
+ tmpFileName = tmpFile.fileName();
+ KIO::FileCopyJob *job = KIO::file_copy(url,
+ QUrl::fromLocalFile(tmpFileName));
+ KJobWidgets::setWindow(job, this);
+ job->exec();
+ }
+ if (!tmpFileName.isEmpty()) {
_openRecent->addUrl(url);
_openRecent->saveEntries( KSharedConfig::openConfig()->group( QString() ) );
- add(tmpFile);
- KIO::NetAccess::removeTempFile( tmpFile );
+ add(tmpFileName);
}
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic