def main(self): npackages = self._populate_list() if npackages == 0: if self._apt_lists_dir_has_missing_files(): if self._ask_perform_update(): worker = PackageWorker.get_worker() worker.perform_update(self._window) npackages = self._populate_list() if npackages == 0: self._show_no_codecs_error() return gst.pbutils.INSTALL_PLUGINS_NOT_FOUND else: self._show_no_codecs_error() return gst.pbutils.INSTALL_PLUGINS_NOT_FOUND gtk.main() return self._return_code
def _install_selection(self, widget, data=None): iter = self._package_list_model.get_iter_first() packages = [] while iter: if self._package_list_model.get_value(iter, LIST_PKG_TO_INSTALL): packages.append((self._package_list_model.get_value(iter, LIST_PKG_NAME), self._package_list_model.get_value(iter, LIST_PKG_REQUEST))) iter = self._package_list_model.iter_next(iter) if not packages or len(packages) == 0: self.modal_dialog(gtk.MESSAGE_WARNING, _("No packages selected")) self._return_code = gst.pbutils.INSTALL_PLUGINS_NOT_FOUND return # check codec install message if not self._confirm_codec_install(set([package[LIST_PKG_TO_INSTALL] for package in packages])): return worker = PackageWorker.get_worker() install_success = worker.perform_action(self._window, set([package[LIST_PKG_TO_INSTALL] for package in packages]), set()) if install_success: if not self._requests or len(self._requests) == 0: self.modal_dialog(gtk.MESSAGE_INFO, _("Packages successfully installed"), _("The selected packages were successfully " "installed and provided all requested plugins")) self._return_code = gst.pbutils.INSTALL_PLUGINS_SUCCESS else: self.modal_dialog(gtk.MESSAGE_INFO, _("Packages successfully installed"), _("The selected packages were successfully " "installed but did not provide all requested " "plugins")) self._return_code = gst.pbutils.INSTALL_PLUGINS_PARTIAL_SUCCESS else: self.modal_dialog(gtk.MESSAGE_ERROR, _("No packages installed"), _("None of the selected packages were installed.")) self._return_code = gst.pbutils.INSTALL_PLUGINS_ERROR gtk.main_quit()