X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8bc0c17afc3a83b625a6109375bf86a126cac69e..aea9f6d5d3eb8513065583fa8e26d7687c39cc4b:/wxPython/wx/lib/customtreectrl.py diff --git a/wxPython/wx/lib/customtreectrl.py b/wxPython/wx/lib/customtreectrl.py index d987320ca0..87313192a2 100644 --- a/wxPython/wx/lib/customtreectrl.py +++ b/wxPython/wx/lib/customtreectrl.py @@ -924,7 +924,7 @@ class TreeTextCtrl(wx.TextCtrl): else: - raise "\n ERROR: You Must Create An Image List To Use Images!" + raise Exception("\n ERROR: You Must Create An Image List To Use Images!") checkimage = item.GetCurrentCheckedImage() @@ -1321,7 +1321,7 @@ class GenericTreeItem: """Returns whether the associated window is enabled or not.""" if not self._wnd: - raise "\nERROR: This Item Has No Window Associated" + raise Exception("\nERROR: This Item Has No Window Associated") return self._windowenabled @@ -1330,7 +1330,7 @@ class GenericTreeItem: """Sets whether the associated window is enabled or not.""" if not self._wnd: - raise "\nERROR: This Item Has No Window Associated" + raise Exception("\nERROR: This Item Has No Window Associated") self._windowenabled = enable self._wnd.Enable(enable) @@ -1790,7 +1790,9 @@ class CustomTreeCtrl(wx.PyScrolledWindow): btnshadow = wx.SystemSettings_GetColour(wx.SYS_COLOUR_BTNSHADOW) self._hilightUnfocusedBrush = wx.Brush(btnshadow) r, g, b = btnshadow.Red(), btnshadow.Green(), btnshadow.Blue() - backcolour = ((r >> 1) - 20, (g >> 1) - 20, (b >> 1) - 20) + backcolour = (max((r >> 1) - 20, 0), + max((g >> 1) - 20, 0), + max((b >> 1) - 20, 0)) backcolour = wx.Colour(backcolour[0], backcolour[1], backcolour[2]) self._hilightUnfocusedBrush2 = wx.Brush(backcolour) @@ -1993,7 +1995,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Toggles the item selection.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") self.SelectItem(item, not self.IsSelected(item)) @@ -2023,7 +2025,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Enables/disables an item.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") if item.IsEnabled() == enable: return @@ -2054,7 +2056,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns whether an item is enabled or disabled.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.IsEnabled() @@ -2076,7 +2078,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns whether an item is checked or not.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.IsChecked() @@ -2123,7 +2125,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """ if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") # Should we raise an error here?!? if item.GetType() == 0: @@ -2173,7 +2175,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Transverses the tree and toggles the items. Meaningful only for check items.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") child, cookie = self.GetFirstChild(item) @@ -2193,7 +2195,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Transverses the tree and checks/unchecks the items. Meaningful only for check items.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") (child, cookie) = self.GetFirstChild(item) @@ -2213,7 +2215,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): Meaningful only for check items.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") parent = item.GetParent() if not parent or parent.GetType() != 1: @@ -2234,7 +2236,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Programatically check/uncheck item children. Does not generate EVT_TREE_CHECK* events.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") if checked == None: self.AutoToggleChild(item) @@ -2270,7 +2272,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Starts editing an item label.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") self.Edit(item) @@ -2305,7 +2307,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns whether an item has children or not.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return len(item.GetChildren()) > 0 @@ -2314,7 +2316,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Gets the item children count.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.GetChildrenCount(recursively) @@ -2363,7 +2365,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns the item text.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.GetText() @@ -2372,7 +2374,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns the item image.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.GetImage(which) @@ -2381,7 +2383,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns the data associated to an item.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.GetData() @@ -2392,7 +2394,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns the item text colour.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.Attr().GetTextColour() @@ -2401,7 +2403,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns the item background colour.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.Attr().GetBackgroundColour() @@ -2410,7 +2412,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns the item font.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.Attr().GetFont() @@ -2419,7 +2421,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns whether an item is hypertext or not.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.IsHyperText() @@ -2428,7 +2430,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Sets the item text.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") dc = wx.ClientDC(self) item.SetText(text) @@ -2440,7 +2442,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Sets the item image, depending on the item state.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") item.SetImage(image, which) @@ -2453,7 +2455,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Sets the data associated to an item.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") item.SetData(data) @@ -2464,7 +2466,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Forces the appearance of the button next to the item.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") item.SetHasPlus(has) self.RefreshLine(item) @@ -2474,7 +2476,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Sets the item font bold/unbold.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") # avoid redrawing the tree if no real change if item.IsBold() != bold: @@ -2486,7 +2488,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Sets the item font italic/non-italic.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") if item.IsItalic() != italic: itemFont = self.GetItemFont(item) @@ -2508,7 +2510,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """ if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") if highlight: bg = wx.SystemSettings_GetColour(wx.SYS_COLOUR_HIGHLIGHT) @@ -2523,7 +2525,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Sets the item text colour.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") if self.GetItemTextColour(item) == col: return @@ -2536,7 +2538,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Sets the item background colour.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") item.Attr().SetBackgroundColour(col) self.RefreshLine(item) @@ -2546,7 +2548,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Sets whether the item is hypertext or not.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") item.SetHyperText(hyper) self.RefreshLine(item) @@ -2556,7 +2558,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Sets the item font.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") if self.GetItemFont(item) == font: return @@ -2621,7 +2623,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Sets whether an hypertext item was visited.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") item.SetVisited(visited) self.RefreshLine(item) @@ -2631,7 +2633,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns whether an hypertext item was visited.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.GetVisited() @@ -2803,7 +2805,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns the window associated to the item (if any).""" if not item: - raise "\nERROR: Invalid Item" + raise Exception("\nERROR: Invalid Item") return item.GetWindow() @@ -2812,7 +2814,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns whether the window associated to the item is enabled.""" if not item: - raise "\nERROR: Invalid Item" + raise Exception("\nERROR: Invalid Item") return item.GetWindowEnabled() @@ -2821,7 +2823,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Enables/disables the window associated to the item.""" if not item: - raise "\nERROR: Invalid Item" + raise Exception("\nERROR: Invalid Item") item.SetWindowEnabled(enable) @@ -2835,7 +2837,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """ if not item: - raise "\nERROR: Invalid Item" + raise Exception("\nERROR: Invalid Item") return item.GetType() @@ -2847,7 +2849,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns whether the item is visible or not.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") # An item is only visible if it's not a descendant of a collapsed item parent = item.GetParent() @@ -2880,7 +2882,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns whether the item has children or not.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") # consider that the item does have children if it has the "+" button: it # might not have them (if it had never been expanded yet) but then it @@ -2894,7 +2896,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns whether the item is expanded or not.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.IsExpanded() @@ -2903,7 +2905,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns whether the item is selected or not.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.IsSelected() @@ -2912,7 +2914,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns whether the item font is bold or not.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.IsBold() @@ -2921,7 +2923,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns whether the item font is italic or not.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.IsItalic() @@ -2934,7 +2936,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Gets the item parent.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") return item.GetParent() @@ -2943,7 +2945,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Gets the item first child.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") cookie = 0 return self.GetNextChild(item, cookie) @@ -2956,7 +2958,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """ if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") children = item.GetChildren() @@ -2977,7 +2979,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Gets the item last child.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") children = item.GetChildren() return (len(children) == 0 and [None] or [children[-1]])[0] @@ -2987,7 +2989,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Gets the next sibling of an item.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") i = item parent = i.GetParent() @@ -3008,7 +3010,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Gets the previous sibling of an item.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") i = item parent = i.GetParent() @@ -3028,7 +3030,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Gets the next item. Only for internal use right now.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") i = item @@ -3066,7 +3068,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Returns the next visible item.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") id = item @@ -3081,9 +3083,9 @@ class CustomTreeCtrl(wx.PyScrolledWindow): def GetPrevVisible(self, item): if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") - raise "\nERROR: Not Implemented" + raise Exception("\nERROR: Not Implemented") return None @@ -3141,13 +3143,13 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Actually inserts an item in the tree.""" if wnd is not None and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") if text.find("\n") >= 0 and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") if ct_type < 0 or ct_type > 2: - raise "\nERROR: Item Type Should Be 0 (Normal), 1 (CheckBox) or 2 (RadioButton). " + raise Exception("\nERROR: Item Type Should Be 0 (Normal), 1 (CheckBox) or 2 (RadioButton). ") parent = parentId @@ -3173,16 +3175,16 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Adds a root to the CustomTreeCtrl. Only one root must exist.""" if self._anchor: - raise "\nERROR: Tree Can Have Only One Root" + raise Exception("\nERROR: Tree Can Have Only One Root") if wnd is not None and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") if text.find("\n") >= 0 and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") if ct_type < 0 or ct_type > 2: - raise "\nERROR: Item Type Should Be 0 (Normal), 1 (CheckBox) or 2 (RadioButton). " + raise Exception("\nERROR: Item Type Should Be 0 (Normal), 1 (CheckBox) or 2 (RadioButton). ") self._dirty = True # do this first so stuff below doesn't cause flicker @@ -3212,10 +3214,10 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Appends an item as a first child of parent.""" if wnd is not None and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") if text.find("\n") >= 0 and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") return self.DoInsertItem(parent, 0, text, ct_type, wnd, image, selImage, data) @@ -3224,10 +3226,10 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Auxiliary function to cope with the C++ hideous multifunction.""" if wnd is not None and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") if text.find("\n") >= 0 and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") parent = parentId @@ -3241,7 +3243,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): try: index = parent.GetChildren().index(idPrevious) except: - raise "ERROR: Previous Item In CustomTreeCtrl.InsertItem() Is Not A Sibling" + raise Exception("ERROR: Previous Item In CustomTreeCtrl.InsertItem() Is Not A Sibling") return self.DoInsertItem(parentId, index+1, text, ct_type, wnd, image, selImage, data) @@ -3250,10 +3252,10 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Auxiliary function to cope with the C++ hideous multifunction.""" if wnd is not None and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") if text.find("\n") >= 0 and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") parent = parentId @@ -3268,10 +3270,10 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Inserts an item after the given previous.""" if wnd is not None and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") if text.find("\n") >= 0 and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") if type(input) == type(1): return self.InsertItemByIndex(parentId, input, text, ct_type, wnd, image, selImage, data) @@ -3283,10 +3285,10 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Appends an item as a last child of its parent.""" if wnd is not None and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert Controls You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") if text.find("\n") >= 0 and not (self._windowStyle & TR_HAS_VARIABLE_ROW_HEIGHT): - raise "\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT" + raise Exception("\nERROR: In Order To Append/Insert A MultiLine Text You Have To Use The Style TR_HAS_VARIABLE_ROW_HEIGHT") parent = parentId @@ -3344,7 +3346,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Delete item children.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") self._dirty = True # do this first so stuff below doesn't cause flicker @@ -3356,7 +3358,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Delete an item.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") self._dirty = True # do this first so stuff below doesn't cause flicker @@ -3433,10 +3435,10 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """ if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") if self.HasFlag(TR_HIDE_ROOT) and item == self.GetRootItem(): - raise "\nERROR: Can't Expand An Hidden Root. " + raise Exception("\nERROR: Can't Expand An Hidden Root. ") if not item.HasPlus(): return @@ -3469,7 +3471,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Expands all the items.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") if not self.HasFlag(TR_HIDE_ROOT) or item != self.GetRootItem(): self.Expand(item) @@ -3490,10 +3492,10 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """ if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") if self.HasFlag(TR_HIDE_ROOT) and item == self.GetRootItem(): - raise "\nERROR: Can't Collapse An Hidden Root. " + raise Exception("\nERROR: Can't Collapse An Hidden Root. ") if not item.IsExpanded(): return @@ -3644,7 +3646,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Actually selects/unselects an item, sending a EVT_TREE_SEL_CHANGED event.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") self._select_me = None @@ -3725,7 +3727,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Selects/deselects an item.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") if select: @@ -3749,7 +3751,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): if item.IsSelected(): array.append(item) - if item.HasChildren(): + if item.HasChildren() and item.IsExpanded(): for child in item.GetChildren(): array = self.FillArray(child, array) @@ -3776,7 +3778,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Ensure that an item is visible in CustomTreeCtrl.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") # first expand all parent branches parent = item.GetParent() @@ -3860,7 +3862,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """ if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") children = item.GetChildren() @@ -4855,7 +4857,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): current = self.GetItemParent(current) if current: next = self.GetNextSibling(current) - if not self.IsEnabled(next): + if not next or not self.IsEnabled(next): next = None else: @@ -5025,7 +5027,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Gets the bounding rectangle of the item.""" if not item: - raise "\nERROR: Invalid Tree Item. " + raise Exception("\nERROR: Invalid Tree Item. ") i = item @@ -5130,7 +5132,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): underMouse = thisItem underMouseChanged = underMouse != self._underMouse - if underMouse and (flags & TREE_HITTEST_ONITEMBUTTON) and not event.LeftIsDown() and \ + if underMouse and (flags & TREE_HITTEST_ONITEM) and not event.LeftIsDown() and \ not self._isDragging and (not self._renameTimer or not self._renameTimer.IsRunning()): underMouse = underMouse else: @@ -5663,7 +5665,7 @@ class CustomTreeCtrl(wx.PyScrolledWindow): """Thaw CustomTreeCtrl.""" if self._freezeCount == 0: - raise "\nERROR: Thawing Unfrozen Tree Control?" + raise Exception("\nERROR: Thawing Unfrozen Tree Control?") self._freezeCount = self._freezeCount - 1