# codegen.py: code generator functions for spacers # $Id: codegen.py,v 1.9 2007/03/27 07:01:54 agriggio Exp $ # # Copyright (c) 2002-2007 Alberto Griggio # License: MIT (see license.txt) # THIS PROGRAM COMES WITH NO WARRANTY import common class PythonCodeGenerator: def get_code(self, spacer): prop = spacer.properties width = prop.get('width', '0') height = prop.get('height', '0') # we must use the hack in pygen.add_sizeritem (see py_codegen.py) spacer.name = '%s, %s' % (width, height) return [], [], [] # end of class PythonCodeGenerator class CppCodeGenerator: def get_code(self, spacer): """\ generates the C++ code for a spacer """ prop = spacer.properties width = prop.get('width', '0') height = prop.get('height', '0') # we must use the hack in cppgen.add_sizeritem (see cpp_codegen.py) spacer.name = '%s, %s' % (width, height) return [], [], [], [] # end of class CppCodeGenerator def initialize(): common.class_names['EditSpacer'] = 'spacer' # python code generation functions pygen = common.code_writers.get('python') if pygen: pygen.add_widget_handler('spacer', PythonCodeGenerator()) cppgen = common.code_writers.get('C++') if cppgen: cppgen.add_widget_handler('spacer', CppCodeGenerator())