Use the new qtLambda wrapper where appropriate
This commit is contained in:
@@ -436,7 +436,7 @@ def describeFont(font: QFont) -> str:
|
|||||||
|
|
||||||
def qtLambda(func: Callable, *args: Any, **kwargs: Any) -> Callable:
|
def qtLambda(func: Callable, *args: Any, **kwargs: Any) -> Callable:
|
||||||
"""A replacement for Python lambdas that works for Qt slots."""
|
"""A replacement for Python lambdas that works for Qt slots."""
|
||||||
def wrapper(*args_: Any, **kwargs_: Any) -> None:
|
def wrapper(*a_: Any) -> None:
|
||||||
func(*args, **kwargs)
|
func(*args, **kwargs)
|
||||||
return wrapper
|
return wrapper
|
||||||
|
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ from PyQt5.QtWidgets import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.common import simplified
|
from novelwriter.common import qtLambda, simplified
|
||||||
from novelwriter.constants import nwLabels, trConst
|
from novelwriter.constants import nwLabels, trConst
|
||||||
from novelwriter.core.status import NWStatus, StatusEntry
|
from novelwriter.core.status import NWStatus, StatusEntry
|
||||||
from novelwriter.enum import nwStatusShape
|
from novelwriter.enum import nwStatusShape
|
||||||
@@ -365,10 +365,10 @@ class _StatusPage(NFixedPage):
|
|||||||
self.delButton.clicked.connect(self._delItem)
|
self.delButton.clicked.connect(self._delItem)
|
||||||
|
|
||||||
self.upButton = NIconToolButton(self, iSz, "up")
|
self.upButton = NIconToolButton(self, iSz, "up")
|
||||||
self.upButton.clicked.connect(lambda: self._moveItem(-1))
|
self.upButton.clicked.connect(qtLambda(self._moveItem, -1))
|
||||||
|
|
||||||
self.dnButton = NIconToolButton(self, iSz, "down")
|
self.dnButton = NIconToolButton(self, iSz, "down")
|
||||||
self.dnButton.clicked.connect(lambda: self._moveItem(1))
|
self.dnButton.clicked.connect(qtLambda(self._moveItem, 1))
|
||||||
|
|
||||||
# Edit Form
|
# Edit Form
|
||||||
self.editName = QLineEdit(self)
|
self.editName = QLineEdit(self)
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ from PyQt5.QtWidgets import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
|
from novelwriter.common import qtLambda
|
||||||
from novelwriter.constants import nwStyles, nwUnicode
|
from novelwriter.constants import nwStyles, nwUnicode
|
||||||
from novelwriter.enum import nwDocAction, nwDocMode, nwItemType
|
from novelwriter.enum import nwDocAction, nwDocMode, nwItemType
|
||||||
from novelwriter.error import logException
|
from novelwriter.error import logException
|
||||||
@@ -396,25 +397,25 @@ class GuiDocViewer(QTextBrowser):
|
|||||||
|
|
||||||
if userSelection:
|
if userSelection:
|
||||||
mnuCopy = QAction(self.tr("Copy"), ctxMenu)
|
mnuCopy = QAction(self.tr("Copy"), ctxMenu)
|
||||||
mnuCopy.triggered.connect(lambda: self.docAction(nwDocAction.COPY))
|
mnuCopy.triggered.connect(qtLambda(self.docAction, nwDocAction.COPY))
|
||||||
ctxMenu.addAction(mnuCopy)
|
ctxMenu.addAction(mnuCopy)
|
||||||
|
|
||||||
ctxMenu.addSeparator()
|
ctxMenu.addSeparator()
|
||||||
|
|
||||||
mnuSelAll = QAction(self.tr("Select All"), ctxMenu)
|
mnuSelAll = QAction(self.tr("Select All"), ctxMenu)
|
||||||
mnuSelAll.triggered.connect(lambda: self.docAction(nwDocAction.SEL_ALL))
|
mnuSelAll.triggered.connect(qtLambda(self.docAction, nwDocAction.SEL_ALL))
|
||||||
ctxMenu.addAction(mnuSelAll)
|
ctxMenu.addAction(mnuSelAll)
|
||||||
|
|
||||||
mnuSelWord = QAction(self.tr("Select Word"), ctxMenu)
|
mnuSelWord = QAction(self.tr("Select Word"), ctxMenu)
|
||||||
mnuSelWord.triggered.connect(
|
mnuSelWord.triggered.connect(qtLambda(
|
||||||
lambda: self._makePosSelection(QTextCursor.SelectionType.WordUnderCursor, point)
|
self._makePosSelection, QTextCursor.SelectionType.WordUnderCursor, point
|
||||||
)
|
))
|
||||||
ctxMenu.addAction(mnuSelWord)
|
ctxMenu.addAction(mnuSelWord)
|
||||||
|
|
||||||
mnuSelPara = QAction(self.tr("Select Paragraph"), ctxMenu)
|
mnuSelPara = QAction(self.tr("Select Paragraph"), ctxMenu)
|
||||||
mnuSelPara.triggered.connect(
|
mnuSelPara.triggered.connect(qtLambda(
|
||||||
lambda: self._makePosSelection(QTextCursor.SelectionType.BlockUnderCursor, point)
|
self._makePosSelection, QTextCursor.SelectionType.BlockUnderCursor, point
|
||||||
)
|
))
|
||||||
ctxMenu.addAction(mnuSelPara)
|
ctxMenu.addAction(mnuSelPara)
|
||||||
|
|
||||||
# Open the context menu
|
# Open the context menu
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ from PyQt5.QtWidgets import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.common import minmax
|
from novelwriter.common import minmax, qtLambda
|
||||||
from novelwriter.constants import nwKeyWords, nwLabels, nwStyles, trConst
|
from novelwriter.constants import nwKeyWords, nwLabels, nwStyles, trConst
|
||||||
from novelwriter.core.index import IndexHeading
|
from novelwriter.core.index import IndexHeading
|
||||||
from novelwriter.enum import nwDocMode, nwItemClass, nwOutline
|
from novelwriter.enum import nwDocMode, nwItemClass, nwOutline
|
||||||
@@ -346,7 +346,7 @@ class GuiNovelToolBar(QWidget):
|
|||||||
aLast = self.mLastCol.addAction(actionLabel)
|
aLast = self.mLastCol.addAction(actionLabel)
|
||||||
aLast.setCheckable(True)
|
aLast.setCheckable(True)
|
||||||
aLast.setActionGroup(self.gLastCol)
|
aLast.setActionGroup(self.gLastCol)
|
||||||
aLast.triggered.connect(lambda: self.setLastColType(colType))
|
aLast.triggered.connect(qtLambda(self.setLastColType, colType))
|
||||||
self.aLastCol[colType] = aLast
|
self.aLastCol[colType] = aLast
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ from PyQt5.QtGui import QPalette
|
|||||||
from PyQt5.QtWidgets import QMenu, QVBoxLayout, QWidget
|
from PyQt5.QtWidgets import QMenu, QVBoxLayout, QWidget
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
|
from novelwriter.common import qtLambda
|
||||||
from novelwriter.enum import nwView
|
from novelwriter.enum import nwView
|
||||||
from novelwriter.extensions.eventfilters import StatusTipFilter
|
from novelwriter.extensions.eventfilters import StatusTipFilter
|
||||||
from novelwriter.extensions.modified import NIconToolButton
|
from novelwriter.extensions.modified import NIconToolButton
|
||||||
@@ -63,19 +64,19 @@ class GuiSideBar(QWidget):
|
|||||||
# Buttons
|
# Buttons
|
||||||
self.tbProject = NIconToolButton(self, iSz)
|
self.tbProject = NIconToolButton(self, iSz)
|
||||||
self.tbProject.setToolTip("{0} [Ctrl+T]".format(self.tr("Project Tree View")))
|
self.tbProject.setToolTip("{0} [Ctrl+T]".format(self.tr("Project Tree View")))
|
||||||
self.tbProject.clicked.connect(lambda: self.requestViewChange.emit(nwView.PROJECT))
|
self.tbProject.clicked.connect(qtLambda(self.requestViewChange.emit, nwView.PROJECT))
|
||||||
|
|
||||||
self.tbNovel = NIconToolButton(self, iSz)
|
self.tbNovel = NIconToolButton(self, iSz)
|
||||||
self.tbNovel.setToolTip("{0} [Ctrl+T]".format(self.tr("Novel Tree View")))
|
self.tbNovel.setToolTip("{0} [Ctrl+T]".format(self.tr("Novel Tree View")))
|
||||||
self.tbNovel.clicked.connect(lambda: self.requestViewChange.emit(nwView.NOVEL))
|
self.tbNovel.clicked.connect(qtLambda(self.requestViewChange.emit, nwView.NOVEL))
|
||||||
|
|
||||||
self.tbSearch = NIconToolButton(self, iSz)
|
self.tbSearch = NIconToolButton(self, iSz)
|
||||||
self.tbSearch.setToolTip("{0} [Ctrl+Shift+F]".format(self.tr("Project Search")))
|
self.tbSearch.setToolTip("{0} [Ctrl+Shift+F]".format(self.tr("Project Search")))
|
||||||
self.tbSearch.clicked.connect(lambda: self.requestViewChange.emit(nwView.SEARCH))
|
self.tbSearch.clicked.connect(qtLambda(self.requestViewChange.emit, nwView.SEARCH))
|
||||||
|
|
||||||
self.tbOutline = NIconToolButton(self, iSz)
|
self.tbOutline = NIconToolButton(self, iSz)
|
||||||
self.tbOutline.setToolTip("{0} [Ctrl+Shift+T]".format(self.tr("Novel Outline View")))
|
self.tbOutline.setToolTip("{0} [Ctrl+Shift+T]".format(self.tr("Novel Outline View")))
|
||||||
self.tbOutline.clicked.connect(lambda: self.requestViewChange.emit(nwView.OUTLINE))
|
self.tbOutline.clicked.connect(qtLambda(self.requestViewChange.emit, nwView.OUTLINE))
|
||||||
|
|
||||||
self.tbBuild = NIconToolButton(self, iSz)
|
self.tbBuild = NIconToolButton(self, iSz)
|
||||||
self.tbBuild.setToolTip("{0} [F5]".format(self.tr("Build Manuscript")))
|
self.tbBuild.setToolTip("{0} [F5]".format(self.tr("Build Manuscript")))
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ from PyQt5.QtWidgets import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.common import describeFont
|
from novelwriter.common import describeFont, qtLambda
|
||||||
from novelwriter.constants import nwHeadFmt, nwKeyWords, nwLabels, nwStyles, trConst
|
from novelwriter.constants import nwHeadFmt, nwKeyWords, nwLabels, nwStyles, trConst
|
||||||
from novelwriter.core.buildsettings import BuildSettings, FilterMode
|
from novelwriter.core.buildsettings import BuildSettings, FilterMode
|
||||||
from novelwriter.extensions.configlayout import (
|
from novelwriter.extensions.configlayout import (
|
||||||
@@ -329,16 +329,16 @@ class _FilterTab(NFixedPage):
|
|||||||
self.includedButton = NIconToolButton(self, iSz)
|
self.includedButton = NIconToolButton(self, iSz)
|
||||||
self.includedButton.setToolTip(self.tr("Always included"))
|
self.includedButton.setToolTip(self.tr("Always included"))
|
||||||
self.includedButton.setIcon(self._statusFlags[self.F_INCLUDED])
|
self.includedButton.setIcon(self._statusFlags[self.F_INCLUDED])
|
||||||
self.includedButton.clicked.connect(lambda: self._setSelectedMode(self.F_INCLUDED))
|
self.includedButton.clicked.connect(qtLambda(self._setSelectedMode, self.F_INCLUDED))
|
||||||
|
|
||||||
self.excludedButton = NIconToolButton(self, iSz)
|
self.excludedButton = NIconToolButton(self, iSz)
|
||||||
self.excludedButton.setToolTip(self.tr("Always excluded"))
|
self.excludedButton.setToolTip(self.tr("Always excluded"))
|
||||||
self.excludedButton.setIcon(self._statusFlags[self.F_EXCLUDED])
|
self.excludedButton.setIcon(self._statusFlags[self.F_EXCLUDED])
|
||||||
self.excludedButton.clicked.connect(lambda: self._setSelectedMode(self.F_EXCLUDED))
|
self.excludedButton.clicked.connect(qtLambda(self._setSelectedMode, self.F_EXCLUDED))
|
||||||
|
|
||||||
self.resetButton = NIconToolButton(self, iSz, "revert")
|
self.resetButton = NIconToolButton(self, iSz, "revert")
|
||||||
self.resetButton.setToolTip(self.tr("Reset to default"))
|
self.resetButton.setToolTip(self.tr("Reset to default"))
|
||||||
self.resetButton.clicked.connect(lambda: self._setSelectedMode(self.F_FILTERED))
|
self.resetButton.clicked.connect(qtLambda(self._setSelectedMode, self.F_FILTERED))
|
||||||
|
|
||||||
self.modeBox = QHBoxLayout()
|
self.modeBox = QHBoxLayout()
|
||||||
self.modeBox.addWidget(QLabel(self.tr("Mark selection as"), self))
|
self.modeBox.addWidget(QLabel(self.tr("Mark selection as"), self))
|
||||||
@@ -589,7 +589,7 @@ class _HeadingsTab(NScrollablePage):
|
|||||||
self.fmtPart = QLineEdit("", self)
|
self.fmtPart = QLineEdit("", self)
|
||||||
self.fmtPart.setReadOnly(True)
|
self.fmtPart.setReadOnly(True)
|
||||||
self.btnPart = NIconToolButton(self, iSz, "edit")
|
self.btnPart = NIconToolButton(self, iSz, "edit")
|
||||||
self.btnPart.clicked.connect(lambda: self._editHeading(self.EDIT_TITLE))
|
self.btnPart.clicked.connect(qtLambda(self._editHeading, self.EDIT_TITLE))
|
||||||
self.hdePart = QLabel(trHide, self)
|
self.hdePart = QLabel(trHide, self)
|
||||||
self.hdePart.setIndent(bSp)
|
self.hdePart.setIndent(bSp)
|
||||||
self.swtPart = NSwitch(self, height=iPx)
|
self.swtPart = NSwitch(self, height=iPx)
|
||||||
@@ -605,7 +605,7 @@ class _HeadingsTab(NScrollablePage):
|
|||||||
self.fmtChapter = QLineEdit("", self)
|
self.fmtChapter = QLineEdit("", self)
|
||||||
self.fmtChapter.setReadOnly(True)
|
self.fmtChapter.setReadOnly(True)
|
||||||
self.btnChapter = NIconToolButton(self, iSz, "edit")
|
self.btnChapter = NIconToolButton(self, iSz, "edit")
|
||||||
self.btnChapter.clicked.connect(lambda: self._editHeading(self.EDIT_CHAPTER))
|
self.btnChapter.clicked.connect(qtLambda(self._editHeading, self.EDIT_CHAPTER))
|
||||||
self.hdeChapter = QLabel(trHide, self)
|
self.hdeChapter = QLabel(trHide, self)
|
||||||
self.hdeChapter.setIndent(bSp)
|
self.hdeChapter.setIndent(bSp)
|
||||||
self.swtChapter = NSwitch(self, height=iPx)
|
self.swtChapter = NSwitch(self, height=iPx)
|
||||||
@@ -621,7 +621,7 @@ class _HeadingsTab(NScrollablePage):
|
|||||||
self.fmtUnnumbered = QLineEdit("", self)
|
self.fmtUnnumbered = QLineEdit("", self)
|
||||||
self.fmtUnnumbered.setReadOnly(True)
|
self.fmtUnnumbered.setReadOnly(True)
|
||||||
self.btnUnnumbered = NIconToolButton(self, iSz, "edit")
|
self.btnUnnumbered = NIconToolButton(self, iSz, "edit")
|
||||||
self.btnUnnumbered.clicked.connect(lambda: self._editHeading(self.EDIT_UNNUM))
|
self.btnUnnumbered.clicked.connect(qtLambda(self._editHeading, self.EDIT_UNNUM))
|
||||||
self.hdeUnnumbered = QLabel(trHide, self)
|
self.hdeUnnumbered = QLabel(trHide, self)
|
||||||
self.hdeUnnumbered.setIndent(bSp)
|
self.hdeUnnumbered.setIndent(bSp)
|
||||||
self.swtUnnumbered = NSwitch(self, height=iPx)
|
self.swtUnnumbered = NSwitch(self, height=iPx)
|
||||||
@@ -637,7 +637,7 @@ class _HeadingsTab(NScrollablePage):
|
|||||||
self.fmtScene = QLineEdit("", self)
|
self.fmtScene = QLineEdit("", self)
|
||||||
self.fmtScene.setReadOnly(True)
|
self.fmtScene.setReadOnly(True)
|
||||||
self.btnScene = NIconToolButton(self, iSz, "edit")
|
self.btnScene = NIconToolButton(self, iSz, "edit")
|
||||||
self.btnScene.clicked.connect(lambda: self._editHeading(self.EDIT_SCENE))
|
self.btnScene.clicked.connect(qtLambda(self._editHeading, self.EDIT_SCENE))
|
||||||
self.hdeScene = QLabel(trHide, self)
|
self.hdeScene = QLabel(trHide, self)
|
||||||
self.hdeScene.setIndent(bSp)
|
self.hdeScene.setIndent(bSp)
|
||||||
self.swtScene = NSwitch(self, height=iPx)
|
self.swtScene = NSwitch(self, height=iPx)
|
||||||
@@ -653,7 +653,7 @@ class _HeadingsTab(NScrollablePage):
|
|||||||
self.fmtAScene = QLineEdit("", self)
|
self.fmtAScene = QLineEdit("", self)
|
||||||
self.fmtAScene.setReadOnly(True)
|
self.fmtAScene.setReadOnly(True)
|
||||||
self.btnAScene = NIconToolButton(self, iSz, "edit")
|
self.btnAScene = NIconToolButton(self, iSz, "edit")
|
||||||
self.btnAScene.clicked.connect(lambda: self._editHeading(self.EDIT_HSCENE))
|
self.btnAScene.clicked.connect(qtLambda(self._editHeading, self.EDIT_HSCENE))
|
||||||
self.hdeAScene = QLabel(trHide, self)
|
self.hdeAScene = QLabel(trHide, self)
|
||||||
self.hdeAScene.setIndent(bSp)
|
self.hdeAScene.setIndent(bSp)
|
||||||
self.swtAScene = NSwitch(self, height=iPx)
|
self.swtAScene = NSwitch(self, height=iPx)
|
||||||
@@ -669,7 +669,7 @@ class _HeadingsTab(NScrollablePage):
|
|||||||
self.fmtSection = QLineEdit("", self)
|
self.fmtSection = QLineEdit("", self)
|
||||||
self.fmtSection.setReadOnly(True)
|
self.fmtSection.setReadOnly(True)
|
||||||
self.btnSection = NIconToolButton(self, iSz, "edit")
|
self.btnSection = NIconToolButton(self, iSz, "edit")
|
||||||
self.btnSection.clicked.connect(lambda: self._editHeading(self.EDIT_SECTION))
|
self.btnSection.clicked.connect(qtLambda(self._editHeading, self.EDIT_SECTION))
|
||||||
self.hdeSection = QLabel(trHide, self)
|
self.hdeSection = QLabel(trHide, self)
|
||||||
self.hdeSection.setIndent(bSp)
|
self.hdeSection.setIndent(bSp)
|
||||||
self.swtSection = NSwitch(self, height=iPx)
|
self.swtSection = NSwitch(self, height=iPx)
|
||||||
@@ -702,15 +702,15 @@ class _HeadingsTab(NScrollablePage):
|
|||||||
self.aInsCharPOV = self.menuInsert.addAction(self.tr("Point of View Character"))
|
self.aInsCharPOV = self.menuInsert.addAction(self.tr("Point of View Character"))
|
||||||
self.aInsCharFocus = self.menuInsert.addAction(self.tr("Focus Character"))
|
self.aInsCharFocus = self.menuInsert.addAction(self.tr("Focus Character"))
|
||||||
|
|
||||||
self.aInsTitle.triggered.connect(lambda: self._insertIntoForm(nwHeadFmt.TITLE))
|
self.aInsTitle.triggered.connect(qtLambda(self._insertIntoForm, nwHeadFmt.TITLE))
|
||||||
self.aInsChNum.triggered.connect(lambda: self._insertIntoForm(nwHeadFmt.CH_NUM))
|
self.aInsChNum.triggered.connect(qtLambda(self._insertIntoForm, nwHeadFmt.CH_NUM))
|
||||||
self.aInsChWord.triggered.connect(lambda: self._insertIntoForm(nwHeadFmt.CH_WORD))
|
self.aInsChWord.triggered.connect(qtLambda(self._insertIntoForm, nwHeadFmt.CH_WORD))
|
||||||
self.aInsChRomU.triggered.connect(lambda: self._insertIntoForm(nwHeadFmt.CH_ROMU))
|
self.aInsChRomU.triggered.connect(qtLambda(self._insertIntoForm, nwHeadFmt.CH_ROMU))
|
||||||
self.aInsChRomL.triggered.connect(lambda: self._insertIntoForm(nwHeadFmt.CH_ROML))
|
self.aInsChRomL.triggered.connect(qtLambda(self._insertIntoForm, nwHeadFmt.CH_ROML))
|
||||||
self.aInsScNum.triggered.connect(lambda: self._insertIntoForm(nwHeadFmt.SC_NUM))
|
self.aInsScNum.triggered.connect(qtLambda(self._insertIntoForm, nwHeadFmt.SC_NUM))
|
||||||
self.aInsScAbs.triggered.connect(lambda: self._insertIntoForm(nwHeadFmt.SC_ABS))
|
self.aInsScAbs.triggered.connect(qtLambda(self._insertIntoForm, nwHeadFmt.SC_ABS))
|
||||||
self.aInsCharPOV.triggered.connect(lambda: self._insertIntoForm(nwHeadFmt.CHAR_POV))
|
self.aInsCharPOV.triggered.connect(qtLambda(self._insertIntoForm, nwHeadFmt.CHAR_POV))
|
||||||
self.aInsCharFocus.triggered.connect(lambda: self._insertIntoForm(nwHeadFmt.CHAR_FOCUS))
|
self.aInsCharFocus.triggered.connect(qtLambda(self._insertIntoForm, nwHeadFmt.CHAR_FOCUS))
|
||||||
|
|
||||||
self.btnInsert = QPushButton(self.tr("Insert"), self)
|
self.btnInsert = QPushButton(self.tr("Insert"), self)
|
||||||
self.btnInsert.setMenu(self.menuInsert)
|
self.btnInsert.setMenu(self.menuInsert)
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ from PyQt5.QtWidgets import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.common import checkInt, checkIntTuple, formatTime, minmax
|
from novelwriter.common import checkInt, checkIntTuple, formatTime, minmax, qtLambda
|
||||||
from novelwriter.constants import nwConst
|
from novelwriter.constants import nwConst
|
||||||
from novelwriter.error import formatException
|
from novelwriter.error import formatException
|
||||||
from novelwriter.extensions.modified import NToolDialog
|
from novelwriter.extensions.modified import NToolDialog
|
||||||
@@ -277,11 +277,11 @@ class GuiWritingStats(NToolDialog):
|
|||||||
self.btnSave.setMenu(self.saveMenu)
|
self.btnSave.setMenu(self.saveMenu)
|
||||||
|
|
||||||
self.saveJSON = QAction(self.tr("JSON Data File (.json)"), self)
|
self.saveJSON = QAction(self.tr("JSON Data File (.json)"), self)
|
||||||
self.saveJSON.triggered.connect(lambda: self._saveData(self.FMT_JSON))
|
self.saveJSON.triggered.connect(qtLambda(self._saveData, self.FMT_JSON))
|
||||||
self.saveMenu.addAction(self.saveJSON)
|
self.saveMenu.addAction(self.saveJSON)
|
||||||
|
|
||||||
self.saveCSV = QAction(self.tr("CSV Data File (.csv)"), self)
|
self.saveCSV = QAction(self.tr("CSV Data File (.csv)"), self)
|
||||||
self.saveCSV.triggered.connect(lambda: self._saveData(self.FMT_CSV))
|
self.saveCSV.triggered.connect(qtLambda(self._saveData, self.FMT_CSV))
|
||||||
self.saveMenu.addAction(self.saveCSV)
|
self.saveMenu.addAction(self.saveCSV)
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
|
|||||||
Reference in New Issue
Block a user