Beispiel #1
0
    def setupModels(self) -> None:
        self.model = None
        f = self.form
        box = f.buttonBox

        default_buttons = [
            (tr.actions_add(), self.onAdd),
            (tr.actions_rename(), self.onRename),
            (tr.actions_delete(), self.onDelete),
        ]

        if self.fromMain:
            default_buttons.extend([
                (tr.notetypes_fields(), self.onFields),
                (tr.notetypes_cards(), self.onCards),
            ])

        default_buttons.append((tr.notetypes_options(), self.onAdvanced))

        for label, func in gui_hooks.models_did_init_buttons(
                default_buttons, self):
            button = box.addButton(label, QDialogButtonBox.ActionRole)
            qconnect(button.clicked, func)

        qconnect(f.modelsList.itemDoubleClicked, self.onRename)

        def on_done(fut: Future) -> None:
            self.updateModelsList(fut.result())
            self.maybe_select_provided_notetype()

        self.mw.taskman.with_progress(self.col.models.all_use_counts, on_done,
                                      self)
        maybeHideClose(box)
Beispiel #2
0
 def _showOptions(self, did: str) -> None:
     m = QMenu(self.mw)
     a = m.addAction(tr.actions_rename())
     qconnect(a.triggered, lambda b, did=did: self._rename(DeckId(int(did))))
     a = m.addAction(tr.actions_options())
     qconnect(a.triggered, lambda b, did=did: self._options(DeckId(int(did))))
     a = m.addAction(tr.actions_export())
     qconnect(a.triggered, lambda b, did=did: self._export(DeckId(int(did))))
     a = m.addAction(tr.actions_delete())
     qconnect(a.triggered, lambda b, did=did: self._delete(DeckId(int(did))))
     gui_hooks.deck_browser_will_show_options_menu(m, int(did))
     m.exec_(QCursor.pos())
Beispiel #3
0
 def confOpts(self) -> None:
     m = QMenu(self.mw)
     a = m.addAction(tr.actions_add())
     qconnect(a.triggered, self.addGroup)
     a = m.addAction(tr.actions_delete())
     qconnect(a.triggered, self.remGroup)
     a = m.addAction(tr.actions_rename())
     qconnect(a.triggered, self.renameGroup)
     a = m.addAction(tr.scheduling_set_for_all_subdecks())
     qconnect(a.triggered, self.setChildren)
     if not self.childDids:
         a.setEnabled(False)
     m.exec_(QCursor.pos())
Beispiel #4
0
 def _maybe_add_delete_action(self, menu: QMenu, item: SidebarItem,
                              index: QModelIndex) -> None:
     if self._enable_delete(item):
         menu.addAction(tr.actions_delete(), lambda: self._on_delete(item))