nqrduck.core.install_wizard#

A wizard to install different NQRduck modules.

Classes

DuckWizard(*args, **kwargs)

A wizard to install different NQRduck modules.

FinishPage(*args, **kwargs)

The finish page of the wizard.

InstallPage(*args, **kwargs)

The installation page of the wizard.

ListInstallPage(*args, **kwargs)

The installation page of the wizard.

SelectionPage(*args, **kwargs)

The selection page of the wizard.

WelcomePage(*args, **kwargs)

The welcome page of the wizard.

class nqrduck.core.install_wizard.DuckWizard(*args: Any, **kwargs: Any)#

A wizard to install different NQRduck modules.

class nqrduck.core.install_wizard.FinishPage(*args: Any, **kwargs: Any)#

The finish page of the wizard.

finish()#

Finish the wizard.

restart()#

Restart the application.

class nqrduck.core.install_wizard.InstallPage(*args: Any, **kwargs: Any)#

The installation page of the wizard.

This page is shown while the modules are installed.

class InstallThread(*args: Any, **kwargs: Any)#

Thread class to handle running pip install commands in the background.

completed_signal#

alias of bool

output_signal#

alias of str

run()#

Run the installation of the modules.

append_output(text)#

Append the installation output to the text widget.

initializePage() None#

Generate the installation widgets for the modules.

isComplete() bool#

Check if the installation is complete.

output_signal#

alias of str

set_completed(completed: bool) None#

Set the installation as completed.

class nqrduck.core.install_wizard.ListInstallPage(*args: Any, **kwargs: Any)#

The installation page of the wizard.

This page is shown while the modules are installed.

cleanupPage() None#

Clean up the InstallPage.

get_install_modules() list#

Returns the modules that are selected for installation minus the already installed modules.

Returns:

The modules that are selected for installation

Return type:

list

initializePage() None#

Generate the installation widgets for the modules.

class nqrduck.core.install_wizard.SelectionPage(*args: Any, **kwargs: Any)#

The selection page of the wizard.

It uses the modules.json file to get the modules that can be installed. The modules.json file contains the name, description and source of the modules. It is hosted on GitHub.

Parameters:

installed_modules (list) – The modules that are already installed

generate_installation_widgets() None#

Generate the installation widgets for the modules.

get_URLs() list#

Get the URLs of the different modules.

Returns:

The URLs of the modules

Return type:

list

get_dependencies(module_name: str) list#

Get the dependencies of a module.

Parameters:

module_name (str) – The name of the module

Returns:

The dependencies of the module

Return type:

list

get_modules() dict#

Get the modules from the modules json file.

Returns:

The module data

Return type:

dict

initializePage() None#

Overrides the initializePage method to generate the installation widgets.

on_checkbox_changed(state: int, module_name: str) None#

Update the different modules when the checkbox is changed with the according dependencies.

If a module is manually checked it will stay checked when unselecting a module that depends on it. If we select a module with dependencies, the dependencies will be selected as well and the checkboxes will be disabled.

Parameters:
  • state (int) – The state of the checkbox

  • module_name (str) – The name of the module

on_checkbox_clicked(state: int, module_name: str) None#

Save if a checkbox was manually clicked and what state it was set to.

Parameters:
  • state (int) – The state of the checkbox

  • module_name (str) – The name of the module

class nqrduck.core.install_wizard.WelcomePage(*args: Any, **kwargs: Any)#

The welcome page of the wizard.