[escher] TableViewDataSource: implement default cumulatedWidthFromIndex,

cumulatedWidthFromIndex, indexFromCumulatedWidth,
indexFromCumulatedHeight
This commit is contained in:
Émilie Feral
2018-06-06 17:15:46 +02:00
parent 2d580faf51
commit f6bdf56c15
12 changed files with 38 additions and 91 deletions

View File

@@ -2,3 +2,37 @@
void TableViewDataSource::willDisplayCellAtLocation(HighlightCell * cell, int i, int j) {
}
KDCoordinate TableViewDataSource::cumulatedWidthFromIndex(int i) {
int result = 0;
for (int k = 0; k < i; k++) {
result += columnWidth(k);
}
return result;
}
KDCoordinate TableViewDataSource::cumulatedHeightFromIndex(int j) {
int result = 0;
for (int k = 0; k < j; k++) {
result += rowHeight(k);
}
return result;
}
int TableViewDataSource::indexFromCumulatedWidth(KDCoordinate offsetX) {
int result = 0;
int i = 0;
while (result < offsetX && i < numberOfColumns()) {
result += columnWidth(i++);
}
return (result < offsetX || offsetX == 0) ? i : i - 1;
}
int TableViewDataSource::indexFromCumulatedHeight(KDCoordinate offsetY) {
int result = 0;
int j = 0;
while (result < offsetY && j < numberOfRows()) {
result += rowHeight(j++);
}
return (result < offsetY || offsetY == 0) ? j : j - 1;
}