Added a list to keep object palette order

This commit is contained in:
Gyedo Jeon 2010-03-02 22:31:00 +00:00
parent 53274c354a
commit 88552b956c
2 changed files with 5 additions and 4 deletions

View File

@ -32,6 +32,7 @@ class ObjectPaletteBase:
self.rootName = '_root'
self.data = {}
self.dataStruct = {}
self.dataKeys = []
self.populate()
def insertItem(self, item, parentName):
@ -49,6 +50,7 @@ class ObjectPaletteBase:
self.dataStruct[item.name] = parentName
self.data[item.name] = item
self.dataKeys.append(item.name)
def add(self, item, parentName = None):
if type(item) == str:

View File

@ -13,7 +13,7 @@ class ObjectPaletteUI(wx.Panel):
self.palette = self.editor.objectPalette
self.tree = wx.TreeCtrl(self)
root = self.tree.AddRoot('Objects')
self.addTreeNodes(root, self.palette.dataStruct)
self.addTreeNodes(root, self.palette.dataStruct, self.palette.dataKeys)
self.SortTreeNodes(root)
sizer = wx.BoxSizer(wx.VERTICAL)
@ -63,9 +63,8 @@ class ObjectPaletteUI(wx.Panel):
return newItem
def addTreeNodes(self, parentItem, items):
#import pdb;set_trace()
for key in items.keys():
def addTreeNodes(self, parentItem, items, itemKeys):
for key in itemKeys:
item = self.traverse(parentItem, key)
if item is None:
newItem = self.addTreeNode(key, parentItem, items)