comparison src/mainwindow.cpp @ 633:db62a0cb3037

* Added setting to specify that diff command should be run once for each selected file, rather than passing all file names to diff command (p4merge doesn't like being given many files)
author Sam Izzo <sam@humbug.net>
date Mon, 27 Aug 2012 01:26:57 +1000
parents 38c84c66ad7a
children 6e479f33ea93
comparison
equal deleted inserted replaced
632:f9fd48e55af1 633:db62a0cb3037
913 QStringList params; 913 QStringList params;
914 914
915 // Diff parent against working folder (folder diff) 915 // Diff parent against working folder (folder diff)
916 916
917 params << "--config" << "extensions.extdiff=" << "extdiff"; 917 params << "--config" << "extensions.extdiff=" << "extdiff";
918 params << "--program" << diff; 918 params << "--program" << diff << "--";
919 919
920 params << "--" << files; // may be none: whole dir 920 QSettings settings;
921 921 if (settings.value("multipleDiffInstances", false).toBool()) {
922 m_runner->requestAction(HgAction(ACT_FOLDERDIFF, m_workFolderPath, params)); 922 foreach (QString file, files) {
923 QStringList p = params;
924 p << file;
925 m_runner->requestAction(HgAction(ACT_FOLDERDIFF, m_workFolderPath, p));
926 }
927 }
928 else {
929 params << files; // may be none: whole dir
930 m_runner->requestAction(HgAction(ACT_FOLDERDIFF, m_workFolderPath, params));
931 }
923 } 932 }
924 933
925 void MainWindow::hgDiffToCurrent(QString id) 934 void MainWindow::hgDiffToCurrent(QString id)
926 { 935 {
927 QString diff = getDiffBinaryName(); 936 QString diff = getDiffBinaryName();