diff --git a/redo/unix/container.c b/redo/unix/container.c index 41ee6956..0ab82afb 100644 --- a/redo/unix/container.c +++ b/redo/unix/container.c @@ -180,6 +180,7 @@ uiControl *newHolder(void) h = (struct holder *) uiNewControl(holderType()); h->cw = containerWidget(uiMakeContainer(uiControl(h))); + h->cw->c = NULL; // but don't make it manage ourselves uiControl(h)->Handle = holderHandle; diff --git a/redo/unix/radiobuttons.c b/redo/unix/radiobuttons.c index 017f4ed2..5b698461 100644 --- a/redo/unix/radiobuttons.c +++ b/redo/unix/radiobuttons.c @@ -11,9 +11,12 @@ struct radiobuttons { uiDefineControlType(uiRadioButtons, uiTypeRadioButtons, struct radiobuttons) +// TODO note that the handle of a uiRadioButtons is undefined static uintptr_t radiobuttonsHandle(uiControl *c) { - return 0; + struct radiobuttons *r = (struct radiobuttons *) c; + + return (uintptr_t) (r->boxWidget); } static void radiobuttonsAppend(uiRadioButtons *rr, const char *text) diff --git a/redo/unix/spinbox.c b/redo/unix/spinbox.c index 078335e5..774630f8 100644 --- a/redo/unix/spinbox.c +++ b/redo/unix/spinbox.c @@ -16,7 +16,7 @@ static uintptr_t spinboxHandle(uiControl *c) { struct spinbox *s = (struct spinbox *) c; - return PUT_CODE_HERE; + return (uintptr_t) (s->widget); } static void defaultOnChanged(uiSpinbox *s, void *data)