How NOT to Write a Non-Modal Application

What all this leads up to is that the following code fragment, which works correctly for modal forms, cannot work for non-modal forms.

int user_func(fmp)

DFORMPTR fmp;

{

    DFORMPTR NonModalFmp;

    DATA form_data;

    DLIBPTR libp;

    int ReturnVal = 0;



    libp = dl_open("my_lib.vvd");

    NonModalFmp = dl_fmget("my_form", &form_data, NULLP, NULLP, libp);

    fm_up(NonModalFmp);

    ReturnVal = fm_rd(0, NonModalFmp);

    if (ReturnVal == AC_EXIT)

        SaveDataToDatabase(form_data);

    fm_dn(NonModalFmp);

    fm_free(NonModalFmp);

    return(TRUE);

}

This code fragment, small as it is, contains several serious non-modal errors:


Home Contents Previous Next