Added a log file that appends session stats.
This commit is contained in:
@@ -17,6 +17,7 @@ class nwFiles():
|
||||
APP_ICON = "novelWriter.svg"
|
||||
PROJ_FILE = "nwProject.nwx"
|
||||
PROJ_DICT = "wordlist.txt"
|
||||
SESS_INFO = "sessionInfo.log"
|
||||
|
||||
# END Class nwFiles
|
||||
|
||||
|
||||
+2
-1
@@ -237,7 +237,7 @@ class GuiMain(QMainWindow):
|
||||
saveOK = True
|
||||
|
||||
if saveOK:
|
||||
self.theProject.clearProject()
|
||||
self.theProject.closeProject()
|
||||
self.clearGUI()
|
||||
self.hasProject = False
|
||||
|
||||
@@ -451,6 +451,7 @@ class GuiMain(QMainWindow):
|
||||
self.saveDocument()
|
||||
if self._takeProjectAction():
|
||||
self.saveProject()
|
||||
self.theProject.closeProject()
|
||||
self.mainConf.setWinSize(self.width(), self.height())
|
||||
self.mainConf.setTreeColWidths(self.treeView.getColumnSizes())
|
||||
self.mainConf.setMainPanePos(self.splitMain.sizes())
|
||||
|
||||
@@ -35,6 +35,7 @@ class NWProject():
|
||||
self.theParent = theParent
|
||||
self.mainConf = self.theParent.mainConf
|
||||
self.projChanged = None
|
||||
self.projOpened = None
|
||||
|
||||
# Debug
|
||||
self.handleSeed = None
|
||||
@@ -135,6 +136,7 @@ class NWProject():
|
||||
def clearProject(self):
|
||||
|
||||
self.projChanged = None
|
||||
self.projOpened = None
|
||||
|
||||
# Project Settings
|
||||
self.projTree = {}
|
||||
@@ -251,6 +253,7 @@ class NWProject():
|
||||
|
||||
self._scanProjectFolder()
|
||||
self.setProjectChanged(False)
|
||||
self.projOpened = time()
|
||||
|
||||
return True
|
||||
|
||||
@@ -321,6 +324,11 @@ class NWProject():
|
||||
|
||||
return True
|
||||
|
||||
def closeProject(self):
|
||||
self._appendSessionStats()
|
||||
self.clearProject()
|
||||
return True
|
||||
|
||||
##
|
||||
# Set Functions
|
||||
##
|
||||
@@ -594,6 +602,24 @@ class NWProject():
|
||||
|
||||
return
|
||||
|
||||
def _appendSessionStats(self):
|
||||
|
||||
if self.projMeta is None:
|
||||
return False
|
||||
|
||||
with open(path.join(self.projMeta, nwFiles.SESS_INFO), mode="a+") as outFile:
|
||||
print((
|
||||
"Start: {opened:s} "
|
||||
"End: {closed:s} "
|
||||
"Words: {words:8d}"
|
||||
).format(
|
||||
opened = datetime.fromtimestamp(self.projOpened).strftime("%Y-%m-%d %H:%M:%S"),
|
||||
closed = datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
|
||||
words = self.getSessionWordCount(),
|
||||
), file=outFile)
|
||||
|
||||
return True
|
||||
|
||||
def _makeHandle(self, addSeed=""):
|
||||
if self.handleSeed is None:
|
||||
newSeed = str(time()) + addSeed
|
||||
|
||||
Reference in New Issue
Block a user