Finished handling of recovered orphaned files

This commit is contained in:
Veronica K. B. Olsen
2019-04-30 20:07:01 +02:00
parent 664efbc6d2
commit 418e5115bc
2 changed files with 27 additions and 4 deletions
+12 -2
View File
@@ -236,6 +236,12 @@ class GuiDocTree(QTreeWidget):
self.orphRoot = newItem
newItem.setExpanded(True)
return
def _cleanOrphanedRoot(self):
if self.orphRoot.childCount() == 0:
self.takeTopLevelItem(self.indexOfTopLevelItem(self.orphRoot))
self.orphRoot = None
return
def setTreeItemValues(self, tHandle):
@@ -260,7 +266,7 @@ class GuiDocTree(QTreeWidget):
def propagateCount(self, tHandle, theCount, nDepth=0):
tItem = self.theMap[tHandle]
tItem.setText(self.C_COUNT,"{:n}".format(theCount))
tItem.setText(self.C_COUNT,str(theCount))
pItem = tItem.parent()
if pItem is not None:
pCount = 0
@@ -316,7 +322,7 @@ class GuiDocTree(QTreeWidget):
dHandle = dItem.text(self.C_HANDLE)
snItem = self.theProject.getItem(sHandle)
dnItem = self.theProject.getItem(dHandle)
isSame = snItem.itemClass == dnItem.itemClass and dnItem.itemType
isSame = snItem.itemClass == dnItem.itemClass
isNone = snItem.itemClass == nwItemClass.NO_CLASS
isFile = dnItem.itemType == nwItemType.FILE
isRoot = snItem.itemType == nwItemType.ROOT
@@ -324,6 +330,10 @@ class GuiDocTree(QTreeWidget):
if (isSame or isNone) and not (isFile and isOnTop) and not isRoot:
logger.verbose("Drag'n'drop of item %s accepted" % sHandle)
QTreeWidget.dropEvent(self, theEvent)
if isNone:
snItem.setClass(dnItem.itemClass)
self.setTreeItemValues(sHandle)
self._cleanOrphanedRoot()
else:
logger.verbose("Drag'n'drop of item %s not accepted" % sHandle)
+15 -2
View File
@@ -1,5 +1,5 @@
<?xml version='1.0' encoding='utf-8'?>
<novelWriterXML appVersion="0.0.1" fileVersion="1.0" timeStamp="2019-04-28 14:03:05">
<novelWriterXML appVersion="0.0.1" fileVersion="1.0" timeStamp="2019-04-30 20:04:07">
<project>
<name>Sample Project</name>
<title>Sample Project</title>
@@ -16,7 +16,20 @@
<children>True</children>
<expanded>True</expanded>
</item>
<item handle="e7ded148d6e4a" order="0" parent="7031beac91f75">
<item handle="53b69b83cdafc" order="0" parent="None">
<name>Title Page</name>
<type>FILE</type>
<class>NOVEL</class>
<status>0</status>
<depth>0</depth>
<children>False</children>
<expanded>False</expanded>
<layout>TITLE</layout>
<charCount>0</charCount>
<wordCount>0</wordCount>
<paraCount>0</paraCount>
</item>
<item handle="e7ded148d6e4a" order="1" parent="7031beac91f75">
<name>Some Chapter</name>
<type>FOLDER</type>
<class>NOVEL</class>