spinetoolbox.widgets.custom_menus

Classes for custom context menus and pop-up menus.

Module Contents

Classes

CustomContextMenu

Context menu master class for several context menus.

OpenProjectDialogComboBoxContextMenu

Context menu master class for several context menus.

CustomPopupMenu

Popup menu master class for several popup menus.

ItemSpecificationMenu

Context menu class for item specifications.

RecentProjectsPopupMenu

Recent projects menu embedded to 'File-Open recent' QAction.

KernelsPopupMenu

Menu embedded into 'Consoles->Start Jupyter Console' QMenu.

FilterMenuBase

Filter menu.

class spinetoolbox.widgets.custom_menus.CustomContextMenu(parent, position)[source]

Bases: PySide6.QtWidgets.QMenu

Context menu master class for several context menus.

Parameters
  • parent (QWidget) – Parent for menu widget (ToolboxUI)

  • position (QPoint) – Position on screen

add_action(text, icon=QIcon(), enabled=True)[source]

Adds an action to the context menu.

Parameters
  • text (str) – Text description of the action

  • icon (QIcon) – Icon for menu item

  • enabled (bool) – Is action enabled?

set_action(option)[source]

Sets the action which was clicked.

Parameters

option (str) – string with the text description of the action

get_action()[source]

Returns the clicked action, a string with a description.

class spinetoolbox.widgets.custom_menus.OpenProjectDialogComboBoxContextMenu(parent, position)[source]

Bases: CustomContextMenu

Context menu master class for several context menus.

Parameters
  • parent (QWidget) – Parent for menu widget

  • position (QPoint) – Position on screen

class spinetoolbox.widgets.custom_menus.CustomPopupMenu(parent)[source]

Bases: PySide6.QtWidgets.QMenu

Popup menu master class for several popup menus.

Parameters

parent (QWidget) – Parent widget of this pop-up menu

add_action(text, slot, enabled=True, tooltip=None, icon=None)[source]

Adds an action to the popup menu.

Parameters
  • text (str) – Text description of the action

  • slot (method) – Method to connect to action’s triggered signal

  • enabled (bool) – Is action enabled?

  • tooltip (str) – Tool tip for the action

  • icon (QIcon) – Action icon

class spinetoolbox.widgets.custom_menus.ItemSpecificationMenu(toolbox, index, item=None)[source]

Bases: CustomPopupMenu

Context menu class for item specifications.

Parameters
  • toolbox (ToolboxUI) – Toolbox that requests this menu, used as parent.

  • index (QModelIndex) – the index

  • item (ProjectItem, optional) – passed to show_specification_form

class spinetoolbox.widgets.custom_menus.RecentProjectsPopupMenu(parent)[source]

Bases: CustomPopupMenu

Recent projects menu embedded to ‘File-Open recent’ QAction.

Parameters

parent (QWidget) – Parent widget of this menu (ToolboxUI)

has_recents()[source]

Returns True if recent projects available, False otherwise.

add_recent_projects()[source]

Reads the previous project names and paths from QSettings. Adds them to the QMenu as QActions.

call_clear_recents(checked)[source]

Slot for Clear recents menu item.

Parameters

checked (bool) – Argument sent by triggered signal

call_open_project(checked, p)[source]

Slot for catching the user selected action from the recent projects menu.

Parameters
  • checked (bool) – Argument sent by triggered signal

  • p (str) – Full path to a project file

class spinetoolbox.widgets.custom_menus.KernelsPopupMenu(parent)[source]

Bases: CustomPopupMenu

Menu embedded into ‘Consoles->Start Jupyter Console’ QMenu.

Parameters

parent (QWidget) – Parent widget of this menu (ToolboxUI)

add_kernel(kernel_name, resource_dir, cond, ico, deats)[source]

Adds a kernel entry as an action to this menu.

call_open_console(checked, kernel_name, icon, conda)[source]

Slot for catching the user selected action from the kernel’s menu.

Parameters
  • checked (bool) – Argument sent by triggered signal

  • kernel_name (str) – Kernel name to launch

  • icon (QIcon) – Icon representing the kernel language

  • conda (bool) – Is this a Conda kernel spec?

class spinetoolbox.widgets.custom_menus.FilterMenuBase(parent)[source]

Bases: PySide6.QtWidgets.QMenu

Filter menu.

Parameters

parent (QWidget) – a parent widget

_set_up(make_filter_model, *args, **kwargs)[source]
connect_signals()[source]
add_items_to_filter_list(items)[source]
remove_items_from_filter_list(items)[source]
_clear_filter()[source]
_check_filter()[source]
_change_filter()[source]
abstract emit_filter_changed(valid_values)[source]