mirror of
https://github.com/nasa/openmct.git
synced 2025-06-17 14:48:13 +00:00
Positioning of TOI in tables and plots
This commit is contained in:
@ -49,10 +49,8 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!--ng-class="{ 'l-toi pinned': false }"-->
|
||||
<!--ng-click="dummyUnpin()" -->
|
||||
<tr ng-repeat-start="visibleRow in visibleRows track by visibleRow.rowIndex"
|
||||
ng-if="visibleRow.rowIndex === 10"
|
||||
ng-if="visibleRow.rowIndex === toiRowIndex"
|
||||
ng-style="{ top: visibleRow.offsetY + 'px' }"
|
||||
class="l-toi-tablerow pinned">
|
||||
<td colspan="999">
|
||||
@ -60,8 +58,8 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr ng-repeat-end
|
||||
ng-click="table.onRowClick($event, visibleRow.rowIndex)"
|
||||
ng-style="{ top: visibleRow.offsetY + 'px' }">
|
||||
ng-style="{ top: visibleRow.offsetY + 'px' }"
|
||||
ng-click="table.onRowClick($event, visibleRow.rowIndex) ">
|
||||
<td ng-repeat="header in displayHeaders"
|
||||
ng-style=" {
|
||||
width: columnWidths[$index] + 'px',
|
||||
|
@ -110,6 +110,7 @@ define(
|
||||
|
||||
this.conductor.on('timeSystem', this.changeTimeSystem);
|
||||
this.conductor.on('timeOfInterest', this.setTimeOfInterest);
|
||||
this.conductor.on('bounds', this.changeBounds);
|
||||
|
||||
// If time system defined, set initially
|
||||
if (conductor.timeSystem()) {
|
||||
@ -124,6 +125,7 @@ define(
|
||||
MCTTableController.prototype.destroyConductorListeners = function () {
|
||||
this.conductor.off('timeSystem', this.changeTimeSystem);
|
||||
this.conductor.off('timeOfInterest', this.setTimeOfInterest);
|
||||
this.conductor.off('bounds', this.changeBounds);
|
||||
};
|
||||
|
||||
MCTTableController.prototype.changeTimeSystem = function () {
|
||||
@ -542,7 +544,15 @@ define(
|
||||
}
|
||||
|
||||
this.$scope.displayRows = this.filterAndSort(newRows || []);
|
||||
this.resize(newRows).then(this.setVisibleRows.bind(this));
|
||||
this.resize(newRows).then(function() {
|
||||
this.setVisibleRows();
|
||||
|
||||
var timeOfInterest = this.conductor.timeOfInterest();
|
||||
if (timeOfInterest) {
|
||||
this.setTimeOfInterest(timeOfInterest);
|
||||
}
|
||||
}.bind(this));
|
||||
|
||||
};
|
||||
|
||||
/**
|
||||
@ -604,25 +614,29 @@ define(
|
||||
if (this.$scope.timeColumns.indexOf(this.$scope.sortColumn) !== -1
|
||||
&& newTOI
|
||||
&& this.$scope.displayRows.length > 0) {
|
||||
var formattedTOI = this.toiFormatter.format(newTOI);;
|
||||
// searchElement, min, max
|
||||
this.$scope.toiRowIndex = this.binarySearch(this.$scope.displayRows,
|
||||
formattedTOI, 0, this.$scope.displayRows.length - 1);
|
||||
this.scrollToRow(this.$scope.toiRowIndex);
|
||||
var formattedTOI = this.toiFormatter.format(newTOI);
|
||||
// searchElement, min, max
|
||||
this.$scope.toiRowIndex = this.binarySearch(this.$scope.displayRows,
|
||||
formattedTOI, 0, this.$scope.displayRows.length - 1);
|
||||
this.scrollToRow(this.$scope.toiRowIndex);
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* On zoom, pan, etc. reset TOI
|
||||
* @param bounds
|
||||
*/
|
||||
MCTTableController.prototype.changeBounds = function(bounds) {
|
||||
this.setTimeOfInterest(this.conductor.timeOfInterest());
|
||||
};
|
||||
|
||||
MCTTableController.prototype.onRowClick = function (event, rowIndex) {
|
||||
if (this.$scope.timeColumns.indexOf(this.$scope.sortColumn) !== -1) {
|
||||
if (rowIndex === this.$scope.toiRowIndex) {
|
||||
this.conductor.timeOfInterest(undefined);
|
||||
} else {
|
||||
var selectedTime = this.$scope.displayRows[rowIndex][this.$scope.sortColumn].text;
|
||||
if (selectedTime
|
||||
&& this.toiFormatter.validate(selectedTime)
|
||||
&& event.altKey) {
|
||||
this.conductor.timeOfInterest(this.toiFormatter.parse(selectedTime));
|
||||
}
|
||||
var selectedTime = this.$scope.displayRows[rowIndex][this.$scope.sortColumn].text;
|
||||
if (selectedTime
|
||||
&& this.toiFormatter.validate(selectedTime)
|
||||
&& event.altKey) {
|
||||
this.conductor.timeOfInterest(this.toiFormatter.parse(selectedTime));
|
||||
}
|
||||
}
|
||||
};
|
||||
|
Reference in New Issue
Block a user