+}
+
+
+WRegion *framed_handler(WWindow *par,
+ const WFitParams *fp,
+ void *ap_)
+{
+ AP *ap=(AP*)ap_;
+ WMPlexAttachParams mp=MPLEXATTACHPARAMS_INIT;
+ WFramedParam *param=ap->param;
+ WFrame *frame;
+ WRegion *reg;
+
+ frame=create_frame(par, fp, param->mode);
+
+ if(frame==NULL)
+ return NULL;
+
+ if(fp->mode&(REGION_FIT_BOUNDS|REGION_FIT_WHATEVER))
+ mp.flags|=MPLEX_ATTACH_WHATEVER;
+
+ reg=mplex_do_attach(&frame->mplex, &mp, ap->data);
+
+ ap->reg_ret=reg;
+
+ if(reg==NULL){
+ destroy_obj((Obj*)frame);
+ return NULL;
+ }
+
+ frame_adjust_to_initial(frame, fp, param, reg);