(self)
| 45 | # ── menu ───────────────────────────────────────────────────────────────── |
| 46 | |
| 47 | def _build_menu(self): |
| 48 | bar = self.menuBar() |
| 49 | file_menu = bar.addMenu("&File") |
| 50 | |
| 51 | act_new = QAction("&New", self) |
| 52 | act_new.setShortcut(QKeySequence.New) |
| 53 | act_new.triggered.connect(self._on_new) |
| 54 | file_menu.addAction(act_new) |
| 55 | |
| 56 | act_open = QAction("&Open…", self) |
| 57 | act_open.setShortcut(QKeySequence.Open) |
| 58 | act_open.triggered.connect(self._on_open) |
| 59 | file_menu.addAction(act_open) |
| 60 | |
| 61 | act_save = QAction("&Save", self) |
| 62 | act_save.setShortcut(QKeySequence.Save) |
| 63 | act_save.triggered.connect(self._on_save) |
| 64 | file_menu.addAction(act_save) |
| 65 | |
| 66 | act_saveas = QAction("Save &As…", self) |
| 67 | act_saveas.setShortcut(QKeySequence.SaveAs) |
| 68 | act_saveas.triggered.connect(self._on_save_as) |
| 69 | file_menu.addAction(act_saveas) |
| 70 | |
| 71 | file_menu.addSeparator() |
| 72 | |
| 73 | act_docprops = QAction("Document &Properties…", self) |
| 74 | act_docprops.triggered.connect(self._on_doc_properties) |
| 75 | file_menu.addAction(act_docprops) |
| 76 | |
| 77 | file_menu.addSeparator() |
| 78 | |
| 79 | act_export = QAction("&Export Netlist…", self) |
| 80 | act_export.setShortcut("Ctrl+E") |
| 81 | act_export.triggered.connect(self._on_export_netlist) |
| 82 | file_menu.addAction(act_export) |
| 83 | |
| 84 | act_svg = QAction("Export &SVG…", self) |
| 85 | act_svg.triggered.connect(self._on_export_svg) |
| 86 | file_menu.addAction(act_svg) |
| 87 | |
| 88 | act_pdf = QAction("Export &PDF…", self) |
| 89 | act_pdf.triggered.connect(self._on_export_pdf) |
| 90 | file_menu.addAction(act_pdf) |
| 91 | |
| 92 | act_print = QAction("&Print…", self) |
| 93 | act_print.setShortcut(QKeySequence.Print) |
| 94 | act_print.triggered.connect(self._on_print) |
| 95 | file_menu.addAction(act_print) |
| 96 | |
| 97 | file_menu.addSeparator() |
| 98 | |
| 99 | act_prefs = QAction("Pre&ferences…", self) |
| 100 | act_prefs.triggered.connect(self._on_preferences) |
| 101 | file_menu.addAction(act_prefs) |
| 102 | |
| 103 | self._build_edit_menu(bar) |
| 104 | self._build_view_menu(bar) |
no test coverage detected