Пример #1
0
void undo_add_arrowhead(void)
{
    switch (last_object) {
      case O_POLYLINE:
	delete_linearrow(saved_objects.lines,
			 last_prev_point, last_selected_point);
	break;
      case O_SPLINE:
	delete_splinearrow(saved_objects.splines,
			   last_prev_point, last_selected_point);
	break;
      case O_ARC:
	delete_arcarrow(saved_objects.arcs, last_arcpointnum);
	break;
      default:
	return;
    }
    last_action = F_DELETE_ARROW_HEAD;
}
Пример #2
0
static void
delete_arrow_head(F_line *obj, int type, int x, int y, F_point *p, F_point *q)
{
    switch (type) {
    case O_POLYLINE:
	cur_l = (F_line *) obj;
	delete_linearrow(cur_l, p, q);
	break;
    case O_SPLINE:
	cur_s = (F_spline *) obj;
	delete_splinearrow(cur_s, p, q);
	break;
    case O_ARC:
	cur_a = (F_arc *) obj;
	/* dirty trick - arc point number is stored in p */
	delete_arcarrow(cur_a, (int) p);
	break;
    }
}