Esempio n. 1
0
    def _start_resolve(self):
        max_fails = self._get_max_fails()
        if max_fails is None:
            return

        self.setWindowTitle("Resolving...")
        self.resolve_btn.hide()
        self.cancel_btn.show()
        self._set_progress(None)
        self.started = True

        verbosity = 0
        show_package_loads = True
        timestamp = None
        if self.advanced:
            verbosity = app.config.get("resolve/verbosity")
            show_package_loads = app.config.get("resolve/show_package_loads")
            timestamp = self.timestamp_widget.datetime()
            if timestamp is not None:
                timestamp = timestamp.toTime_t()

        self.resolver = ResolveThread(self.context_model,
                                      verbosity=verbosity,
                                      max_fails=max_fails,
                                      timestamp=timestamp,
                                      show_package_loads=show_package_loads,
                                      buf=self.edit)

        self.resolver.finished.connect(self._resolve_finished)

        self.thread = QtCore.QThread()
        self.resolver.moveToThread(self.thread)
        self.thread.started.connect(self.resolver.run)
        self.thread.start()