diff --git a/tools/generator.cc b/tools/generator.cc index b03c907f6..82f50c660 100644 --- a/tools/generator.cc +++ b/tools/generator.cc @@ -259,6 +259,24 @@ void JavascriptGenerator::writeEnum(Class *klass){ mOutfile<getName() << ".get" << enum_name << "Text = function(value) {" << endl; + mOutfile << "\tswitch (value) {" << endl; + for (it = members.begin(); it != members.end(); it++) { + ConstField *cf = *it; + mOutfile << "\tcase " << mCurProj->getName() << "." << enum_name << "." << cf->getName().substr(prefix_size, string::npos) << ":" << endl; + mOutfile << "\t\treturn \"" << cf->getName().substr(prefix_size, string::npos) << "\";" << endl; + } + mOutfile << "\tdefault:" << endl; + mOutfile << "\t\treturn \"?\";" << endl; + mOutfile << "\t}" << endl; + mOutfile << "};" << endl; + mOutfile.close(); }