eric6/E5Gui/E5TreeWidget.py

changeset 8205
4a0f1f896341
parent 8143
2c730d5fd177
child 8218
7c09585bd960
equal deleted inserted replaced
8204:fd477cded1c1 8205:4a0f1f896341
77 @param item item to be appended (QTreeWidgetItem) 77 @param item item to be appended (QTreeWidgetItem)
78 @return flag indicating success (boolean) 78 @return flag indicating success (boolean)
79 @exception RuntimeError raised to indicate an illegal type for 79 @exception RuntimeError raised to indicate an illegal type for
80 the parent 80 the parent
81 """ 81 """
82 if not isinstance(parent, (QTreeWidgetItem, str)):
83 raise RuntimeError("illegal type for parent")
84
82 if isinstance(parent, QTreeWidgetItem): 85 if isinstance(parent, QTreeWidgetItem):
83 if parent is None or parent.treeWidget() != self: 86 if parent is None or parent.treeWidget() != self:
84 return False 87 return False
85 parentItem = parent 88 parentItem = parent
86 elif isinstance(parent, str): 89 else:
87 lst = self.findItems(parent, Qt.MatchFlag.MatchExactly) 90 lst = self.findItems(parent, Qt.MatchFlag.MatchExactly)
88 if not lst: 91 if not lst:
89 return False 92 return False
90 parentItem = lst[0] 93 parentItem = lst[0]
91 if parentItem is None: 94 if parentItem is None:
92 return False 95 return False
93 else:
94 raise RuntimeError("illegal type for parent")
95 96
96 self.__allTreeItems.append(item) 97 self.__allTreeItems.append(item)
97 parentItem.addChild(item) 98 parentItem.addChild(item)
98 return True 99 return True
99 100
106 @param item item to be prepended (QTreeWidgetItem) 107 @param item item to be prepended (QTreeWidgetItem)
107 @return flag indicating success (boolean) 108 @return flag indicating success (boolean)
108 @exception RuntimeError raised to indicate an illegal type for 109 @exception RuntimeError raised to indicate an illegal type for
109 the parent 110 the parent
110 """ 111 """
112 if not isinstance(parent, (QTreeWidgetItem, str)):
113 raise RuntimeError("illegal type for parent")
114
111 if isinstance(parent, QTreeWidgetItem): 115 if isinstance(parent, QTreeWidgetItem):
112 if parent is None or parent.treeWidget() != self: 116 if parent is None or parent.treeWidget() != self:
113 return False 117 return False
114 parentItem = parent 118 parentItem = parent
115 elif isinstance(parent, str): 119 else:
116 lst = self.findItems(parent, Qt.MatchFlag.MatchExactly) 120 lst = self.findItems(parent, Qt.MatchFlag.MatchExactly)
117 if not lst: 121 if not lst:
118 return False 122 return False
119 parentItem = lst[0] 123 parentItem = lst[0]
120 if parentItem is None: 124 if parentItem is None:
121 return False 125 return False
122 else:
123 raise RuntimeError("illegal type for parent")
124 126
125 self.__allTreeItems.append(item) 127 self.__allTreeItems.append(item)
126 parentItem.insertChild(0, item) 128 parentItem.insertChild(0, item)
127 return True 129 return True
128 130

eric ide

mercurial