diff --git a/src/plugins/telemetryTable/TelemetryTable.js b/src/plugins/telemetryTable/TelemetryTable.js
index e65ff41c96..c7c2d12457 100644
--- a/src/plugins/telemetryTable/TelemetryTable.js
+++ b/src/plugins/telemetryTable/TelemetryTable.js
@@ -49,6 +49,7 @@ define([
this.telemetryObjects = [];
this.outstandingRequests = 0;
this.configuration = new TelemetryTableConfiguration(domainObject, openmct);
+ this.paused = false;
this.keyString = this.openmct.objects.makeKeyString(this.domainObject.identifier);
this.addTelemetryObject = this.addTelemetryObject.bind(this);
@@ -219,7 +220,10 @@ define([
if (!this.telemetryObjects.includes(telemetryObject)) {
return;
}
- this.processRealtimeDatum(datum, columnMap, keyString, limitEvaluator);
+
+ if (!this.paused) {
+ this.processRealtimeDatum(datum, columnMap, keyString, limitEvaluator);
+ }
}, subscribeOptions);
}
@@ -255,6 +259,17 @@ define([
}
}
+ pause() {
+ this.paused = true;
+ this.boundedRows.unsubscribeFromBounds();
+ }
+
+ unpause() {
+ this.paused = false;
+ this.boundedRows.subscribeToBounds();
+ this.refreshData();
+ }
+
destroy() {
this.boundedRows.destroy();
this.filteredRows.destroy();
diff --git a/src/plugins/telemetryTable/TelemetryTableColumn.js b/src/plugins/telemetryTable/TelemetryTableColumn.js
index 15185f159a..ad157832c4 100644
--- a/src/plugins/telemetryTable/TelemetryTableColumn.js
+++ b/src/plugins/telemetryTable/TelemetryTableColumn.js
@@ -21,10 +21,11 @@
*****************************************************************************/
define(function () {
class TelemetryTableColumn {
- constructor (openmct, metadatum) {
+ constructor (openmct, metadatum, options = {selectable: false}) {
this.metadatum = metadatum;
this.formatter = openmct.telemetry.getValueFormatter(metadatum);
this.titleValue = this.metadatum.name;
+ this.selectable = options.selectable;
}
getKey() {
@@ -55,8 +56,7 @@ define(function () {
return formattedValue;
}
}
-
- };
+ }
return TelemetryTableColumn;
});
diff --git a/src/plugins/telemetryTable/TelemetryTableViewProvider.js b/src/plugins/telemetryTable/TelemetryTableViewProvider.js
index b5b3238932..2c7bd19a4a 100644
--- a/src/plugins/telemetryTable/TelemetryTableViewProvider.js
+++ b/src/plugins/telemetryTable/TelemetryTableViewProvider.js
@@ -67,7 +67,7 @@ define([
table
},
el: element,
- template: ''
+ template: ''
});
},
onEditModeChange(isEditing) {
diff --git a/src/plugins/telemetryTable/collections/BoundedTableRowCollection.js b/src/plugins/telemetryTable/collections/BoundedTableRowCollection.js
index 77238d4412..e5c98f44b4 100644
--- a/src/plugins/telemetryTable/collections/BoundedTableRowCollection.js
+++ b/src/plugins/telemetryTable/collections/BoundedTableRowCollection.js
@@ -43,7 +43,8 @@ define(
this.sortByTimeSystem(openmct.time.timeSystem());
this.lastBounds = openmct.time.bounds();
- openmct.time.on('bounds', this.bounds);
+
+ this.subscribeToBounds();
}
addOne(item) {
@@ -140,9 +141,17 @@ define(
return this.parseTime(row.datum[this.sortOptions.key]);
}
- destroy() {
+ unsubscribeFromBounds() {
this.openmct.time.off('bounds', this.bounds);
}
+
+ subscribeToBounds() {
+ this.openmct.time.on('bounds', this.bounds);
+ }
+
+ destroy() {
+ this.unsubscribeFromBounds();
+ }
}
return BoundedTableRowCollection;
});
diff --git a/src/plugins/telemetryTable/components/table-row.vue b/src/plugins/telemetryTable/components/table-row.vue
index ed2642cd50..7e1a185ed9 100644
--- a/src/plugins/telemetryTable/components/table-row.vue
+++ b/src/plugins/telemetryTable/components/table-row.vue
@@ -20,22 +20,36 @@
* at runtime from the About dialog for additional information.
*****************************************************************************/
-
-
+
+ :row="row">
+