Fixed setting class and parent of a dropped orphaned item.
This commit is contained in:
+15
-2
@@ -243,6 +243,20 @@ class GuiDocTree(QTreeWidget):
|
|||||||
self.orphRoot = None
|
self.orphRoot = None
|
||||||
return
|
return
|
||||||
|
|
||||||
|
def _moveOrphanedItem(self, tHandle, dHandle):
|
||||||
|
trItemS = self.theMap[tHandle]
|
||||||
|
nwItemS = self.theProject.getItem(tHandle)
|
||||||
|
nwItemD = self.theProject.getItem(dHandle)
|
||||||
|
trItemP = trItemS.parent()
|
||||||
|
nwItemS.setClass(nwItemD.itemClass)
|
||||||
|
if trItemP is None:
|
||||||
|
logger.error("Failed to find new parent item of %s" % tHandle)
|
||||||
|
return
|
||||||
|
pHandle = trItemP.text(self.C_HANDLE)
|
||||||
|
nwItemS.setParent(pHandle)
|
||||||
|
self.setTreeItemValues(tHandle)
|
||||||
|
return
|
||||||
|
|
||||||
def setTreeItemValues(self, tHandle):
|
def setTreeItemValues(self, tHandle):
|
||||||
|
|
||||||
trItem = self.theMap[tHandle]
|
trItem = self.theMap[tHandle]
|
||||||
@@ -331,8 +345,7 @@ class GuiDocTree(QTreeWidget):
|
|||||||
logger.verbose("Drag'n'drop of item %s accepted" % sHandle)
|
logger.verbose("Drag'n'drop of item %s accepted" % sHandle)
|
||||||
QTreeWidget.dropEvent(self, theEvent)
|
QTreeWidget.dropEvent(self, theEvent)
|
||||||
if isNone:
|
if isNone:
|
||||||
snItem.setClass(dnItem.itemClass)
|
self._moveOrphanedItem(sHandle, dHandle)
|
||||||
self.setTreeItemValues(sHandle)
|
|
||||||
self._cleanOrphanedRoot()
|
self._cleanOrphanedRoot()
|
||||||
else:
|
else:
|
||||||
logger.verbose("Drag'n'drop of item %s not accepted" % sHandle)
|
logger.verbose("Drag'n'drop of item %s not accepted" % sHandle)
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<?xml version='1.0' encoding='utf-8'?>
|
<?xml version='1.0' encoding='utf-8'?>
|
||||||
<novelWriterXML appVersion="0.0.1" fileVersion="1.0" timeStamp="2019-04-30 20:04:07">
|
<novelWriterXML appVersion="0.0.1" fileVersion="1.0" timeStamp="2019-05-03 20:44:17">
|
||||||
<project>
|
<project>
|
||||||
<name>Sample Project</name>
|
<name>Sample Project</name>
|
||||||
<title>Sample Project</title>
|
<title>Sample Project</title>
|
||||||
@@ -16,11 +16,11 @@
|
|||||||
<children>True</children>
|
<children>True</children>
|
||||||
<expanded>True</expanded>
|
<expanded>True</expanded>
|
||||||
</item>
|
</item>
|
||||||
<item handle="53b69b83cdafc" order="0" parent="None">
|
<item handle="53b69b83cdafc" order="0" parent="7031beac91f75">
|
||||||
<name>Title Page</name>
|
<name>Title Page</name>
|
||||||
<type>FILE</type>
|
<type>FILE</type>
|
||||||
<class>NOVEL</class>
|
<class>NOVEL</class>
|
||||||
<status>0</status>
|
<status>2</status>
|
||||||
<depth>0</depth>
|
<depth>0</depth>
|
||||||
<children>False</children>
|
<children>False</children>
|
||||||
<expanded>False</expanded>
|
<expanded>False</expanded>
|
||||||
|
|||||||
Reference in New Issue
Block a user