ProtoObjs.py 1017 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. """
  2. Palette for Prototyping
  3. """
  4. import os
  5. import imp
  6. class ProtoObjs:
  7. def __init__(self, name):
  8. self.dirname = os.path.dirname(__file__)
  9. self.name = name;
  10. self.filename = "/%s.py"%(name)
  11. self.data = {}
  12. def populate(self):
  13. moduleName = self.name
  14. try:
  15. file, pathname, description = imp.find_module(moduleName, [self.dirname])
  16. module = imp.load_module(moduleName, file, pathname, description)
  17. self.data = module.protoData
  18. except:
  19. print("%s doesn't exist"%(self.name))
  20. return
  21. def saveProtoData(self, f):
  22. if not f:
  23. return
  24. for key in self.data.keys():
  25. f.write("\t'%s':'%s',\n"%(key, self.data[key]))
  26. def saveToFile(self):
  27. try:
  28. f = open(self.dirname + self.filename, 'w')
  29. f.write("protoData = {\n")
  30. self.saveProtoData(f)
  31. f.write("}\n")
  32. f.close()
  33. except:
  34. pass