Index: trunk/src_plugins/order/order.h =================================================================== --- trunk/src_plugins/order/order.h (revision 36899) +++ trunk/src_plugins/order/order.h (revision 36900) @@ -55,6 +55,7 @@ void (*free_fields)(pcb_order_imp_t *imp, order_ctx_t *octx); pcb_order_field_t *(*wid2field)(pcb_order_imp_t *imp, order_ctx_t *octx, int wid); void (*populate_dad)(pcb_order_imp_t *imp, order_ctx_t *octx); + void (*dad_inited)(pcb_order_imp_t *imp, order_ctx_t *octx); /* optional: called right after the dialog box is open */ }; extern vtp0_t pcb_order_imps; /* of (pcb_order_imp_t *) items */ Index: trunk/src_plugins/order/order_dlg.c =================================================================== --- trunk/src_plugins/order/order_dlg.c (revision 36899) +++ trunk/src_plugins/order/order_dlg.c (revision 36900) @@ -55,6 +55,13 @@ order_ctx.active = 1; RND_DAD_NEW("order", order_ctx.dlg, "Order PCB", &order_ctx, rnd_false, order_close_cb); + + for(n = 0; n < pcb_order_imps.used; n++) { + imp = pcb_order_imps.array[n]; + if (imp->dad_inited != NULL) + imp->dad_inited(pcb_order_imps.array[n], &order_ctx); + } + return 0; }