forked from qt-creator/qt-creator
Utils: Move DiffUtils::interpolate into MathUtils
Change-Id: Iac4a21a6c760d8fbf0dce380b1a9a587a9d3468e Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -1342,17 +1342,4 @@ QList<FileData> DiffUtils::readPatch(const QString &patch, bool *ok,
|
||||
return fileDataList;
|
||||
}
|
||||
|
||||
int DiffUtils::interpolate(int x, int x1, int x2, int y1, int y2)
|
||||
{
|
||||
if (x1 == x2)
|
||||
return x1;
|
||||
if (x == x1)
|
||||
return y1;
|
||||
if (x == x2)
|
||||
return y2;
|
||||
const int numerator = (y2 - y1) * x + x2 * y1 - x1 * y2;
|
||||
const int denominator = x2 - x1;
|
||||
return qRound((double)numerator / denominator);
|
||||
}
|
||||
|
||||
} // namespace DiffEditor
|
||||
|
||||
@@ -151,8 +151,6 @@ public:
|
||||
static QList<FileData> readPatch(const QString &patch,
|
||||
bool *ok = nullptr,
|
||||
QFutureInterfaceBase *jobController = nullptr);
|
||||
// For progress reporting
|
||||
static int interpolate(int x, int x1, int x2, int y1, int y2);
|
||||
};
|
||||
|
||||
} // namespace DiffEditor
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
#include "diffeditorconstants.h"
|
||||
#include "diffeditordocument.h"
|
||||
#include "diffeditorplugin.h"
|
||||
#include "diffutils.h"
|
||||
|
||||
#include <QMenu>
|
||||
#include <QPainter>
|
||||
@@ -26,6 +25,7 @@
|
||||
#include <texteditor/texteditorsettings.h>
|
||||
|
||||
#include <utils/asynctask.h>
|
||||
#include <utils/mathutils.h>
|
||||
#include <utils/tooltip/tooltip.h>
|
||||
|
||||
using namespace Core;
|
||||
@@ -365,7 +365,7 @@ SideBySideDiffOutput SideDiffData::diffOutput(QFutureInterface<void> &fi, int pr
|
||||
diffText[RightSide].replace('\r', ' ');
|
||||
output.side[LeftSide].diffText += diffText[LeftSide];
|
||||
output.side[RightSide].diffText += diffText[RightSide];
|
||||
fi.setProgressValue(DiffUtils::interpolate(++i, 0, count, progressMin, progressMax));
|
||||
fi.setProgressValue(MathUtils::interpolate(++i, 0, count, progressMin, progressMax));
|
||||
if (fi.isCanceled())
|
||||
return {};
|
||||
}
|
||||
@@ -952,7 +952,7 @@ void SideBySideDiffEditorWidget::showDiff()
|
||||
const QString package = output.side[side].diffText.mid(currentPos, packageSize);
|
||||
cursor.insertText(package);
|
||||
currentPos += package.size();
|
||||
fi.setProgressValue(DiffUtils::interpolate(currentPos, 0, diffSize, progressMin, progressMax));
|
||||
fi.setProgressValue(MathUtils::interpolate(currentPos, 0, diffSize, progressMin, progressMax));
|
||||
if (fi.isCanceled())
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
#include "diffeditorconstants.h"
|
||||
#include "diffeditordocument.h"
|
||||
#include "diffeditorplugin.h"
|
||||
#include "diffutils.h"
|
||||
|
||||
#include <QMenu>
|
||||
#include <QPainter>
|
||||
@@ -22,6 +21,7 @@
|
||||
#include <texteditor/texteditorsettings.h>
|
||||
|
||||
#include <utils/asynctask.h>
|
||||
#include <utils/mathutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/tooltip/tooltip.h>
|
||||
|
||||
@@ -436,7 +436,7 @@ UnifiedDiffOutput UnifiedDiffData::diffOutput(QFutureInterface<void> &fi, int pr
|
||||
output.diffData.m_chunkInfo.setChunkIndex(oldBlock, blockNumber - oldBlock, j);
|
||||
}
|
||||
}
|
||||
fi.setProgressValue(DiffUtils::interpolate(++i, 0, count, progressMin, progressMax));
|
||||
fi.setProgressValue(MathUtils::interpolate(++i, 0, count, progressMin, progressMax));
|
||||
if (fi.isCanceled())
|
||||
return {};
|
||||
}
|
||||
@@ -511,7 +511,7 @@ void UnifiedDiffEditorWidget::showDiff()
|
||||
const QString package = output.diffText.mid(currentPos, packageSize);
|
||||
cursor.insertText(package);
|
||||
currentPos += package.size();
|
||||
fi.setProgressValue(DiffUtils::interpolate(currentPos, 0, diffSize, firstPartMax, progressMax));
|
||||
fi.setProgressValue(MathUtils::interpolate(currentPos, 0, diffSize, firstPartMax, progressMax));
|
||||
if (futureInterface.isCanceled())
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user