def refresh_subform(self, dynamic_gid, field_value): enum_class, get_form_method = self._update_integrator_on_dynamic( dynamic_gid, field_value) integrator_class = TVBEnum.string_to_enum(list(enum_class), field_value).value subform = get_form_method(integrator_class)() return {'adapter_form': subform}
def refresh_subform(self, equation): eq_class = TVBEnum.string_to_enum(list(SpatialEquationsEnum), equation).value current_lconn = common.get_from_session(KEY_LCONN) current_lconn.equation = eq_class() eq_params_form = get_form_for_equation(eq_class)() return {'adapter_form': eq_params_form, 'equationsPrefixes': self.plotted_equation_prefixes}
def get_datatype_for_index(self, index): # type: (HasTraitsIndex) -> typing.Type[HasTraits] subtype = index.get_subtype_attr() if subtype: function, enum_class = self._index_to_subtype_factory[type(index)] subtype_as_enum = TVBEnum.string_to_enum(list(enum_class), subtype) return type(function(subtype_as_enum.value)) return self._datatype_for_index[type(index)]
def get_datatype_for_h5file(self, h5file): # type: (H5File) -> typing.Type[HasTraits] base_dt = self._datatype_for_h5file[type(h5file)] subtype = h5file.read_subtype_attr() if subtype: index = self.get_index_for_datatype(base_dt) function, enum_class = self._index_to_subtype_factory[index] subtype_as_enum = TVBEnum.string_to_enum(list(enum_class), subtype) return type(function(subtype_as_enum.value)) return base_dt
def _from_post(self): super(SelectField, self)._from_post() data_as_enum = TVBEnum.string_to_enum(self.choices, self.unvalidated_data) if self.unvalidated_data != self.missing_value and data_as_enum is None \ and (self.unvalidated_data is not None or self.display_none_choice is False): raise ValueError("the entered value is not among the choices for this field!") self.data = data_as_enum
def refresh_subform(self, subform_div, equation): # TODO: nicer way to differentiate between temporal and spatial equations eq_class = TVBEnum.string_to_enum(list(TemporalEquationsEnum), equation).value current_surface_stim = common.get_from_session(KEY_SURFACE_STIMULI) if 'temporal' in subform_div: current_surface_stim.temporal = eq_class() else: current_surface_stim.spatial = eq_class() eq_params_form = get_form_for_equation(eq_class)() return {'adapter_form': eq_params_form, 'equationsPrefixes': self.plotted_equation_prefixes}
def refresh_subform(self, temporal_equation): eq_class = TVBEnum.string_to_enum(list(TemporalEquationsEnum), temporal_equation).value current_region_stim = common.get_from_session(KEY_REGION_STIMULUS) current_region_stim.temporal = eq_class() eq_params_form = get_form_for_equation(eq_class)() # TODO: check eqPrefixes return { 'adapter_form': eq_params_form, 'equationsPrefixes': self.plotted_equation_prefixes }
def model_changed(self, dynamic_gid, name): """ Resets the phase plane and returns the ui model for the slider area. """ dynamic = self.get_cached_dynamic(dynamic_gid) dynamic.model = TVBEnum.string_to_enum(list(ModelsEnum), name).instance dynamic.model.configure() self._configure_integrator_noise(dynamic.integrator, dynamic.model) dynamic.phase_plane = phase_space_d3(dynamic.model, dynamic.integrator) mp_params = DynamicModelController._get_model_parameters_ui_model( dynamic.model) graph_params = DynamicModelController._get_graph_ui_model(dynamic) return { 'params': mp_params, 'graph_params': graph_params, 'model_param_sliders_fragment': self._model_param_sliders_fragment(dynamic_gid), 'axis_sliders_fragment': self._axis_sliders_fragment(dynamic_gid) }
def load(self): metadata = self.owner.storage_manager.get_metadata() if self.field_name in metadata: return TVBEnum.string_to_enum( list(self.trait_attribute.field_type), str(metadata[self.field_name]))
def _change_equation(self, dynamic, field_value): equation = TVBEnum.string_to_enum(list(TemporalEquationsEnum), field_value).instance integrator = dynamic.integrator integrator.noise.b = equation self._update_integrator(dynamic, integrator)
def _change_noise(self, dynamic, field_value): noise = TVBEnum.string_to_enum(list(NoiseTypesEnum), field_value).instance integrator = dynamic.integrator integrator.noise = noise self._update_integrator(dynamic, integrator)
def _change_integrator(self, dynamic, field_value): integrator = TVBEnum.string_to_enum(list(IntegratorViewModelsEnum), field_value).instance self._update_integrator(dynamic, integrator)