The afterEvaluate hack is the only viable trick I can think of. If the example you posted is close to what you are trying to do I see no reason for the afterEvaluate to not work.
It is too bad you cannot do the conversion. I have done such conversions on my own and 3rd party open source plugins successfully and I can attest that it is a much better model for making plugins.