| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- import os
- import imp
- from ObjectMgr import ObjectMgr
- from ObjectHandler import ObjectHandler
- from ObjectPalette import ObjectPalette
- from ProtoPalette import ProtoPalette
- import ObjectGlobals as OG
- class FileMgr:
- """ To handle data file """
-
- def __init__(self, editor=None):
- self.editor = editor
- def saveToFile(self, fileName):
- try:
- f = open(fileName, 'w')
- f.write("from pandac.PandaModules import *\n")
- f.write("\nif hasattr(base, 'le'):\n")
- f.write(" objectMgr = base.le.objectMgr\n")
- f.write(" ui = base.le.ui\n")
- f.write(" ui.sceneGraphUI.reset()\n\n")
- f.write("else:\n")
- f.write(" objectMgr = base.objectMgr\n")
- f.write("# temporary place holder for nodepath\n")
- f.write("objects = {}\n")
- saveData = self.editor.objectMgr.getSaveData()
- for data in saveData:
- f.write(data)
- f.write('\n')
- saveDataLayers = self.editor.ui.layerEditorUI.getSaveData()
- for data in saveDataLayers:
- f.write(data)
- f.write('\n')
- f.close()
- except IOError:
- print 'failed to save %s'%fileName
- if f:
- f.close()
- def loadFromFile(self, fileName):
- dirname, moduleName = os.path.split(fileName)
- if moduleName.endswith('.py'):
- moduleName = moduleName[:-3]
- file, pathname, description = imp.find_module(moduleName, [dirname])
- try:
- module = imp.load_module(moduleName, file, pathname, description)
- except:
- print 'failed to load %s'%fileName
|