ソースを参照

Added a list to keep object palette order

Gyedo Jeon 16 年 前
コミット
88552b956c

+ 2 - 0
direct/src/leveleditor/ObjectPaletteBase.py

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

+ 3 - 4
direct/src/leveleditor/ObjectPaletteUI.py

@@ -13,7 +13,7 @@ class ObjectPaletteUI(wx.Panel):
         self.palette = self.editor.objectPalette
         self.palette = self.editor.objectPalette
         self.tree = wx.TreeCtrl(self)
         self.tree = wx.TreeCtrl(self)
         root = self.tree.AddRoot('Objects')
         root = self.tree.AddRoot('Objects')
-        self.addTreeNodes(root, self.palette.dataStruct)
+        self.addTreeNodes(root, self.palette.dataStruct, self.palette.dataKeys)
         self.SortTreeNodes(root)
         self.SortTreeNodes(root)
 
 
         sizer = wx.BoxSizer(wx.VERTICAL)
         sizer = wx.BoxSizer(wx.VERTICAL)
@@ -63,9 +63,8 @@ class ObjectPaletteUI(wx.Panel):
 
 
         return newItem
         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)
             item = self.traverse(parentItem, key)
             if item is None:
             if item is None:
                newItem = self.addTreeNode(key, parentItem, items)
                newItem = self.addTreeNode(key, parentItem, items)