|
7 | 7 | from glue.core.component_id import ComponentID
|
8 | 8 | from glue.core.link_helpers import LinkSame
|
9 | 9 | from jdaviz.core.helpers import ConfigHelper
|
| 10 | +from lcviz.viewers import TimeScatterView |
10 | 11 |
|
11 | 12 | __all__ = ['LCviz']
|
12 | 13 |
|
13 |
| -_default_time_viewer_reference_name = 'flux-vs-time' |
14 |
| - |
15 | 14 | custom_components = {'plugin-ephemeris-select': 'components/plugin_ephemeris_select.vue'}
|
16 | 15 |
|
17 | 16 | # Register pure vue component. This allows us to do recursive component instantiation only in the
|
|
22 | 21 |
|
23 | 22 |
|
24 | 23 | def _get_range_subset_bounds(self, subset_state, *args, **kwargs):
|
25 |
| - # Instead of overriding the jdaviz version of this method on jdaviz.Application, |
26 |
| - # we could put in jdaviz by (1) checking if helper has a |
27 |
| - # _default_time_viewer_reference_name, (2) using the LCviz version if so, and (3) |
28 |
| - # using the jdaviz version otherwise. |
29 |
| - viewer = self.get_viewer(self._jdaviz_helper._default_time_viewer_reference_name) |
| 24 | + viewer = self._jdaviz_helper.default_time_viewer._obj |
30 | 25 | light_curve = viewer.data()[0]
|
31 | 26 | reference_time = light_curve.meta['reference_time']
|
32 | 27 | if viewer:
|
@@ -86,7 +81,6 @@ class LCviz(ConfigHelper):
|
86 | 81 |
|
87 | 82 | def __init__(self, *args, **kwargs):
|
88 | 83 | super().__init__(*args, **kwargs)
|
89 |
| - self._default_time_viewer_reference_name = _default_time_viewer_reference_name |
90 | 84 |
|
91 | 85 | # override jdaviz behavior to support temporal subsets
|
92 | 86 | self.app._get_range_subset_bounds = (
|
@@ -152,6 +146,14 @@ def get_data(self, data_label=None, cls=LightCurve, subset=None):
|
152 | 146 | """
|
153 | 147 | return super()._get_data(data_label=data_label, mask_subset=subset, cls=cls)
|
154 | 148 |
|
| 149 | + @property |
| 150 | + def default_time_viewer(self): |
| 151 | + tvs = [viewer for vid, viewer in self.app._viewer_store.items() |
| 152 | + if isinstance(viewer, TimeScatterView)] |
| 153 | + if not len(tvs): |
| 154 | + raise ValueError("no time viewers exist") |
| 155 | + return tvs[0].user_api |
| 156 | + |
155 | 157 | @property
|
156 | 158 | def _tray_tools(self):
|
157 | 159 | """
|
|
0 commit comments