diff options
Diffstat (limited to 'src/res2cc_cmd.py')
-rwxr-xr-x | src/res2cc_cmd.py | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/res2cc_cmd.py b/src/res2cc_cmd.py index 86d999d..f6321f6 100755 --- a/src/res2cc_cmd.py +++ b/src/res2cc_cmd.py @@ -58,6 +58,7 @@ class File(object): if ext=='.lum': return LumFile(directory,subdir,fname) if ext=='.luma': return LumaFile(directory,subdir,fname) if ext=='.css': return CSSFile(directory,subdir,fname) + if ext=='.svg': return SVGFile(directory,subdir,fname) return VerbatimFile(directory,subdir,fname) class VerbatimFile(File): @@ -76,6 +77,14 @@ class CSSFile(File): def writeDirEntry(self,outputFile): print(" { \"%s\", \"%s\", %s_data, %s_len, Resource::CSS }," % (self.subdir,self.fileName,self.bareName,self.bareName), file=outputFile) +class SVGFile(File): + def __init__(self,directory,subdir,fileName): + File.__init__(self,directory,subdir,fileName,"r") + def writeContents(self,outputFile): + self.writeBytes(self.inputFile.read(),outputFile) + def writeDirEntry(self,outputFile): + print(" { \"%s\", \"%s\", %s_data, %s_len, Resource::SVG }," % (self.subdir,self.fileName,self.bareName,self.bareName), file=outputFile) + class LumFile(File): def __init__(self,directory,subdir,fileName): File.__init__(self,directory,subdir,fileName,"r") @@ -107,13 +116,10 @@ def main(): print("#include \"resourcemgr.h\"\n",file=outputFile) for f in files: f.writeContents(outputFile) - print("static Resource resourceDir[] =",file=outputFile) - print("{",file=outputFile) + print("void initResources() { ResourceMgr::instance().registerResources({",file=outputFile) for f in files: f.writeDirEntry(outputFile) - print("};",file=outputFile) - print("static int resourceDir_len = %s;" % len(files), file=outputFile) - print("void initResources() { ResourceMgr::instance().registerResources(resourceDir,resourceDir_len); }",file=outputFile) + print("});}",file=outputFile) if __name__ == '__main__': main() |