PepperExport/src/plug-ins/pepperExport.py

67 lines
1.8 KiB
Python

import sys
import maya.OpenMayaMPx as OpenMayaMPx
import pepper.exporter as exporter
import pepper.importer as importer
reload(exporter)
reload(importer)
kPluginTranslatorTypeName = "pepperExport"
class PepperTranslater(OpenMayaMPx.MPxFileTranslator):
def __init__(self):
OpenMayaMPx.MPxFileTranslator.__init__(self)
def haveReadMethod(self):
return True
def haveWriteMethod(self):
return True
def filter(self):
return "*.xar"
def defaultExtension(self):
return "xar"
def writer(self, fileObject, optionString, accessMode):
try:
fullName = fileObject.fullName()
exporter.xar_export(fullName)
except:
sys.stderr.write("Failed to write file information\n")
raise
def reader(self, fileObject, optionString, accessMode):
try:
fullName = fileObject.fullName()
importer.xar_import(fullName)
except:
sys.stderr.write("Failed to write file information\n")
raise
def translatorCreator():
return OpenMayaMPx.asMPxPtr(PepperTranslater())
# initialize the script plug-in
def initializePlugin(mobject):
mplugin = OpenMayaMPx.MFnPlugin(mobject, 'Indigo', '1.0', 'Any')
try:
mplugin.registerFileTranslator(kPluginTranslatorTypeName, None, translatorCreator)
except:
sys.stderr.write("Failed to register translator: %s" % kPluginTranslatorTypeName)
raise
# uninitialize the script plug-in
def uninitializePlugin(mobject):
mplugin = OpenMayaMPx.MFnPlugin(mobject)
try:
mplugin.deregisterFileTranslator(kPluginTranslatorTypeName)
except:
sys.stderr.write("Failed to deregister translator: %s" % kPluginTranslatorTypeName)
raise