Create function

void
sun_awt_motif_MComboBoxPeer_create(
        struct Hsun_awt_motif_MComboBoxPeer *this,
        struct Hsun_awt_motif_MComponentPeer *parent)
{
    int                         argc = 0;
    Arg                         args[40];
    struct ComponentData        *wdata;
    struct ComponentData        *cdata;

    AWT_LOCK();
    if (parent == 0 || unhand(parent)->pData == 0) {
        SignalError(0, JAVAPKG "NullPointerException", 0);
        AWT_UNLOCK();
        return;
    }

    wdata = (struct ComponentData *)unhand(parent)->pData;
    cdata = (struct ComponentData *)sysMalloc(sizeof(struct ComponentData));
    SET_PDATA(this, sdata);
    if (sdata == 0) {
        SignalError(0, JAVAPKG "OutOfMemoryError", 0);
        AWT_UNLOCK();
        return;
    }
    cdata->widget = XmCreateComboBox(wdata->widget,
                                     "combo_box",
                                     args,
                                     argc);
    XtSetMappedWhenManaged(cdata->widget, False);
    XtAddCallback(cdata->widget,
                  XmNactivateCallback,
                  activateCB,
                  (XtPointer)this);
    XtManageChild(cdata->widget);
    AWT_UNLOCK();
}


Slide 64