+static void macctrl_groupbox(struct macctrls *mcs, WindowPtr window,
+ struct mac_layoutstate *curstate,
+ union control *ctrl)
+{
+ union macctrl *mc = snew (union macctrl);
+ Str255 ptitle;
+ Rect r;
+
+ r.top = curstate->boxpos.v;
+ r.left = curstate->boxpos.h;
+ r.bottom = curstate->pos.v;
+ r.right = curstate->boxpos.h + curstate->width;
+
+ mc->generic.type = MACCTRL_GROUPBOX;
+ mc->generic.privdata = NULL;
+ mc->generic.ctrl = ctrl;
+ mc->generic.ctrl->generic.handler = NULL;
+
+ if (curstate->boxname)
+ c2pstrcpy(ptitle, curstate->boxname);
+ else
+ c2pstrcpy(ptitle, "");
+ if (mac_gestalts.apprvers >= 0x100) { /* Appearance Manager */
+ mc->groupbox.tbctrl = NewControl(window, &r, ptitle, FALSE, 0, 0, 1,
+ kControlGroupBoxTextTitleProc, (long)mc);
+ } else {
+ mc->groupbox.tbctrl = NewControl(window, &r, ptitle, FALSE, 0, 0, 1,
+ SYS7_GROUPBOX_PROC, (long)mc);
+ }
+ add234(mcs->byctrl, mc);
+ mc->generic.next = mcs->panels[curstate->panelnum];
+ mcs->panels[curstate->panelnum] = mc;
+}