def handler_save(self, btn, fields): if not self.added: controller = None is_mounted_before_save = False else: controller = SystemControllerModel(self.system, self.environment) is_mounted_before_save = controller.mounted controller.unmount() for field_info in fields: widget = field_info["widget"] get_value_callback = getattr(self, "get_value_%s" % field_info["type"], None) if get_value_callback is None: raise SftpException("Cannot get value for field type: %s" % field_info["type"]) value = get_value_callback(widget) setattr(self.system, field_info["id"], value) is_valid, errors = self.system.validate() if is_valid: self.system.save(self.environment) if is_mounted_before_save: controller.mount() self.close() else: for field_id, msg in errors: show_warning_message(msg)
def handler_save(self, btn): if not self.added: controller = None is_mounted_before_save = False else: controller = SystemControllerModel(self.system, self.environment) is_mounted_before_save = controller.mounted controller.unmount() for field_info in self.rendered_fields: widget = field_info['widget'] get_value_callback = getattr(self, 'get_value_%s' % field_info['type'], None) if get_value_callback is None: raise SftpException('Cannot get value for field type: %s' % field_info['type']) value = get_value_callback(widget) setattr(self.system, field_info['id'], value) is_valid, errors = self.system.validate() if is_valid: self.system.save(self.environment) if is_mounted_before_save: controller.mount() self.close() else: for field_id, msg in errors: show_warning_message(self.window_obj.window, msg)
def handler_delete(self, btn): text = 'Delete definition for `%s`?' % self.system.id dialog = Gtk.MessageDialog(self.window_obj.window, Gtk.DialogFlags.MODAL, Gtk.MessageType.QUESTION, Gtk.ButtonsType.NONE, text) dialog.add_button(Gtk.STOCK_CANCEL, Gtk.ResponseType.NO) dialog.add_button(Gtk.STOCK_DELETE, Gtk.ResponseType.YES) dialog.set_title(text) response = dialog.run() dialog.destroy() if response == Gtk.ResponseType.YES: controller = SystemControllerModel(self.system, self.environment) controller.unmount() self.system.delete(self.environment) self.close()
def handler_save(self, btn, fields): if not self.added: controller = None is_mounted_before_save = False else: controller = SystemControllerModel(self.system, self.environment) is_mounted_before_save = controller.mounted controller.unmount() for field_info in fields: widget = field_info['widget'] get_value_callback = getattr(self, 'get_value_%s' % field_info['type'], None) if get_value_callback is None: raise SftpException('Cannot get value for field type: %s' % field_info['type']) value = get_value_callback(widget) setattr(self.system, field_info['id'], value) is_valid, errors = self.system.validate() if is_valid: self.system.save(self.environment) if is_mounted_before_save: controller.mount() self.close() else: for field_id, msg in errors: show_warning_message(msg)
def _get_system_controller_by_id(self, system_id): system = SystemModel.create_by_id(system_id, self.environment) return SystemControllerModel(system, self.environment)