Loading src/nova/trame/view/components/ornl/__init__.py +3 −0 Original line number Diff line number Diff line from .neutron_data_selector import NeutronDataSelector __all__ = ["NeutronDataSelector"] src/nova/trame/view/components/ornl/neutron_data_selector.py +7 −7 Original line number Diff line number Diff line Loading @@ -79,13 +79,13 @@ class NeutronDataSelector(datagrid.VGrid): self._prefix = prefix self._select_strategy = select_strategy self._revogrid_id = f"nova__dataselector_{self._next_id}_rv" self._state_name = f"nova__dataselector_{self._next_id}_state" self._facilities_name = f"nova__dataselector_{self._next_id}_facilities" self._instruments_name = f"nova__dataselector_{self._next_id}_instruments" self._experiments_name = f"nova__dataselector_{self._next_id}_experiments" self._directories_name = f"nova__dataselector_{self._next_id}_directories" self._datafiles_name = f"nova__dataselector_{self._next_id}_datafiles" self._revogrid_id = f"nova__neutrondataselector_{self._next_id}_rv" self._state_name = f"nova__neutrondataselector_{self._next_id}_state" self._facilities_name = f"nova__neutrondataselector_{self._next_id}_facilities" self._instruments_name = f"nova__neutrondataselector_{self._next_id}_instruments" self._experiments_name = f"nova__neutrondataselector_{self._next_id}_experiments" self._directories_name = f"nova__neutrondataselector_{self._next_id}_directories" self._datafiles_name = f"nova__neutrondataselector_{self._next_id}_datafiles" self._flush_state = f"flushState('{self._v_model_name_in_state}');" self._reset_rv_grid = client.JSEval( Loading tests/gallery/models/data_selector.py +1 −0 Original line number Diff line number Diff line Loading @@ -9,3 +9,4 @@ class DataSelectorState(BaseModel): """Model for MVVM demo of DataSelector.""" selected_files: List[str] = Field(default=[], title="Selected Files") selected_neutron_files: List[str] = Field(default=[], title="Selected Neutron Datafiles") tests/gallery/view_models/data_selector.py +1 −0 Original line number Diff line number Diff line Loading @@ -15,3 +15,4 @@ class DataSelectorVM: def on_update(self, data: Dict[str, Any]) -> None: print("selected files:", self.model.selected_files) print("selected neutron datafiles:", self.model.selected_neutron_files) tests/gallery/views/app.py +6 −1 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ from nova.mvvm.trame_binding import TrameBinding from nova.trame import ThemedApp from nova.trame.view.components import DataSelector, FileUpload, InputField, RemoteFileInput from nova.trame.view.components.execution_buttons import ExecutionButtons from nova.trame.view.components.ornl import NeutronDataSelector from nova.trame.view.components.progress_bar import ProgressBar from nova.trame.view.components.tool_outputs import ToolOutputWindows from nova.trame.view.components.visualization import Interactive2DPlot, MatplotlibFigure Loading Loading @@ -348,8 +349,12 @@ class App(ThemedApp): vuetify.VTab("Tab 3") vuetify.VCardTitle("Data Selection Widgets") with html.Div(classes="border-md text-left", style="height: 650px; width: 400px;"): with html.Div(classes="border-md text-left", style="height: 650px; width: 600px;"): DataSelector(v_model="data_selector.selected_files", chips=True, directory="/") with html.Div(classes="border-md text-left", style="height: 650px; width: 600px;"): NeutronDataSelector( v_model="data_selector.selected_neutron_files", allow_custom_directories=True, chips=True ) vuetify.VCardTitle("Form Inputs & Controls") with GridLayout(columns=3, valign="center"): Loading Loading
src/nova/trame/view/components/ornl/__init__.py +3 −0 Original line number Diff line number Diff line from .neutron_data_selector import NeutronDataSelector __all__ = ["NeutronDataSelector"]
src/nova/trame/view/components/ornl/neutron_data_selector.py +7 −7 Original line number Diff line number Diff line Loading @@ -79,13 +79,13 @@ class NeutronDataSelector(datagrid.VGrid): self._prefix = prefix self._select_strategy = select_strategy self._revogrid_id = f"nova__dataselector_{self._next_id}_rv" self._state_name = f"nova__dataselector_{self._next_id}_state" self._facilities_name = f"nova__dataselector_{self._next_id}_facilities" self._instruments_name = f"nova__dataselector_{self._next_id}_instruments" self._experiments_name = f"nova__dataselector_{self._next_id}_experiments" self._directories_name = f"nova__dataselector_{self._next_id}_directories" self._datafiles_name = f"nova__dataselector_{self._next_id}_datafiles" self._revogrid_id = f"nova__neutrondataselector_{self._next_id}_rv" self._state_name = f"nova__neutrondataselector_{self._next_id}_state" self._facilities_name = f"nova__neutrondataselector_{self._next_id}_facilities" self._instruments_name = f"nova__neutrondataselector_{self._next_id}_instruments" self._experiments_name = f"nova__neutrondataselector_{self._next_id}_experiments" self._directories_name = f"nova__neutrondataselector_{self._next_id}_directories" self._datafiles_name = f"nova__neutrondataselector_{self._next_id}_datafiles" self._flush_state = f"flushState('{self._v_model_name_in_state}');" self._reset_rv_grid = client.JSEval( Loading
tests/gallery/models/data_selector.py +1 −0 Original line number Diff line number Diff line Loading @@ -9,3 +9,4 @@ class DataSelectorState(BaseModel): """Model for MVVM demo of DataSelector.""" selected_files: List[str] = Field(default=[], title="Selected Files") selected_neutron_files: List[str] = Field(default=[], title="Selected Neutron Datafiles")
tests/gallery/view_models/data_selector.py +1 −0 Original line number Diff line number Diff line Loading @@ -15,3 +15,4 @@ class DataSelectorVM: def on_update(self, data: Dict[str, Any]) -> None: print("selected files:", self.model.selected_files) print("selected neutron datafiles:", self.model.selected_neutron_files)
tests/gallery/views/app.py +6 −1 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ from nova.mvvm.trame_binding import TrameBinding from nova.trame import ThemedApp from nova.trame.view.components import DataSelector, FileUpload, InputField, RemoteFileInput from nova.trame.view.components.execution_buttons import ExecutionButtons from nova.trame.view.components.ornl import NeutronDataSelector from nova.trame.view.components.progress_bar import ProgressBar from nova.trame.view.components.tool_outputs import ToolOutputWindows from nova.trame.view.components.visualization import Interactive2DPlot, MatplotlibFigure Loading Loading @@ -348,8 +349,12 @@ class App(ThemedApp): vuetify.VTab("Tab 3") vuetify.VCardTitle("Data Selection Widgets") with html.Div(classes="border-md text-left", style="height: 650px; width: 400px;"): with html.Div(classes="border-md text-left", style="height: 650px; width: 600px;"): DataSelector(v_model="data_selector.selected_files", chips=True, directory="/") with html.Div(classes="border-md text-left", style="height: 650px; width: 600px;"): NeutronDataSelector( v_model="data_selector.selected_neutron_files", allow_custom_directories=True, chips=True ) vuetify.VCardTitle("Form Inputs & Controls") with GridLayout(columns=3, valign="center"): Loading