def _try_rename(self): if self.text: # Try to change the function definition's binding old_var = self.unmodified_text.strip() new_var = self.text.strip() from enthought.block_canvas.app.scripting import app app.update_function_variable_binding(self.box.graph_node, self.variable, new_var)
def normal_dropped_on(self, event): """ Handle dropping onto this field for ContextVariable payloads. """ if is_a_context_variable(event.obj): result = "copy" from enthought.block_canvas.app.scripting import app app.update_function_variable_binding(self.box.graph_node, self.variable, event.obj.name) else: result = "none" event.window.set_drag_result(result) event.handled = result == "copy"
def perform(self, event): dlg = SuffixDialog() if dlg.edit_traits(kind="livemodal"): suffix = dlg.suffix if suffix: for field in self.selected_fields: old_text = field.variable.binding if not old_text.isdigit(): from enthought.block_canvas.app.scripting import app new_text = old_text + '_' + suffix app.update_function_variable_binding(field.box.graph_node, field.variable, new_text) self.container.wiring_tool.clear_selection() return
def drag_end(self, event): field = self._get_underlying_box_field(event.x, event.y) if field is self._start_field: return if field and self._start_field: self._end_field = field start_type = self._start_field.type end_type = self._end_field.type field.icon.bullet_state = 'up' if ((start_type == 'output' and end_type == 'input') or (start_type == 'input' and end_type == 'output')): self.add_to_selection(self._end_field) if len(self.input_selected_fields) == len(self.output_selected_fields): matches = self.match_inputs2outputs() for input, pairs in matches.items(): for pair in pairs: from enthought.block_canvas.app.scripting import app # Set the input (pair[0]) binding to output(pair[1]) app.update_function_variable_binding(field.box.graph_node, pair[0], pair[1].binding) self.drag_cancel(event)