Skip to content
Snippets Groups Projects
Commit ead2a5c1 authored by Oscar Gustafsson's avatar Oscar Gustafsson :bicyclist:
Browse files

Add documentation entry to GUI help menu

parent 4c3c5dbe
No related branches found
No related tags found
1 merge request!314Add documentation entry to GUI help menu
Pipeline #95953 failed
......@@ -121,6 +121,8 @@ class Ui_main_window(object):
self.keybindsBASIC.setObjectName("keybindsBASIC")
self.aboutBASIC = QtWidgets.QAction(main_window)
self.aboutBASIC.setObjectName("aboutBASIC")
self.documentationBASIC = QtWidgets.QAction(main_window)
self.documentationBASIC.setObjectName("documentationBASIC")
self.file_menu.addAction(self.load_menu)
self.file_menu.addAction(self.save_menu)
self.file_menu.addAction(self.load_operations)
......@@ -132,6 +134,7 @@ class Ui_main_window(object):
self.edit_menu.addAction(self.unselect_all)
self.run_menu.addAction(self.actionShowPC)
self.run_menu.addAction(self.actionSimulateSFG)
self.help_menu.addAction(self.documentationBASIC)
self.help_menu.addAction(self.faqBASIC)
self.help_menu.addAction(self.keybindsBASIC)
self.help_menu.addSeparator()
......@@ -185,6 +188,7 @@ class Ui_main_window(object):
self.aboutBASIC.setText(_translate("main_window", "&About B-ASIC"))
self.faqBASIC.setText(_translate("main_window", "&FAQ"))
self.keybindsBASIC.setText(_translate("main_window", "&Keybinds"))
self.documentationBASIC.setText(_translate("main_window", "&Documentation"))
self.load_menu.setText(_translate("main_window", "&Load SFG"))
self.save_menu.setText(_translate("main_window", "&Save SFG"))
self.load_operations.setText(_translate("main_window", "Load &operations"))
......
......@@ -9,10 +9,11 @@ import importlib.util
import logging
import os
import sys
import webbrowser
from collections import deque
from typing import TYPE_CHECKING, Deque, Dict, List, Optional, Sequence, Tuple, cast
from qtpy.QtCore import QCoreApplication, QFileInfo, QSettings, QSize, Qt, QThread
from qtpy.QtCore import QCoreApplication, QFileInfo, QSettings, QSize, Qt, QThread, Slot
from qtpy.QtGui import QCursor, QIcon, QKeySequence, QPainter
from qtpy.QtWidgets import (
QAction,
......@@ -139,10 +140,15 @@ class SFGMainWindow(QMainWindow):
self._ui.actionShowPC.triggered.connect(self._show_precedence_graph)
self._ui.actionSimulateSFG.triggered.connect(self.simulate_sfg)
# About menu
self._ui.faqBASIC.triggered.connect(self.display_faq_page)
self._ui.faqBASIC.setShortcut(QKeySequence("Ctrl+?"))
self._ui.aboutBASIC.triggered.connect(self.display_about_page)
self._ui.keybindsBASIC.triggered.connect(self.display_keybindings_page)
self._ui.documentationBASIC.triggered.connect(self._open_documentation)
# Operation lists
self._ui.core_operations_list.itemClicked.connect(
self._on_list_widget_item_clicked
)
......@@ -857,6 +863,11 @@ class SFGMainWindow(QMainWindow):
# Kinda buggy because of the separate window in the same thread.
self._simulation_dialog.simulate.connect(self._simulate_sfg)
@Slot()
def _open_documentation(self, event=None) -> None:
"""Callback to open documentation web page."""
webbrowser.open_new_tab("https://da.gitlab-pages.liu.se/B-ASIC/")
def display_faq_page(self, event=None) -> None:
if self._faq_page is None:
self._faq_page = FaqWindow(self)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment