forked from qt-creator/qt-creator
Git: Pass rows instead of files for diffSelectedFiles
Useful when the same file can appear more than once (e.g. staged + modified) Task-number: QTCREATORBUG-5347 Change-Id: I3ce716c22840c149490e00e6948612607ae57159 Reviewed-by: Petar Perisin <petar.perisin@gmail.com> Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
committed by
Tobias Hunger
parent
39e9c5ef20
commit
76f6729892
@@ -210,7 +210,7 @@ VcsBaseSubmitEditor::VcsBaseSubmitEditor(const VcsBaseSubmitEditorParameters *pa
|
||||
connect(d->m_file, SIGNAL(saveMe(QString*,QString,bool)),
|
||||
this, SLOT(save(QString*,QString,bool)));
|
||||
|
||||
connect(d->m_widget, SIGNAL(diffSelected(QStringList)), this, SLOT(slotDiffSelectedVcsFiles(QStringList)));
|
||||
connect(d->m_widget, SIGNAL(diffSelected(QList<int>)), this, SLOT(slotDiffSelectedVcsFiles(QList<int>)));
|
||||
connect(d->m_widget->descriptionEdit(), SIGNAL(textChanged()), this, SLOT(slotDescriptionChanged()));
|
||||
|
||||
const CommonVcsSettings settings = VcsPlugin::instance()->settings();
|
||||
@@ -540,9 +540,25 @@ SubmitFileModel *VcsBaseSubmitEditor::fileModel() const
|
||||
return d->m_widget->fileModel();
|
||||
}
|
||||
|
||||
void VcsBaseSubmitEditor::slotDiffSelectedVcsFiles(const QStringList &rawList)
|
||||
QStringList VcsBaseSubmitEditor::rowsToFiles(const QList<int> &rows) const
|
||||
{
|
||||
emit diffSelectedFiles(rawList);
|
||||
if (rows.empty())
|
||||
return QStringList();
|
||||
|
||||
QStringList rc;
|
||||
const SubmitFileModel *model = fileModel();
|
||||
const int count = rows.size();
|
||||
for (int i = 0; i < count; i++)
|
||||
rc.push_back(model->file(rows.at(i)));
|
||||
return rc;
|
||||
}
|
||||
|
||||
void VcsBaseSubmitEditor::slotDiffSelectedVcsFiles(const QList<int> &rawList)
|
||||
{
|
||||
if (d->m_parameters->diffType == VcsBaseSubmitEditorParameters::DiffRows)
|
||||
emit diffSelectedFiles(rawList);
|
||||
else
|
||||
emit diffSelectedFiles(rowsToFiles(rawList));
|
||||
}
|
||||
|
||||
bool VcsBaseSubmitEditor::save(QString *errorString, const QString &fileName, bool autoSave)
|
||||
|
||||
Reference in New Issue
Block a user