Sunday, June 30, 2013

Customize Caller Args

From the caller:
    Args args;
    Object formRun;
    args = new Args();
    args.name(formStr(BudgetModelLookup));
    args.caller(_ctrl);
    formRun = classfactory.formRunClass(args);
    formRun.init();
    _ctrl.performFormLookup(formRun);

With the pre-built form BudgetModelLookup
the caller's formRun.init() invokes callee's init method, as the callee is a form itself.
 public void init()
{
    FormStringControl callingControl;
    callingControl = SysTableLookup::getCallerStringControl(
        this.args());
    super();
    budgetModelTree = BudgetModelTree::construct(
        ModelTree,
        callingControl.text());
    budgetModelTree.buildTree();
}
The callee contruct and build the UI. After the callee's init, the process flow goes back to the caller's code, which performs lookup
 _ctrl.performFormLookup(formRun);

No comments:

Post a Comment