def on_forward_button_clicked(self, widget): dport = self._get_selected_opt_from_combobox('data') cport = self._get_selected_opt_from_combobox('control') speed = int(self._get_selected_opt_from_combobox('speed')) if cport == _("No control port"): cport = None software = self.view['software_checkbutton'].get_active() hardware = self.view['hardware_checkbutton'].get_active() title = _('Connecting to device...') apb = dialogs.ActivityProgressBar(title, self, True) def get_remote_plugin_eb(failure): failure.trap(SerialException) apb.close() port = cport and cport or dport message = _('Exception received connecting to %s') % port details = _(""" The following error was received while trying to establish a connection: %s""") % failure.getErrorMessage() dialogs.open_warning_dialog(message, details) from vmc.common.hardware import HardwareRegistry hw = HardwareRegistry() d = hw.get_plugin_for_remote_dev(speed, dport, cport) d.addCallback(self._im_done, apb) d.addErrback(get_remote_plugin_eb)