From fab3c0bf42c3eb823fc27d91fef0da87c398f6d0 Mon Sep 17 00:00:00 2001 From: kostas Date: Fri, 29 May 2015 20:23:48 +0000 Subject: [PATCH] Ported new features to QT4 FossilOrigin-Name: 28087b899e38a3881855cf1e7272da3fb13b3462 --- manifest | 25 ++++++++++++------------- manifest.uuid | 2 +- src/Fossil.cpp | 11 ++++++----- src/MainWindow.cpp | 5 +++-- src/RemoteDialog.cpp | 4 ++-- src/RevisionDialog.cpp | 8 ++++++++ src/Utils.cpp | 27 ++++++++++++++++++++++++--- src/Utils.h | 2 ++ src/Workspace.cpp | 2 +- 9 files changed, 59 insertions(+), 27 deletions(-) diff --git a/manifest b/manifest index 95853c3..3e784ec 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Merged\sremote-management -D 2015-05-29T19:26:31.501 +C Ported\snew\sfeatures\sto\sQT4\n +D 2015-05-29T20:23:48.938 F .travis.yml 77966888a81c4ceee1fcc79bce842c9667ad8a35 F debian/changelog eb4304dfcb6bb66850ec740838090eb50ce1249b F debian/compat b6abd567fa79cbe0196d093a067271361dc6ca8b @@ -218,17 +218,17 @@ F src/FileActionDialog.cpp fcaebf9986f789b3440d5390b3458ad5f86fe0c8 F src/FileActionDialog.h 15db1650b3a13d70bc338371e4c033c66e3b79ce F src/FileTableView.cpp 5ddf8c391c9a3ac449ec61fb1db837b577afeec2 F src/FileTableView.h 03e56d87c2d46411b9762b87f4d301619aaf18df -F src/Fossil.cpp 2b03aeec20149a1b89f10118058fac8ca33425fc +F src/Fossil.cpp 0149ce9af91392bb51b87c700e7edd4f8a4aefe7 F src/Fossil.h e706992b331385660d57df6a27e5418342c14e19 F src/FslSettingsDialog.cpp 2531d3709f0eab66651671e3edead2ca720d07d5 F src/FslSettingsDialog.h dfe2a61884a55a74cbb9206b6f6b482b979725e7 F src/LoggedProcess.cpp 2a1e5c94bc1e57c8984563e66c210e43a14dc60c F src/LoggedProcess.h 85df7c635c807a5a0e8c4763f17a0752aaff7261 -F src/MainWindow.cpp bba716022fd683843abc07be47fdca3e15391e1f +F src/MainWindow.cpp 3c2ecc74550811b1c5b271aeb3df36e3ee981f3b F src/MainWindow.h 1ecfb255c8e013cf4e2d07bfd485ed41d26c97c7 -F src/RemoteDialog.cpp 7f4272117080260c31c748e2ada3e33adc024826 +F src/RemoteDialog.cpp 8540cc5e2e41c4127ed8a028d84691604fa6ecac F src/RemoteDialog.h 5e0438c2bd7c79b1bb44bfbd58c2181b544a9e5d -F src/RevisionDialog.cpp 51065c65a07c118dd1a7363da4a55a135d1c6c9c +F src/RevisionDialog.cpp e58c4f8a704f00addebb15d521b76620fdafda79 F src/RevisionDialog.h b718c3009342eaabad39c8a11a253a4e4fef7a73 F src/SearchBox.cpp d4209c575baa9933e1ce5ed376e785b289a145ba F src/SearchBox.h 0c78d3a68136dab3e0e71b83ae36f22bd2688ab2 @@ -236,9 +236,9 @@ F src/Settings.cpp 7a674604caa9d9f5ffb6b73d95745bde09525389 F src/Settings.h 883ac5c0f38a6ac93b400b7b96447b017ee50c06 F src/SettingsDialog.cpp 25be4c351dd21ea9132321944f42dc0bc22fb128 F src/SettingsDialog.h b324dfd77ca3ad24fd83588aaf79a7e4c291e716 -F src/Utils.cpp 09ba0fc6d6d293ebbd2f7c7283286b68d3cb04fb -F src/Utils.h e22c5d86722e3987894fa06bdee3d57597ff425e -F src/Workspace.cpp dd2dfb259fd917bd8434b5f00d438fdd9643242f +F src/Utils.cpp d53b1b92352e586a7c12a19ec6b109a9f095b7f1 +F src/Utils.h 011e4be3f94cd26be537299cd44ab9c135db44a5 +F src/Workspace.cpp 7004c2c30f79d2e64691aa9b2c55ee72a84d978b F src/Workspace.h 7ae2e63196433ae34864d182e49e3a2f0726fb78 F src/main.cpp d8c65ea5e54102e4989fef9fd8cfd4f13ef8a8f0 F tools/git-push.sh 62cc58434cae5b7bcd6bd9d4cce8b08739f31cd7 x @@ -252,8 +252,7 @@ F ui/MainWindow.ui 5857b45ed96fb027b6159e44742e9afaa3e89cfb F ui/RemoteDialog.ui 95a4750d972ed8c49bb10b95db91ff16cfe2dd0b F ui/RevisionDialog.ui 27c3b98c665fec014a50cbf3352c0627f75e68cd F ui/SettingsDialog.ui 4c480cd595a32664d01c85bf74845c4282fc0068 -P 322729110f48bfb8c007dd611d47e411b389044a 1f10dd85e5d7e95539baaea140623673b19f12f2 -R ddb33050a72347b140cbfa284e3483f6 -T +closed 1f10dd85e5d7e95539baaea140623673b19f12f2 +P 4c246e5290d2cb3b1a90127fe953bffbbf77ea53 +R 52684848c41da7b7626f93250ca32a33 U kostas -Z a7be8a80a6ffb699e0de683c517f0113 +Z a1601d791125dc1b8e40de27ecbad01e diff --git a/manifest.uuid b/manifest.uuid index 5545d6d..fa72a38 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -4c246e5290d2cb3b1a90127fe953bffbbf77ea53 \ No newline at end of file +28087b899e38a3881855cf1e7272da3fb13b3462 \ No newline at end of file diff --git a/src/Fossil.cpp b/src/Fossil.cpp index 76ff9c2..5578cdd 100644 --- a/src/Fossil.cpp +++ b/src/Fossil.cpp @@ -141,11 +141,11 @@ bool Fossil::pushRepository(const QUrl &url) if(!url.isEmpty()) { - params << url.toString(); + params << url.toEncoded(); params << "--once"; QStringList log_params = params; - log_params[1] = url.toDisplayString(); + log_params[1] = UrlToStringDisplay(url); log_params.push_front("fossil"); runFlags = RUNFLAGS_SILENT_INPUT; @@ -165,11 +165,12 @@ bool Fossil::pullRepository(const QUrl &url) if(!url.isEmpty()) { - params << url.toString(); + params << url.toEncoded(); params << "--once"; QStringList log_params = params; - log_params[1] = url.toDisplayString(); + log_params[1] = UrlToStringDisplay(url); + log_params.push_front("fossil"); runFlags = RUNFLAGS_SILENT_INPUT; @@ -403,7 +404,7 @@ bool Fossil::setFossilSetting(const QString& name, const QString& value, bool gl //------------------------------------------------------------------------------ bool Fossil::setRemoteUrl(const QUrl& url) { - QString u = url.toString(QUrl::FullyEncoded); + QString u = url.toEncoded(); if(url.isEmpty()) u = "off"; diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp index 14b74f5..b1c9f50 100644 --- a/src/MainWindow.cpp +++ b/src/MainWindow.cpp @@ -660,7 +660,7 @@ void MainWindow::scanWorkspace() lblRevision->setText(tr("Revision: %0").arg(fossil().getCurrentRevision())); lblRevision->setVisible(true); - lblTags->setText(tr("Tags: %0").arg(fossil().getCurrentTags().join(' '))); + lblTags->setText(tr("Tags: %0").arg(fossil().getCurrentTags().join(" "))); lblTags->setVisible(true); } @@ -807,7 +807,8 @@ void MainWindow::updateWorkspaceView() { QStandardItem *remote_item = new QStandardItem(getInternalIcon(":icons/icon-item-remote"), it->name); remote_item->setData(WorkspaceItem(WorkspaceItem::TYPE_REMOTE, it->url.toString()), ROLE_WORKSPACE_ITEM); - remote_item->setToolTip(it->url.toDisplayString()); + + remote_item->setToolTip(UrlToStringDisplay(it->url)); // Mark the default url as bold if(it->isDefault) diff --git a/src/RemoteDialog.cpp b/src/RemoteDialog.cpp index 8afdb00..9b15a6f 100644 --- a/src/RemoteDialog.cpp +++ b/src/RemoteDialog.cpp @@ -29,7 +29,7 @@ bool RemoteDialog::run(QWidget *parent, QUrl &url, QString &name) // Set URL components if(!url.isEmpty()) { - QString url_no_credentials = url.toString(QUrl::PrettyDecoded|QUrl::RemoveUserInfo); + QString url_no_credentials = UrlToStringNoCredentials(url); dlg.ui->lineURL->setText(url_no_credentials); dlg.ui->lineUserName->setText(url.userName()); dlg.ui->linePassword->setText(url.password()); @@ -56,7 +56,7 @@ bool RemoteDialog::run(QWidget *parent, QUrl &url, QString &name) name =dlg.ui->lineName->text().trimmed(); if(name.isEmpty()) - name = url.toString(QUrl::PrettyDecoded|QUrl::RemoveUserInfo); + name = UrlToStringNoCredentials(url); return true; } diff --git a/src/RevisionDialog.cpp b/src/RevisionDialog.cpp index 0f2ca8b..ed8b2a6 100644 --- a/src/RevisionDialog.cpp +++ b/src/RevisionDialog.cpp @@ -14,7 +14,15 @@ RevisionDialog::RevisionDialog(QWidget *parent, const QStringList &completions, ui->cmbRevision->addItems(completions); if(!defaultValue.isEmpty()) + { +#if (QT_VERSION < QT_VERSION_CHECK(5, 0, 0)) + int index = ui->cmbRevision->findText(defaultValue); + if(index>=0) + ui->cmbRevision->setCurrentIndex(index); +#else ui->cmbRevision->setCurrentText(defaultValue); +#endif + } } //----------------------------------------------------------------------------- diff --git a/src/Utils.cpp b/src/Utils.cpp index e6777b9..ce32157 100644 --- a/src/Utils.cpp +++ b/src/Utils.cpp @@ -3,6 +3,7 @@ #include #include #include +#include #include "ext/qtkeychain/keychain.h" #include @@ -397,7 +398,7 @@ void BuildNameToModelIndex(name_modelindex_map_t &map, const QStandardItemModel bool KeychainSet(QObject *parent, const QUrl &url) { QEventLoop loop(parent); - QKeychain::WritePasswordJob job(url.toString(QUrl::PrettyDecoded|QUrl::RemoveUserInfo)); + QKeychain::WritePasswordJob job(UrlToStringNoCredentials(url)); job.connect( &job, SIGNAL(finished(QKeychain::Job*)), &loop, SLOT(quit()) ); job.setAutoDelete( false ); job.setInsecureFallback(false); @@ -412,7 +413,7 @@ bool KeychainSet(QObject *parent, const QUrl &url) bool KeychainGet(QObject *parent, QUrl &url) { QEventLoop loop(parent); - QKeychain::ReadPasswordJob job(url.toString(QUrl::PrettyDecoded|QUrl::RemoveUserInfo)); + QKeychain::ReadPasswordJob job(UrlToStringNoCredentials(url)); job.connect( &job, SIGNAL(finished(QKeychain::Job*)), &loop, SLOT(quit())); job.setAutoDelete( false ); job.setInsecureFallback(false); @@ -433,7 +434,7 @@ bool KeychainGet(QObject *parent, QUrl &url) bool KeychainDelete(QObject* parent, const QUrl& url) { QEventLoop loop(parent); - QKeychain::DeletePasswordJob job(url.toString(QUrl::PrettyDecoded|QUrl::RemoveUserInfo)); + QKeychain::DeletePasswordJob job(UrlToStringNoCredentials(url)); job.connect( &job, SIGNAL(finished(QKeychain::Job*)), &loop, SLOT(quit())); job.setAutoDelete( false ); job.setInsecureFallback(false); @@ -454,3 +455,23 @@ QString HashString(const QString& str) QString str_out(hash.result().toHex()); return str_out; } + +//------------------------------------------------------------------------------ +QString UrlToStringDisplay(const QUrl& url) +{ +#if (QT_VERSION < QT_VERSION_CHECK(5, 0, 0)) + return url.toString(QUrl::RemovePassword); +#else + return url.toDisplayString(); +#endif +} + +//------------------------------------------------------------------------------ +QString UrlToStringNoCredentials(const QUrl& url) +{ +#if (QT_VERSION < QT_VERSION_CHECK(5, 0, 0)) + return url.toString(QUrl::RemoveUserInfo); +#else + return url.toString(QUrl::PrettyDecoded|QUrl::RemoveUserInfo); +#endif +} diff --git a/src/Utils.h b/src/Utils.h index e14789d..4eb4987 100644 --- a/src/Utils.h +++ b/src/Utils.h @@ -26,6 +26,8 @@ bool KeychainSet(QObject* parent, const QUrl& url); bool KeychainGet(QObject* parent, QUrl& url); bool KeychainDelete(QObject* parent, const QUrl& url); QString HashString(const QString &str); +QString UrlToStringDisplay(const QUrl &url); +QString UrlToStringNoCredentials(const QUrl& url); typedef QMap QStringMap; diff --git a/src/Workspace.cpp b/src/Workspace.cpp index 764a1f3..8316b4a 100644 --- a/src/Workspace.cpp +++ b/src/Workspace.cpp @@ -107,7 +107,7 @@ bool Workspace::switchWorkspace(const QString& workspace, QSettings &store) // Add Default remote if not available already if(findRemote(default_remote)==NULL) { - addRemote(default_remote, default_remote.toDisplayString()); + addRemote(default_remote, UrlToStringDisplay(default_remote)); setRemoteDefault(default_remote); } }