Merge pull request #94 from vkbo/gui_tweaks
GUI Tweaks: Expand Home + Clear Recent Projects
This commit is contained in:
@@ -340,6 +340,10 @@ class Config:
|
||||
self.recentList.insert(0,recentPath)
|
||||
return
|
||||
|
||||
def clearRecent(self):
|
||||
self.recentList = [""]*10
|
||||
return
|
||||
|
||||
def setConfPath(self, newPath):
|
||||
if newPath is None:
|
||||
return True
|
||||
|
||||
@@ -122,6 +122,15 @@ class GuiExport(QDialog):
|
||||
pFormat = self.tabPandoc.outputFormat.currentData()
|
||||
tFormat = GuiExportPandoc.FMT_VIA[pFormat]
|
||||
|
||||
if saveTo.startswith("~"):
|
||||
saveTo = path.expanduser(saveTo)
|
||||
|
||||
exportDir = path.dirname(saveTo)
|
||||
if not path.isdir(exportDir):
|
||||
self.theParent.makeAlert("The export folder does not exist.",nwAlert.ERROR)
|
||||
self.exportStatus.setText("Export failed ...")
|
||||
return False
|
||||
|
||||
nItems = len(self.theProject.treeOrder)
|
||||
if eFormat == GuiExportMain.FMT_PDOC:
|
||||
nItems += int(0.2*nItems)
|
||||
@@ -288,6 +297,9 @@ class GuiExport(QDialog):
|
||||
hScene = self.tabMain.hideScene.isChecked()
|
||||
hSection = self.tabMain.hideSection.isChecked()
|
||||
|
||||
if saveTo.startswith("~"):
|
||||
saveTo = path.expanduser(saveTo)
|
||||
|
||||
self.optState.setSetting("wNovel", wNovel)
|
||||
self.optState.setSetting("wNotes", wNotes)
|
||||
self.optState.setSetting("eFormat", eFormat)
|
||||
@@ -563,6 +575,8 @@ class GuiExportMain(QWidget):
|
||||
|
||||
def _checkFileExtension(self):
|
||||
saveTo = self.exportPath.text()
|
||||
if saveTo.startswith("~"):
|
||||
saveTo = path.expanduser(saveTo)
|
||||
fileBits = path.splitext(saveTo)
|
||||
if self.currFormat > 0 and fileBits[0].strip() != "":
|
||||
saveTo = fileBits[0]+self.FMT_EXT[self.currFormat]
|
||||
|
||||
@@ -72,6 +72,7 @@ class GuiMainMenu(QMenuBar):
|
||||
return
|
||||
|
||||
def updateRecentProjects(self):
|
||||
|
||||
self.recentMenu.clear()
|
||||
for n in range(len(self.mainConf.recentList)):
|
||||
recentProject = self.mainConf.recentList[n]
|
||||
@@ -79,6 +80,13 @@ class GuiMainMenu(QMenuBar):
|
||||
menuItem = QAction("%s" % recentProject, self.projMenu)
|
||||
menuItem.triggered.connect(lambda menuItem, n=n : self.openRecentProject(menuItem, n))
|
||||
self.recentMenu.addAction(menuItem)
|
||||
|
||||
self.recentMenu.addSeparator()
|
||||
menuItem = QAction("Clear Recent Projects", self)
|
||||
menuItem.setStatusTip("Clear the list of recent projects")
|
||||
menuItem.triggered.connect(self._clearRecentProjects)
|
||||
self.recentMenu.addAction(menuItem)
|
||||
|
||||
return
|
||||
|
||||
def updateSpellCheck(self):
|
||||
@@ -150,6 +158,11 @@ class GuiMainMenu(QMenuBar):
|
||||
QDesktopServices.openUrl(QUrl(nw.__docurl__))
|
||||
return True
|
||||
|
||||
def _clearRecentProjects(self):
|
||||
self.mainConf.clearRecent()
|
||||
self.updateRecentProjects()
|
||||
return True
|
||||
|
||||
##
|
||||
# Menu Builders
|
||||
##
|
||||
|
||||
@@ -358,6 +358,8 @@ class NWProject():
|
||||
if projPath is None or projPath == "":
|
||||
self.projPath = None
|
||||
else:
|
||||
if projPath.startswith("~"):
|
||||
projPath = path.expanduser(projPath)
|
||||
self.projPath = projPath
|
||||
self.setProjectChanged(True)
|
||||
return True
|
||||
|
||||
Reference in New Issue
Block a user