summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorColin Noga <Tempus@chronometry.ca>2012-01-03 02:39:26 -0600
committerColin Noga <Tempus@chronometry.ca>2012-01-03 02:39:26 -0600
commitd686ee1250bf148e600830642ed44f7d85357dd3 (patch)
tree3574e3563b47e3abd391705cdd3ebc2563dab3cc
parent11806a759d206f70d2d83c9064498da6c124fab3 (diff)
downloadkoopatlas-d686ee1250bf148e600830642ed44f7d85357dd3.tar.gz
koopatlas-d686ee1250bf148e600830642ed44f7d85357dd3.zip
Fixed up doodad animation saving and propagation
-rw-r--r--src/editorui/doodads.py30
-rw-r--r--src/mapdata.py2
2 files changed, 30 insertions, 2 deletions
diff --git a/src/editorui/doodads.py b/src/editorui/doodads.py
index b916b27..07eca43 100644
--- a/src/editorui/doodads.py
+++ b/src/editorui/doodads.py
@@ -97,10 +97,11 @@ class KPEditorDoodad(KPEditorItem):
editor.setGeometry(option.rect)
- def __init__(self, doodadRef):
+ def __init__(self, doodadRef, parent):
QtGui.QWidget.__init__(self)
self._doodadRef = doodadRef
+ self.parent = parent
# Setup Layout
BottomLayout = QtGui.QGridLayout()
@@ -158,6 +159,27 @@ class KPEditorDoodad(KPEditorItem):
# loadbutton.released.connect(KP.mainWindow.loadAnimPresets)
# clearbutton.released.connect(KP.mainWindow.clearAnimPresets)
+ self.setupAnms()
+
+
+ def setupAnms(self):
+ doodad = self._doodadRef()
+
+ for row in doodad.animations:
+
+ itemA = QtGui.QStandardItem()
+ itemB = QtGui.QStandardItem()
+ itemC = QtGui.QStandardItem()
+
+ itemA.setData(row[2], QtCore.Qt.EditRole)
+ itemB.setData(row[4], QtCore.Qt.EditRole)
+ itemC.setData(row[5], QtCore.Qt.EditRole)
+
+ self.model.appendRow([QtGui.QStandardItem(row[0]), QtGui.QStandardItem(row[1]),
+ itemA, QtGui.QStandardItem(row[3]), itemB, itemC])
+
+ self.update()
+
def sizeHint(self):
return QtCore.QSize(591,300)
@@ -212,6 +234,7 @@ class KPEditorDoodad(KPEditorItem):
self.model.appendRow([a,b,c,d,e,f])
+ self.parent.resolveAnmList()
def addToPreset(self):
from dialogs import getTextDialog
@@ -263,7 +286,7 @@ class KPEditorDoodad(KPEditorItem):
self.setText("Animate")
self.menu = QtGui.QMenu(self)
- self.menuWidget = self.AnmOptionsWidget(doodadRef)
+ self.menuWidget = self.AnmOptionsWidget(doodadRef, self)
self.menuWidgetAction = QtGui.QWidgetAction(self)
self.menuWidgetAction.setDefaultWidget(self.menuWidget)
self.menu.addAction(self.menuWidgetAction)
@@ -291,6 +314,8 @@ class KPEditorDoodad(KPEditorItem):
model = self.menuWidget.model
rows = model.rowCount()
+ print 'Resolving'
+
for x in xrange(rows):
rowList = []
@@ -306,6 +331,7 @@ class KPEditorDoodad(KPEditorItem):
anmList.append(rowList)
+ print anmList
doodad.animations = anmList
doodad.setupAnimations()
diff --git a/src/mapdata.py b/src/mapdata.py
index b0d3f0f..0025550 100644
--- a/src/mapdata.py
+++ b/src/mapdata.py
@@ -268,6 +268,8 @@ class KPDoodad(object):
def _dump(self, mapObj, dest):
dest['sourceRef'] = mapObj.refDoodad(self.source)
+ print self.animations
+ print mapObj, dest
def _load(self, mapObj, src):
self.source = mapObj.derefDoodad(src['sourceRef'])