Index: trunk/src/change.c =================================================================== --- trunk/src/change.c (revision 9477) +++ trunk/src/change.c (revision 9478) @@ -163,7 +163,7 @@ NULL }; -static pcb_opfunc_t ChangeSquareFunctions = { +pcb_opfunc_t ChangeSquareFunctions = { NULL, NULL, NULL, @@ -214,7 +214,7 @@ NULL }; -static pcb_opfunc_t ChangeOctagonFunctions = { +pcb_opfunc_t ChangeOctagonFunctions = { NULL, NULL, NULL, @@ -252,7 +252,7 @@ NULL }; -static pcb_opfunc_t SetSquareFunctions = { +pcb_opfunc_t SetSquareFunctions = { NULL, NULL, NULL, @@ -286,7 +286,7 @@ NULL }; -static pcb_opfunc_t SetOctagonFunctions = { +pcb_opfunc_t SetOctagonFunctions = { NULL, NULL, NULL, @@ -303,7 +303,7 @@ pcb_subcop_set_octagon }; -static pcb_opfunc_t ClrSquareFunctions = { +pcb_opfunc_t ClrSquareFunctions = { NULL, NULL, NULL, @@ -337,7 +337,7 @@ NULL }; -static pcb_opfunc_t ClrOctagonFunctions = { +pcb_opfunc_t ClrOctagonFunctions = { NULL, NULL, NULL, Index: trunk/src/obj_subc.c =================================================================== --- trunk/src/obj_subc.c (revision 9477) +++ trunk/src/obj_subc.c (revision 9478) @@ -322,6 +322,8 @@ } extern pcb_opfunc_t MoveFunctions, Rotate90Functions, ChgFlagFunctions, ChangeSizeFunctions, ChangeClearSizeFunctions, Change1stSizeFunctions, Change2ndSizeFunctions; +extern pcb_opfunc_t ChangeOctagonFunctions, SetOctagonFunctions, ClrOctagonFunctions; +extern pcb_opfunc_t ChangeSquareFunctions, SetSquareFunctions, ClrSquareFunctions; void *pcb_subcop_move(pcb_opctx_t *ctx, pcb_subc_t *sc) { @@ -451,38 +453,38 @@ void *pcb_subcop_clear_octagon(pcb_opctx_t *ctx, pcb_subc_t *sc) { -#warning subc TODO - abort(); + pcb_subc_op(ctx->chgsize.pcb->Data, sc, &ClrOctagonFunctions, ctx); + return sc; } void *pcb_subcop_set_octagon(pcb_opctx_t *ctx, pcb_subc_t *sc) { -#warning subc TODO - abort(); + pcb_subc_op(ctx->chgsize.pcb->Data, sc, &SetOctagonFunctions, ctx); + return sc; } void *pcb_subcop_change_octagon(pcb_opctx_t *ctx, pcb_subc_t *sc) { -#warning subc TODO - abort(); + pcb_subc_op(ctx->chgsize.pcb->Data, sc, &ChangeOctagonFunctions, ctx); + return sc; } void *pcb_subcop_clear_square(pcb_opctx_t *ctx, pcb_subc_t *sc) { -#warning subc TODO - abort(); + pcb_subc_op(ctx->chgsize.pcb->Data, sc, &ClrSquareFunctions, ctx); + return sc; } void *pcb_subcop_set_square(pcb_opctx_t *ctx, pcb_subc_t *sc) { -#warning subc TODO - abort(); + pcb_subc_op(ctx->chgsize.pcb->Data, sc, &SetSquareFunctions, ctx); + return sc; } void *pcb_subcop_change_square(pcb_opctx_t *ctx, pcb_subc_t *sc) { -#warning subc TODO - abort(); + pcb_subc_op(ctx->chgsize.pcb->Data, sc, &ChangeSquareFunctions, ctx); + return sc; }