Loading and saving of status and importance now works
This commit is contained in:
+11
-4
@@ -55,8 +55,8 @@ class NWProject():
|
|||||||
|
|
||||||
# Project Settings
|
# Project Settings
|
||||||
self.spellCheck = False
|
self.spellCheck = False
|
||||||
self.statusItems = NWStatus()
|
self.statusItems = None
|
||||||
self.importItems = NWStatus()
|
self.importItems = None
|
||||||
self.lastEdited = None
|
self.lastEdited = None
|
||||||
self.lastViewed = None
|
self.lastViewed = None
|
||||||
|
|
||||||
@@ -214,6 +214,10 @@ class NWProject():
|
|||||||
self.lastEdited = checkString(xItem.text,None,True)
|
self.lastEdited = checkString(xItem.text,None,True)
|
||||||
if xItem.tag == "lastViewed":
|
if xItem.tag == "lastViewed":
|
||||||
self.lastViewed = checkString(xItem.text,None,True)
|
self.lastViewed = checkString(xItem.text,None,True)
|
||||||
|
if xItem.tag == "status":
|
||||||
|
self.statusItems.unpackEntries(xItem)
|
||||||
|
if xItem.tag == "importance":
|
||||||
|
self.importItems.unpackEntries(xItem)
|
||||||
elif xChild.tag == "content":
|
elif xChild.tag == "content":
|
||||||
logger.debug("Found project content")
|
logger.debug("Found project content")
|
||||||
for xItem in xChild:
|
for xItem in xChild:
|
||||||
@@ -275,6 +279,11 @@ class NWProject():
|
|||||||
self._saveProjectValue(xSettings,"lastEdited",self.lastEdited)
|
self._saveProjectValue(xSettings,"lastEdited",self.lastEdited)
|
||||||
self._saveProjectValue(xSettings,"lastViewed",self.lastViewed)
|
self._saveProjectValue(xSettings,"lastViewed",self.lastViewed)
|
||||||
|
|
||||||
|
xStatus = etree.SubElement(xSettings,"status")
|
||||||
|
self.statusItems.packEntries(xStatus)
|
||||||
|
xStatus = etree.SubElement(xSettings,"importance")
|
||||||
|
self.importItems.packEntries(xStatus)
|
||||||
|
|
||||||
# Save Tree Content
|
# Save Tree Content
|
||||||
logger.debug("Writing project content")
|
logger.debug("Writing project content")
|
||||||
xContent = etree.SubElement(nwXML,"content",attrib={"count":str(len(self.treeOrder))})
|
xContent = etree.SubElement(nwXML,"content",attrib={"count":str(len(self.treeOrder))})
|
||||||
@@ -360,8 +369,6 @@ class NWProject():
|
|||||||
if nwItem.itemStatus in replaceMap.keys():
|
if nwItem.itemStatus in replaceMap.keys():
|
||||||
nwItem.setStatus(replaceMap[nwItem.itemStatus])
|
nwItem.setStatus(replaceMap[nwItem.itemStatus])
|
||||||
self.setProjectChanged(True)
|
self.setProjectChanged(True)
|
||||||
print(self.statusItems.theLabels)
|
|
||||||
print(self.statusItems.theColours)
|
|
||||||
return
|
return
|
||||||
|
|
||||||
def setImportColours(self, newCols,):
|
def setImportColours(self, newCols,):
|
||||||
|
|||||||
@@ -13,6 +13,8 @@
|
|||||||
import logging
|
import logging
|
||||||
import nw
|
import nw
|
||||||
|
|
||||||
|
from lxml import etree
|
||||||
|
|
||||||
from nw.enum import nwItemClass
|
from nw.enum import nwItemClass
|
||||||
from nw.common import checkInt
|
from nw.common import checkInt
|
||||||
|
|
||||||
@@ -84,6 +86,50 @@ class NWStatus():
|
|||||||
self.theCounts[theIndex] += 1
|
self.theCounts[theIndex] += 1
|
||||||
return
|
return
|
||||||
|
|
||||||
|
def packEntries(self, xParent):
|
||||||
|
for n in range(self.theLength):
|
||||||
|
xSub = etree.SubElement(xParent,"entry",attrib={
|
||||||
|
"red" : str(self.theColours[n][0]),
|
||||||
|
"green" : str(self.theColours[n][1]),
|
||||||
|
"blue" : str(self.theColours[n][2]),
|
||||||
|
})
|
||||||
|
xSub.text = self.theLabels[n]
|
||||||
|
return True
|
||||||
|
|
||||||
|
def unpackEntries(self, xParent):
|
||||||
|
|
||||||
|
theLabels = []
|
||||||
|
theColours = []
|
||||||
|
|
||||||
|
for xChild in xParent:
|
||||||
|
theLabels.append(xChild.text)
|
||||||
|
if "red" in xChild.attrib:
|
||||||
|
cR = checkInt(xChild.attrib["red"],0,False)
|
||||||
|
else:
|
||||||
|
cR = 0
|
||||||
|
if "green" in xChild.attrib:
|
||||||
|
cG = checkInt(xChild.attrib["green"],0,False)
|
||||||
|
else:
|
||||||
|
cG = 0
|
||||||
|
if "blue" in xChild.attrib:
|
||||||
|
cB = checkInt(xChild.attrib["blue"],0,False)
|
||||||
|
else:
|
||||||
|
cB = 0
|
||||||
|
theColours.append((cR,cG,cB))
|
||||||
|
|
||||||
|
if len(theLabels) > 0:
|
||||||
|
self.theLabels = []
|
||||||
|
self.theColours = []
|
||||||
|
self.theCounts = []
|
||||||
|
self.theMap = {}
|
||||||
|
self.theLength = 0
|
||||||
|
self.theIndex = 0
|
||||||
|
|
||||||
|
for n in range(len(theLabels)):
|
||||||
|
self.addEntry(theLabels[n], theColours[n])
|
||||||
|
|
||||||
|
return True
|
||||||
|
|
||||||
##
|
##
|
||||||
# Iterator Bits
|
# Iterator Bits
|
||||||
##
|
##
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<?xml version='1.0' encoding='utf-8'?>
|
<?xml version='1.0' encoding='utf-8'?>
|
||||||
<novelWriterXML appVersion="0.1.3" fileVersion="1.0" timeStamp="2019-05-19 19:03:13">
|
<novelWriterXML appVersion="0.1.3" fileVersion="1.0" timeStamp="2019-05-19 22:48:37">
|
||||||
<project>
|
<project>
|
||||||
<name>Sample Project</name>
|
<name>Sample Project</name>
|
||||||
<title>Sample Project</title>
|
<title>Sample Project</title>
|
||||||
@@ -8,8 +8,23 @@
|
|||||||
</project>
|
</project>
|
||||||
<settings>
|
<settings>
|
||||||
<spellCheck>True</spellCheck>
|
<spellCheck>True</spellCheck>
|
||||||
<lastEdited>4cd0bd12b087d</lastEdited>
|
<lastEdited>636b6aa9b697b</lastEdited>
|
||||||
<lastViewed>636b6aa9b697b</lastViewed>
|
<lastViewed>636b6aa9b697b</lastViewed>
|
||||||
|
<status>
|
||||||
|
<entry blue="100" green="100" red="100">New</entry>
|
||||||
|
<entry blue="0" green="50" red="200">Notes</entry>
|
||||||
|
<entry blue="0" green="60" red="182">Started</entry>
|
||||||
|
<entry blue="0" green="129" red="193">1st Draft</entry>
|
||||||
|
<entry blue="0" green="129" red="193">2nd Draft</entry>
|
||||||
|
<entry blue="0" green="129" red="193">3rd Draft</entry>
|
||||||
|
<entry blue="58" green="180" red="58">Finished</entry>
|
||||||
|
</status>
|
||||||
|
<importance>
|
||||||
|
<entry blue="100" green="100" red="100">None</entry>
|
||||||
|
<entry blue="0" green="71" red="143">Minor</entry>
|
||||||
|
<entry blue="180" green="0" red="60">Major</entry>
|
||||||
|
<entry blue="154" green="0" red="103">Main</entry>
|
||||||
|
</importance>
|
||||||
</settings>
|
</settings>
|
||||||
<content count="14">
|
<content count="14">
|
||||||
<item handle="7031beac91f75" order="0" parent="None">
|
<item handle="7031beac91f75" order="0" parent="None">
|
||||||
@@ -23,7 +38,7 @@
|
|||||||
<name>Title Page</name>
|
<name>Title Page</name>
|
||||||
<type>FILE</type>
|
<type>FILE</type>
|
||||||
<class>NOVEL</class>
|
<class>NOVEL</class>
|
||||||
<status>Draft</status>
|
<status>Started</status>
|
||||||
<expanded>False</expanded>
|
<expanded>False</expanded>
|
||||||
<layout>TITLE</layout>
|
<layout>TITLE</layout>
|
||||||
<charCount>23</charCount>
|
<charCount>23</charCount>
|
||||||
@@ -35,14 +50,14 @@
|
|||||||
<name>Some Chapter</name>
|
<name>Some Chapter</name>
|
||||||
<type>FOLDER</type>
|
<type>FOLDER</type>
|
||||||
<class>NOVEL</class>
|
<class>NOVEL</class>
|
||||||
<status>Note</status>
|
<status>Notes</status>
|
||||||
<expanded>True</expanded>
|
<expanded>True</expanded>
|
||||||
</item>
|
</item>
|
||||||
<item handle="96b68994dfa3d" order="0" parent="e7ded148d6e4a">
|
<item handle="96b68994dfa3d" order="0" parent="e7ded148d6e4a">
|
||||||
<name>New Scene</name>
|
<name>New Scene</name>
|
||||||
<type>FILE</type>
|
<type>FILE</type>
|
||||||
<class>NOVEL</class>
|
<class>NOVEL</class>
|
||||||
<status>Draft</status>
|
<status>Started</status>
|
||||||
<expanded>False</expanded>
|
<expanded>False</expanded>
|
||||||
<layout>SCENE</layout>
|
<layout>SCENE</layout>
|
||||||
<charCount>2571</charCount>
|
<charCount>2571</charCount>
|
||||||
@@ -54,7 +69,7 @@
|
|||||||
<name>File With Stuff</name>
|
<name>File With Stuff</name>
|
||||||
<type>FILE</type>
|
<type>FILE</type>
|
||||||
<class>NOVEL</class>
|
<class>NOVEL</class>
|
||||||
<status>Note</status>
|
<status>Notes</status>
|
||||||
<expanded>False</expanded>
|
<expanded>False</expanded>
|
||||||
<layout>SCENE</layout>
|
<layout>SCENE</layout>
|
||||||
<charCount>578</charCount>
|
<charCount>578</charCount>
|
||||||
@@ -66,7 +81,7 @@
|
|||||||
<name>New File</name>
|
<name>New File</name>
|
||||||
<type>FILE</type>
|
<type>FILE</type>
|
||||||
<class>NOVEL</class>
|
<class>NOVEL</class>
|
||||||
<status>Note</status>
|
<status>Notes</status>
|
||||||
<expanded>False</expanded>
|
<expanded>False</expanded>
|
||||||
<layout>SCENE</layout>
|
<layout>SCENE</layout>
|
||||||
<charCount>69</charCount>
|
<charCount>69</charCount>
|
||||||
|
|||||||
Reference in New Issue
Block a user