diff --git a/Fltk/Callbacks.cpp b/Fltk/Callbacks.cpp index 4e4094bc7a557a04807903e0e133d53faa8a8531..d974fa54fed6ef9143d402ca0ae303a40ab16aa6 100644 --- a/Fltk/Callbacks.cpp +++ b/Fltk/Callbacks.cpp @@ -1,4 +1,4 @@ -// $Id: Callbacks.cpp,v 1.79 2001-08-13 16:30:22 geuzaine Exp $ +// $Id: Callbacks.cpp,v 1.80 2001-08-17 08:36:33 geuzaine Exp $ #include <sys/types.h> #include <signal.h> @@ -598,7 +598,7 @@ void geometry_elementary_add_new_point_cb(CALLBACK_ARGS){ WID->create_geometry_context_window(1); } -static void _new_multiline_spline(int dim){ +static void _new_multiline(int type){ Vertex *v; Curve *c; Surface *s; @@ -619,9 +619,11 @@ static void _new_multiline_spline(int dim){ } if (ib == -1){ /* 'e' */ if(n >= 2) { - switch(dim){ + switch(type){ case 0 : add_multline(n,p,CTX.filename); break; case 1 : add_spline(n,p,CTX.filename); break; + case 2 : add_bspline(n,p,CTX.filename); break; + case 3 : add_bezier(n,p,CTX.filename); break; } } n=0; @@ -642,7 +644,7 @@ void geometry_elementary_add_new_line_cb(CALLBACK_ARGS){ // Disallow multiline selection at the moment, since multilines // dont't work so well... // - //_new_multiline_spline(0); + //_new_multiline(0); // Vertex *v; Curve *c; @@ -679,7 +681,10 @@ void geometry_elementary_add_new_line_cb(CALLBACK_ARGS){ Msg(STATUS3N,"Ready"); } void geometry_elementary_add_new_spline_cb(CALLBACK_ARGS){ - _new_multiline_spline(1); + _new_multiline(1); +} +void geometry_elementary_add_new_bspline_cb(CALLBACK_ARGS){ + _new_multiline(2); } void geometry_elementary_add_new_circle_cb(CALLBACK_ARGS){ Vertex *v; diff --git a/Fltk/Callbacks.h b/Fltk/Callbacks.h index 791493badd344f52b913bc907281cbd76e5cdd75..d679f50dd189cab18db372ab66cbc41a22c7477c 100644 --- a/Fltk/Callbacks.h +++ b/Fltk/Callbacks.h @@ -106,6 +106,7 @@ void geometry_elementary_add_new_parameter_cb(CALLBACK_ARGS) ; void geometry_elementary_add_new_point_cb(CALLBACK_ARGS) ; void geometry_elementary_add_new_line_cb(CALLBACK_ARGS) ; void geometry_elementary_add_new_spline_cb(CALLBACK_ARGS) ; +void geometry_elementary_add_new_bspline_cb(CALLBACK_ARGS) ; void geometry_elementary_add_new_circle_cb(CALLBACK_ARGS) ; void geometry_elementary_add_new_ellipsis_cb(CALLBACK_ARGS) ; void geometry_elementary_add_new_planesurface_cb(CALLBACK_ARGS) ; diff --git a/Fltk/GUI.cpp b/Fltk/GUI.cpp index 9f13c26af91a59847e60dc936cdc0b638f24b546..834bb9fb32d49fa392529c0d6392a49ad514ef92 100644 --- a/Fltk/GUI.cpp +++ b/Fltk/GUI.cpp @@ -1,4 +1,4 @@ -// $Id: GUI.cpp,v 1.107 2001-08-12 14:23:36 geuzaine Exp $ +// $Id: GUI.cpp,v 1.108 2001-08-17 08:36:33 geuzaine Exp $ // To make the interface as visually consistent as possible, please: // - use the BH, BW, WB, IW values for button heights/widths, window borders, etc. @@ -121,6 +121,7 @@ Context_Item menu_geometry[] = { "Point", (Fl_Callback *)geometry_elementary_add_new_point_cb } , { "Line", (Fl_Callback *)geometry_elementary_add_new_line_cb } , { "Spline", (Fl_Callback *)geometry_elementary_add_new_spline_cb } , + { "B-Spline", (Fl_Callback *)geometry_elementary_add_new_bspline_cb } , { "Circle", (Fl_Callback *)geometry_elementary_add_new_circle_cb } , { "Ellipsis", (Fl_Callback *)geometry_elementary_add_new_ellipsis_cb } , { "Plane Surface", (Fl_Callback *)geometry_elementary_add_new_planesurface_cb } ,