In jquery.jmesa.js, this method is exists:
onInvokeAction : function (id, action) {
var tableFacade = this.getTableFacade(id);
var f = window[tableFacade.onInvokeAction];
if ($.isFunction(f) !== true) {
throw tableFacade.onInvokeAction + ' is not a global
function!';
} else {
f(id, action);
}
},
Calling this method should invoke whatever invoke action is set on the
table facade. There is also a version for exports. If we change the
renders to call this method instead of the global method directly, we
can avoid the trouble of getting those settings down to the view
classes. That would make Josh's example above work properly.
Another solution could be to make the Preferences object writable, so
that after the table facade is instantiated, there could be methods to
override preferences for individual tables at run time. Seems easy to
do with a decorator (only one method to implement on the Preferences
interface). Actually Josh, the more I think about it that might be
your easiest solution in the short term.