Revision: 76349 http://sourceforge.net/p/brlcad/code/76349 Author: starseeker Date: 2020-07-15 20:17:40 +0000 (Wed, 15 Jul 2020) Log Message: ----------- Separate out the commands that have a libged function from those that do not.
Modified Paths: -------------- brlcad/trunk/src/libtclcad/tclcad_obj.c Modified: brlcad/trunk/src/libtclcad/tclcad_obj.c =================================================================== --- brlcad/trunk/src/libtclcad/tclcad_obj.c 2020-07-15 11:09:35 UTC (rev 76348) +++ brlcad/trunk/src/libtclcad/tclcad_obj.c 2020-07-15 20:17:40 UTC (rev 76349) @@ -548,8 +548,7 @@ ged_func_ptr to_func; }; - -static struct to_cmdtab to_cmds[] = { +static struct to_cmdtab ged_cmds[] = { {"3ptarb", (char *)0, TO_UNLIMITED, to_more_args_func, ged_3ptarb}, {"adc", "args", 7, to_view_func, ged_adc}, {"adjust", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_adjust}, @@ -562,12 +561,8 @@ {"arced", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_arced}, {"arot", "x y z angle", 6, to_view_func_plus, ged_arot}, {"attr", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_attr}, - {"autoview", "vname", TO_UNLIMITED, to_autoview, GED_FUNC_PTR_NULL}, {"bb", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bb}, {"bev", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bev}, - {"base2local", (char *)0, TO_UNLIMITED, to_base2local, GED_FUNC_PTR_NULL}, - {"bg", "[r g b]", TO_UNLIMITED, to_bg, GED_FUNC_PTR_NULL}, - {"blast", (char *)0, TO_UNLIMITED, to_blast, GED_FUNC_PTR_NULL}, {"bo", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bo}, {"bot", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bot}, {"bot_condense", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bot_condense}, @@ -575,8 +570,6 @@ {"bot_dump", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bot_dump}, {"bot_face_fuse", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bot_face_fuse}, {"bot_face_sort", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bot_face_sort}, - {"bot_edge_split", "bot face", TO_UNLIMITED, to_bot_edge_split, GED_FUNC_PTR_NULL}, - {"bot_face_split", "bot face", TO_UNLIMITED, to_bot_face_split, GED_FUNC_PTR_NULL}, {"bot_flip", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bot_flip}, {"bot_fuse", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bot_fuse}, {"bot_merge", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bot_merge}, @@ -584,7 +577,6 @@ {"bot_split", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bot_split}, {"bot_sync", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bot_sync}, {"bot_vertex_fuse", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_bot_vertex_fuse}, - {"bounds", "[\"minX maxX minY maxY minZ maxZ\"]", TO_UNLIMITED, to_bounds, GED_FUNC_PTR_NULL}, {"brep", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_brep}, {"c", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_comb_std}, {"cat", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_cat}, @@ -597,26 +589,11 @@ {"comb", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_comb}, {"comb_color", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_comb_color}, {"combmem", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_combmem}, - {"configure", "vname", TO_UNLIMITED, to_configure, GED_FUNC_PTR_NULL}, - {"constrain_rmode", "x|y|z x y", TO_UNLIMITED, to_constrain_rmode, GED_FUNC_PTR_NULL}, - {"constrain_tmode", "x|y|z x y", TO_UNLIMITED, to_constrain_tmode, GED_FUNC_PTR_NULL}, {"constraint", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_constraint}, {"copyeval", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_copyeval}, {"copymat", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_copymat}, - {"cp", "[-f] from to", TO_UNLIMITED, to_copy, GED_FUNC_PTR_NULL}, {"cpi", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_cpi}, {"d", (char *)0, TO_UNLIMITED, to_pass_through_and_refresh_func, ged_erase}, - {"data_arrows", "???", TO_UNLIMITED, to_data_arrows, GED_FUNC_PTR_NULL}, - {"data_axes", "???", TO_UNLIMITED, to_data_axes, GED_FUNC_PTR_NULL}, - {"data_labels", "???", TO_UNLIMITED, to_data_labels, GED_FUNC_PTR_NULL}, - {"data_lines", "???", TO_UNLIMITED, to_data_lines, GED_FUNC_PTR_NULL}, - {"data_polygons", "???", TO_UNLIMITED, to_data_polygons, GED_FUNC_PTR_NULL}, - {"data_move", "???", TO_UNLIMITED, to_data_move, GED_FUNC_PTR_NULL}, - {"data_move_object_mode", "x y", TO_UNLIMITED, to_data_move_object_mode, GED_FUNC_PTR_NULL}, - {"data_move_point_mode", "x y", TO_UNLIMITED, to_data_move_point_mode, GED_FUNC_PTR_NULL}, - {"data_pick", "???", TO_UNLIMITED, to_data_pick, GED_FUNC_PTR_NULL}, - {"data_scale_mode", "x y", TO_UNLIMITED, to_data_scale_mode, GED_FUNC_PTR_NULL}, - {"data_vZ", "[z]", TO_UNLIMITED, to_data_vZ, GED_FUNC_PTR_NULL}, {"dbconcat", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_concat}, {"dbfind", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_find}, {"dbip", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_dbip}, @@ -630,9 +607,7 @@ {"delay", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_delay}, {"metaball_delete_pnt", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_metaball_delete_pnt}, {"pipe_delete_pnt", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_pipe_delete_pnt}, - {"delete_view", "vname", TO_UNLIMITED, to_delete_view, GED_FUNC_PTR_NULL}, {"dir2ae", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_dir2ae}, - {"dlist_on", "[0|1]", TO_UNLIMITED, to_dlist_on, GED_FUNC_PTR_NULL}, {"draw", (char *)0, TO_UNLIMITED, to_autoview_func, ged_draw}, {"dump", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_dump}, {"dup", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_dup}, @@ -654,7 +629,6 @@ {"eye_pos", "[x y z]", 5, to_view_func_plus, ged_eye_pos}, {"eye_pt", "[x y z]", 5, to_view_func_plus, ged_eye}, {"exists", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_exists}, - {"faceplate", "center_dot|prim_labels|view_params|view_scale color|draw [val(s)]", TO_UNLIMITED, to_faceplate, GED_FUNC_PTR_NULL}, {"facetize", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_facetize}, {"voxelize", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_voxelize}, {"fb2pix", "[-h -i -c] [-s squaresize] [-w width] [-n height] [file.pix]", TO_UNLIMITED, to_view_func, ged_fb2pix}, @@ -663,8 +637,6 @@ {"find_bot_edge", "bot vx vy", 5, to_view_func, ged_find_bot_edge_nearest_pnt}, {"find_bot_pnt", "bot vx vy", 5, to_view_func, ged_find_bot_pnt_nearest_pnt}, {"find_pipe_pnt", "pipe x y z", 6, to_view_func, ged_find_pipe_pnt_nearest_pnt}, - {"fit_png_image", "image_file_in req_width req_height scale image_file_out", 6, to_fit_png_image, GED_FUNC_PTR_NULL}, - {"fontsize", "[fontsize]", 3, to_fontsize, GED_FUNC_PTR_NULL}, {"form", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_form}, {"fracture", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_fracture}, {"g", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_group}, @@ -674,7 +646,6 @@ {"get_bot_edges", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_get_bot_edges}, {"get_comb", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_get_comb}, {"get_eyemodel", "vname", 2, to_view_func, ged_get_eyemodel}, - {"get_prev_mouse", "vname", TO_UNLIMITED, to_get_prev_mouse, GED_FUNC_PTR_NULL}, {"get_type", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_get_type}, {"glob", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_glob}, {"gqa", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_gqa}, @@ -682,19 +653,15 @@ {"grid", "args", 6, to_view_func, ged_grid}, {"grid2model_lu", "x y", 4, to_view_func_less, ged_grid2model_lu}, {"grid2view_lu", "x y", 4, to_view_func_less, ged_grid2view_lu}, - {"handle_expose", "vname count", TO_UNLIMITED, to_handle_expose, GED_FUNC_PTR_NULL}, {"heal", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_heal}, {"hide", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_hide}, - {"hide_view", "vname [0|1]", 3, to_hide_view, GED_FUNC_PTR_NULL}, {"how", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_how}, {"human", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_human}, {"i", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_instance}, {"idents", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_tables}, - {"idle_mode", "vname", TO_UNLIMITED, to_idle_mode, GED_FUNC_PTR_NULL}, {"illum", (char *)0, TO_UNLIMITED, to_pass_through_and_refresh_func, ged_illum}, {"importFg4Section", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_importFg4Section}, {"in", (char *)0, TO_UNLIMITED, to_more_args_func, ged_in}, - {"init_view_bindings", "vname", TO_UNLIMITED, to_init_view_bindings, GED_FUNC_PTR_NULL}, {"inside", (char *)0, TO_UNLIMITED, to_more_args_func, ged_inside}, {"isize", "vname", 2, to_view_func, ged_isize}, {"item", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_item}, @@ -708,12 +675,8 @@ {"killtree", (char *)0, TO_UNLIMITED, to_pass_through_and_refresh_func, ged_killtree}, {"l", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_list}, {"lc", "[-d|-s|-r] [-z] [-0|-1|-2|-3|-4|-5] [-f {FileName}] {GroupName}", TO_UNLIMITED, to_pass_through_func, ged_lc}, - {"light", "[0|1]", TO_UNLIMITED, to_light, GED_FUNC_PTR_NULL}, - {"list_views", (char *)0, TO_UNLIMITED, to_list_views, GED_FUNC_PTR_NULL}, - {"listen", "[port]", TO_UNLIMITED, to_listen, GED_FUNC_PTR_NULL}, {"listeval", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_pathsum}, {"loadview", "filename", 3, to_view_func, ged_loadview}, - {"local2base", (char *)0, TO_UNLIMITED, to_local2base, GED_FUNC_PTR_NULL}, {"lod", (char *)0, TO_UNLIMITED, to_lod, ged_lod}, {"log", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_log}, {"lookat", "x y z", 5, to_view_func_plus, ged_lookat}, @@ -720,71 +683,25 @@ {"ls", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_ls}, {"lt", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_lt}, {"m2v_point", "x y z", 5, to_view_func, ged_m2v_point}, - {"make", (char *)0, TO_UNLIMITED, to_make, GED_FUNC_PTR_NULL}, {"make_name", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_make_name}, {"make_pnts", (char *)0, TO_UNLIMITED, to_more_args_func, ged_make_pnts}, {"mat4x3pnt", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_mat4x3pnt}, {"match", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_match}, {"mater", (char *)0, TO_UNLIMITED, to_more_args_func, ged_mater}, - {"mirror", (char *)0, TO_UNLIMITED, to_mirror, GED_FUNC_PTR_NULL}, {"model2grid_lu", "x y z", 5, to_view_func_less, ged_model2grid_lu}, {"model2view", "vname", 2, to_view_func, ged_model2view}, {"model2view_lu", "x y z", 5, to_view_func_less, ged_model2view_lu}, - {"model_axes", "???", TO_UNLIMITED, to_model_axes, GED_FUNC_PTR_NULL}, - {"edit_motion_delta_callback", "vname [args]", TO_UNLIMITED, to_edit_motion_delta_callback, GED_FUNC_PTR_NULL}, - {"more_args_callback", "set/get the \"more args\" callback", TO_UNLIMITED, to_more_args_callback, GED_FUNC_PTR_NULL}, {"move_arb_edge", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_move_arb_edge}, - {"move_arb_edge_mode", "obj edge x y", TO_UNLIMITED, to_move_arb_edge_mode, GED_FUNC_PTR_NULL}, {"move_arb_face", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_move_arb_face}, - {"move_arb_face_mode", "obj face x y", TO_UNLIMITED, to_move_arb_face_mode, GED_FUNC_PTR_NULL}, - {"bot_move_pnt", (char *)0, TO_UNLIMITED, to_bot_move_pnt, GED_FUNC_PTR_NULL}, - {"bot_move_pnts", (char *)0, TO_UNLIMITED, to_bot_move_pnts, GED_FUNC_PTR_NULL}, - {"bot_move_pnt_mode", "obj i mx my", TO_UNLIMITED, to_bot_move_pnt_mode, GED_FUNC_PTR_NULL}, - {"bot_move_pnts_mode", "mx my obj i1 [i2 ... iN]", TO_UNLIMITED, to_bot_move_pnts_mode, GED_FUNC_PTR_NULL}, {"metaball_move_pnt", (char *)0, TO_UNLIMITED, to_move_pnt_common, ged_metaball_move_pnt}, - {"metaball_move_pnt_mode", "obj pt_i mx my", TO_UNLIMITED, to_metaball_move_pnt_mode, GED_FUNC_PTR_NULL}, {"pipe_move_pnt", (char *)0, TO_UNLIMITED, to_move_pnt_common, ged_pipe_move_pnt}, - {"pipe_pnt_mode", "obj seg_i mx my", TO_UNLIMITED, to_pipe_move_pnt_mode, GED_FUNC_PTR_NULL}, {"mouse_add_metaball_pnt", "obj mx my", TO_UNLIMITED, to_mouse_append_pnt_common, ged_metaball_add_pnt}, {"mouse_append_pipe_pnt", "obj mx my", TO_UNLIMITED, to_mouse_append_pnt_common, ged_pipe_append_pnt}, - {"mouse_brep_selection_append", "obj mx my", 5, to_mouse_brep_selection_append, GED_FUNC_PTR_NULL}, - {"mouse_brep_selection_translate", "obj mx my", 5, to_mouse_brep_selection_translate, GED_FUNC_PTR_NULL}, - {"mouse_constrain_rot", "coord mx my", TO_UNLIMITED, to_mouse_constrain_rot, GED_FUNC_PTR_NULL}, - {"mouse_constrain_trans", "coord mx my", TO_UNLIMITED, to_mouse_constrain_trans, GED_FUNC_PTR_NULL}, - {"mouse_data_scale", "mx my", TO_UNLIMITED, to_mouse_data_scale, GED_FUNC_PTR_NULL}, - {"mouse_find_arb_edge", "obj mx my ptol", TO_UNLIMITED, to_mouse_find_arb_edge, GED_FUNC_PTR_NULL}, - {"mouse_find_bot_edge", "obj mx my", TO_UNLIMITED, to_mouse_find_bot_edge, GED_FUNC_PTR_NULL}, - {"mouse_find_bot_pnt", "obj mx my", TO_UNLIMITED, to_mouse_find_bot_pnt, GED_FUNC_PTR_NULL}, - {"mouse_find_metaball_pnt", "obj mx my", TO_UNLIMITED, to_mouse_find_metaball_pnt, GED_FUNC_PTR_NULL}, - {"mouse_find_pipe_pnt", "obj mx my", TO_UNLIMITED, to_mouse_find_pipe_pnt, GED_FUNC_PTR_NULL}, - {"mouse_joint_select", "obj mx my", 5, to_mouse_joint_select, GED_FUNC_PTR_NULL}, - {"mouse_joint_selection_translate", "obj mx my", 5, to_mouse_joint_selection_translate, GED_FUNC_PTR_NULL}, - {"mouse_move_arb_edge", "obj edge mx my", TO_UNLIMITED, to_mouse_move_arb_edge, GED_FUNC_PTR_NULL}, - {"mouse_move_arb_face", "obj face mx my", TO_UNLIMITED, to_mouse_move_arb_face, GED_FUNC_PTR_NULL}, - {"mouse_move_bot_pnt", "[-r] obj i mx my", TO_UNLIMITED, to_mouse_move_bot_pnt, GED_FUNC_PTR_NULL}, - {"mouse_move_bot_pnts", "mx my obj i1 [i2 ... iN]", TO_UNLIMITED, to_mouse_move_bot_pnts, GED_FUNC_PTR_NULL}, {"mouse_move_metaball_pnt", "obj i mx my", TO_UNLIMITED, to_mouse_move_pnt_common, ged_metaball_move_pnt}, {"mouse_move_pipe_pnt", "obj i mx my", TO_UNLIMITED, to_mouse_move_pnt_common, ged_pipe_move_pnt}, - {"mouse_orotate", "obj mx my", TO_UNLIMITED, to_mouse_orotate, GED_FUNC_PTR_NULL}, - {"mouse_oscale", "obj mx my", TO_UNLIMITED, to_mouse_oscale, GED_FUNC_PTR_NULL}, - {"mouse_otranslate", "obj mx my", TO_UNLIMITED, to_mouse_otranslate, GED_FUNC_PTR_NULL}, - {"mouse_poly_circ", "mx my", TO_UNLIMITED, to_mouse_poly_circ, GED_FUNC_PTR_NULL}, - {"mouse_poly_cont", "mx my", TO_UNLIMITED, to_mouse_poly_cont, GED_FUNC_PTR_NULL}, - {"mouse_poly_ell", "mx my", TO_UNLIMITED, to_mouse_poly_ell, GED_FUNC_PTR_NULL}, - {"mouse_poly_rect", "mx my", TO_UNLIMITED, to_mouse_poly_rect, GED_FUNC_PTR_NULL}, {"mouse_prepend_pipe_pnt", "obj mx my", TO_UNLIMITED, to_mouse_append_pnt_common, ged_pipe_prepend_pnt}, - {"mouse_ray", "mx my", TO_UNLIMITED, to_mouse_ray, GED_FUNC_PTR_NULL}, - {"mouse_rect", "mx my", TO_UNLIMITED, to_mouse_rect, GED_FUNC_PTR_NULL}, - {"mouse_rot", "mx my", TO_UNLIMITED, to_mouse_rot, GED_FUNC_PTR_NULL}, - {"mouse_rotate_arb_face", "obj face v mx my", TO_UNLIMITED, to_mouse_rotate_arb_face, GED_FUNC_PTR_NULL}, - {"mouse_scale", "mx my", TO_UNLIMITED, to_mouse_scale, GED_FUNC_PTR_NULL}, - {"mouse_protate", "obj attribute mx my", TO_UNLIMITED, to_mouse_protate, GED_FUNC_PTR_NULL}, - {"mouse_pscale", "obj attribute mx my", TO_UNLIMITED, to_mouse_pscale, GED_FUNC_PTR_NULL}, - {"mouse_ptranslate", "obj attribute mx my", TO_UNLIMITED, to_mouse_ptranslate, GED_FUNC_PTR_NULL}, - {"mouse_trans", "mx my", TO_UNLIMITED, to_mouse_trans, GED_FUNC_PTR_NULL}, {"mv", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_move}, {"mvall", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_move_all}, - {"new_view", "vname type [args]", TO_UNLIMITED, to_new_view, GED_FUNC_PTR_NULL}, {"nirt", "[args]", TO_UNLIMITED, to_view_func, ged_nirt}, {"nmg_collapse", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_nmg_collapse}, {"nmg_fix_normals", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_nmg_fix_normals}, @@ -794,13 +711,9 @@ {"orient", "quat", 6, to_view_func_plus, ged_orient}, {"orientation", "quat", 6, to_view_func_plus, ged_orient}, {"orotate", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_orotate}, - {"orotate_mode", "obj x y", TO_UNLIMITED, to_orotate_mode, GED_FUNC_PTR_NULL}, {"oscale", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_oscale}, - {"oscale_mode", "obj x y", TO_UNLIMITED, to_oscale_mode, GED_FUNC_PTR_NULL}, {"otranslate", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_otranslate}, - {"otranslate_mode", "obj x y", TO_UNLIMITED, to_otranslate_mode, GED_FUNC_PTR_NULL}, {"overlay", (char *)0, TO_UNLIMITED, to_autoview_func, ged_overlay}, - {"paint_rect_area", "vname", TO_UNLIMITED, to_paint_rect_area, GED_FUNC_PTR_NULL}, {"pathlist", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_pathlist}, {"paths", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_pathsum}, {"perspective", "[angle]", 3, to_view_func_plus, ged_perspective}, @@ -808,30 +721,17 @@ {"plot", "[options] file.pl", 16, to_view_func, ged_plot}, {"pmat", "[mat]", 3, to_view_func, ged_pmat}, {"pmodel2view", "vname", 2, to_view_func, ged_pmodel2view}, -#if defined(DM_OGL) || defined(DM_WGL) - {"pix", "file", TO_UNLIMITED, to_pix, GED_FUNC_PTR_NULL}, - {"png", "file", TO_UNLIMITED, to_png, GED_FUNC_PTR_NULL}, -#endif {"png2fb", "[options] [file.png]", TO_UNLIMITED, to_view_func, ged_png2fb}, {"pngwf", "[options] file.png", 16, to_view_func, ged_png}, - {"poly_circ_mode", "x y", TO_UNLIMITED, to_poly_circ_mode, GED_FUNC_PTR_NULL}, - {"poly_cont_build", "x y", TO_UNLIMITED, to_poly_cont_build, GED_FUNC_PTR_NULL}, - {"poly_cont_build_end", "y", TO_UNLIMITED, to_poly_cont_build_end, GED_FUNC_PTR_NULL}, - {"poly_ell_mode", "x y", TO_UNLIMITED, to_poly_ell_mode, GED_FUNC_PTR_NULL}, - {"poly_rect_mode", "x y [s]", TO_UNLIMITED, to_poly_rect_mode, GED_FUNC_PTR_NULL}, {"prcolor", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_prcolor}, {"prefix", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_prefix}, {"pipe_prepend_pnt", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_pipe_prepend_pnt}, {"preview", "[options] script", TO_UNLIMITED, to_dm_func, ged_preview}, - {"prim_label", "[prim_1 prim_2 ... prim_N]", TO_UNLIMITED, to_prim_label, GED_FUNC_PTR_NULL}, {"protate", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_protate}, - {"protate_mode", "obj attribute x y", TO_UNLIMITED, to_protate_mode, GED_FUNC_PTR_NULL}, {"postscript", "[options] file.ps", 16, to_view_func, ged_ps}, {"pscale", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_pscale}, - {"pscale_mode", "obj attribute x y", TO_UNLIMITED, to_pscale_mode, GED_FUNC_PTR_NULL}, {"pset", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_pset}, {"ptranslate", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_ptranslate}, - {"ptranslate_mode", "obj attribute x y", TO_UNLIMITED, to_ptranslate_mode, GED_FUNC_PTR_NULL}, {"push", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_push}, {"put", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_put}, {"put_comb", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_put_comb}, @@ -842,12 +742,7 @@ {"r", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_region}, {"rcodes", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_rcodes}, {"rect", "args", 6, to_view_func, ged_rect}, - {"rect_mode", "x y", TO_UNLIMITED, to_rect_mode, GED_FUNC_PTR_NULL}, {"red", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_red}, - {"redraw", "obj", 2, to_redraw, GED_FUNC_PTR_NULL}, - {"refresh", "vname", TO_UNLIMITED, to_refresh, GED_FUNC_PTR_NULL}, - {"refresh_all", (char *)0, TO_UNLIMITED, to_refresh_all, GED_FUNC_PTR_NULL}, - {"refresh_on", "[0|1]", TO_UNLIMITED, to_refresh_on, GED_FUNC_PTR_NULL}, {"regdef", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_regdef}, {"regions", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_tables}, {"solid_report", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_solid_report}, @@ -860,13 +755,9 @@ {"rot_about", "[e|k|m|v]", 3, to_view_func, ged_rotate_about}, {"rot_point", "x y z", 5, to_view_func, ged_rot_point}, {"rotate_arb_face", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_rotate_arb_face}, - {"rotate_arb_face_mode", "obj face v x y", TO_UNLIMITED, to_rotate_arb_face_mode, GED_FUNC_PTR_NULL}, - {"rotate_mode", "x y", TO_UNLIMITED, to_rotate_mode, GED_FUNC_PTR_NULL}, {"rrt", "[args]", TO_UNLIMITED, to_view_func, ged_rrt}, {"rselect", (char *)0, TO_UNLIMITED, to_view_func, ged_rselect}, {"rt", "[args]", TO_UNLIMITED, to_view_func, ged_rt}, - {"rt_end_callback", "[args]", TO_UNLIMITED, to_rt_end_callback, GED_FUNC_PTR_NULL}, - {"rt_gettrees", "[-i] [-u] pname object", TO_UNLIMITED, to_rt_gettrees, GED_FUNC_PTR_NULL}, {"rtabort", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_rtabort}, {"rtarea", "[args]", TO_UNLIMITED, to_view_func, ged_rt}, {"rtcheck", "[args]", TO_UNLIMITED, to_view_func, ged_rtcheck}, @@ -876,19 +767,9 @@ {"savekey", "filename", 3, to_view_func, ged_savekey}, {"saveview", (char *)0, TO_UNLIMITED, to_view_func, ged_saveview}, {"sca", "sf", 3, to_view_func_plus, ged_scale}, - {"scale_mode", "x y", TO_UNLIMITED, to_scale_mode, GED_FUNC_PTR_NULL}, - {"screen2model", "x y", TO_UNLIMITED, to_screen2model, GED_FUNC_PTR_NULL}, - {"screen2view", "x y", TO_UNLIMITED, to_screen2view, GED_FUNC_PTR_NULL}, {"screengrab", "imagename.ext", TO_UNLIMITED, to_dm_func, ged_screen_grab}, - {"sdata_arrows", "???", TO_UNLIMITED, to_data_arrows, GED_FUNC_PTR_NULL}, - {"sdata_axes", "???", TO_UNLIMITED, to_data_axes, GED_FUNC_PTR_NULL}, - {"sdata_labels", "???", TO_UNLIMITED, to_data_labels, GED_FUNC_PTR_NULL}, - {"sdata_lines", "???", TO_UNLIMITED, to_data_lines, GED_FUNC_PTR_NULL}, - {"sdata_polygons", "???", TO_UNLIMITED, to_data_polygons, GED_FUNC_PTR_NULL}, {"search", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_search}, {"select", (char *)0, TO_UNLIMITED, to_view_func, ged_select}, - {"set_coord", "[m|v]", TO_UNLIMITED, to_set_coord, GED_FUNC_PTR_NULL}, - {"set_fb_mode", "[mode]", TO_UNLIMITED, to_set_fb_mode, GED_FUNC_PTR_NULL}, {"set_output_script", "[script]", TO_UNLIMITED, to_pass_through_func, ged_set_output_script}, {"set_transparency", (char *)0, TO_UNLIMITED, to_pass_through_and_refresh_func, ged_set_transparency}, {"set_uplotOutputMode", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_set_uplotOutputMode}, @@ -899,7 +780,6 @@ {"showmats", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_showmats}, {"size", "[size]", 3, to_view_func_plus, ged_size}, {"slew", "x y [z]", 5, to_view_func_plus, ged_slew}, - {"snap_view", "vx vy", 4, to_snap_view, GED_FUNC_PTR_NULL}, {"solids", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_tables}, {"solids_on_ray", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_solids_on_ray}, {"summary", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_summary}, @@ -912,8 +792,6 @@ {"tops", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_tops}, {"tra", "[-m|-v] x y z", 6, to_view_func_plus, ged_tra}, {"track", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_track}, - {"translate_mode", "x y", TO_UNLIMITED, to_translate_mode, GED_FUNC_PTR_NULL}, - {"transparency", "[val]", TO_UNLIMITED, to_transparency, GED_FUNC_PTR_NULL}, {"tree", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_tree}, {"unhide", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_unhide}, {"units", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_units}, @@ -921,18 +799,12 @@ {"vdraw", (char *)0, TO_UNLIMITED, to_pass_through_and_refresh_func, ged_vdraw}, {"version", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_version}, {"view", "quat|ypr|aet|center|eye|size [args]", 7, to_view_func_plus, ged_view_func}, - {"view_axes", "vname [args]", TO_UNLIMITED, to_view_axes, GED_FUNC_PTR_NULL}, - {"view_callback", "vname [args]", TO_UNLIMITED, to_view_callback, GED_FUNC_PTR_NULL}, - {"view_win_size", "[s] | [x y]", 4, to_view_win_size, GED_FUNC_PTR_NULL}, {"view2grid_lu", "x y z", 5, to_view_func_less, ged_view2grid_lu}, {"view2model", "", 2, to_view_func_less, ged_view2model}, {"view2model_lu", "x y z", 5, to_view_func_less, ged_view2model_lu}, {"view2model_vec", "x y z", 5, to_view_func_less, ged_view2model_vec}, - {"view2screen", "", 2, to_view2screen, GED_FUNC_PTR_NULL}, {"viewdir", "[-i]", 3, to_view_func_less, ged_viewdir}, - {"vmake", "pname ptype", TO_UNLIMITED, to_vmake, GED_FUNC_PTR_NULL}, {"vnirt", "[args]", TO_UNLIMITED, to_view_func, ged_vnirt}, - {"vslew", "x y", TO_UNLIMITED, to_vslew, GED_FUNC_PTR_NULL}, {"wcodes", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_wcodes}, {"whatid", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_whatid}, {"which_shader", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_which_shader}, @@ -944,9 +816,142 @@ {"xpush", (char *)0, TO_UNLIMITED, to_pass_through_func, ged_xpush}, {"ypr", "yaw pitch roll", 5, to_view_func_plus, ged_ypr}, {"zap", (char *)0, TO_UNLIMITED, to_pass_through_and_refresh_func, ged_zap}, + {"zoom", "sf", 3, to_view_func_plus, ged_zoom}, + {(char *)0, (char *)0, 0, TO_WRAPPER_FUNC_PTR_NULL, GED_FUNC_PTR_NULL} +}; + + + +static struct to_cmdtab to_cmds[] = { + {"autoview", "vname", TO_UNLIMITED, to_autoview, GED_FUNC_PTR_NULL}, + {"base2local", (char *)0, TO_UNLIMITED, to_base2local, GED_FUNC_PTR_NULL}, + {"bg", "[r g b]", TO_UNLIMITED, to_bg, GED_FUNC_PTR_NULL}, + {"blast", (char *)0, TO_UNLIMITED, to_blast, GED_FUNC_PTR_NULL}, + {"bot_edge_split", "bot face", TO_UNLIMITED, to_bot_edge_split, GED_FUNC_PTR_NULL}, + {"bot_face_split", "bot face", TO_UNLIMITED, to_bot_face_split, GED_FUNC_PTR_NULL}, + {"bounds", "[\"minX maxX minY maxY minZ maxZ\"]", TO_UNLIMITED, to_bounds, GED_FUNC_PTR_NULL}, + {"configure", "vname", TO_UNLIMITED, to_configure, GED_FUNC_PTR_NULL}, + {"constrain_rmode", "x|y|z x y", TO_UNLIMITED, to_constrain_rmode, GED_FUNC_PTR_NULL}, + {"constrain_tmode", "x|y|z x y", TO_UNLIMITED, to_constrain_tmode, GED_FUNC_PTR_NULL}, + {"cp", "[-f] from to", TO_UNLIMITED, to_copy, GED_FUNC_PTR_NULL}, + {"data_arrows", "???", TO_UNLIMITED, to_data_arrows, GED_FUNC_PTR_NULL}, + {"data_axes", "???", TO_UNLIMITED, to_data_axes, GED_FUNC_PTR_NULL}, + {"data_labels", "???", TO_UNLIMITED, to_data_labels, GED_FUNC_PTR_NULL}, + {"data_lines", "???", TO_UNLIMITED, to_data_lines, GED_FUNC_PTR_NULL}, + {"data_polygons", "???", TO_UNLIMITED, to_data_polygons, GED_FUNC_PTR_NULL}, + {"data_move", "???", TO_UNLIMITED, to_data_move, GED_FUNC_PTR_NULL}, + {"data_move_object_mode", "x y", TO_UNLIMITED, to_data_move_object_mode, GED_FUNC_PTR_NULL}, + {"data_move_point_mode", "x y", TO_UNLIMITED, to_data_move_point_mode, GED_FUNC_PTR_NULL}, + {"data_pick", "???", TO_UNLIMITED, to_data_pick, GED_FUNC_PTR_NULL}, + {"data_scale_mode", "x y", TO_UNLIMITED, to_data_scale_mode, GED_FUNC_PTR_NULL}, + {"data_vZ", "[z]", TO_UNLIMITED, to_data_vZ, GED_FUNC_PTR_NULL}, + {"delete_view", "vname", TO_UNLIMITED, to_delete_view, GED_FUNC_PTR_NULL}, + {"dlist_on", "[0|1]", TO_UNLIMITED, to_dlist_on, GED_FUNC_PTR_NULL}, + {"faceplate", "center_dot|prim_labels|view_params|view_scale color|draw [val(s)]", TO_UNLIMITED, to_faceplate, GED_FUNC_PTR_NULL}, + {"fit_png_image", "image_file_in req_width req_height scale image_file_out", 6, to_fit_png_image, GED_FUNC_PTR_NULL}, + {"fontsize", "[fontsize]", 3, to_fontsize, GED_FUNC_PTR_NULL}, + {"get_prev_mouse", "vname", TO_UNLIMITED, to_get_prev_mouse, GED_FUNC_PTR_NULL}, + {"handle_expose", "vname count", TO_UNLIMITED, to_handle_expose, GED_FUNC_PTR_NULL}, + {"hide_view", "vname [0|1]", 3, to_hide_view, GED_FUNC_PTR_NULL}, + {"idle_mode", "vname", TO_UNLIMITED, to_idle_mode, GED_FUNC_PTR_NULL}, + {"init_view_bindings", "vname", TO_UNLIMITED, to_init_view_bindings, GED_FUNC_PTR_NULL}, + {"light", "[0|1]", TO_UNLIMITED, to_light, GED_FUNC_PTR_NULL}, + {"list_views", (char *)0, TO_UNLIMITED, to_list_views, GED_FUNC_PTR_NULL}, + {"listen", "[port]", TO_UNLIMITED, to_listen, GED_FUNC_PTR_NULL}, + {"local2base", (char *)0, TO_UNLIMITED, to_local2base, GED_FUNC_PTR_NULL}, + {"make", (char *)0, TO_UNLIMITED, to_make, GED_FUNC_PTR_NULL}, + {"mirror", (char *)0, TO_UNLIMITED, to_mirror, GED_FUNC_PTR_NULL}, + {"model_axes", "???", TO_UNLIMITED, to_model_axes, GED_FUNC_PTR_NULL}, + {"edit_motion_delta_callback", "vname [args]", TO_UNLIMITED, to_edit_motion_delta_callback, GED_FUNC_PTR_NULL}, + {"more_args_callback", "set/get the \"more args\" callback", TO_UNLIMITED, to_more_args_callback, GED_FUNC_PTR_NULL}, + {"move_arb_edge_mode", "obj edge x y", TO_UNLIMITED, to_move_arb_edge_mode, GED_FUNC_PTR_NULL}, + {"move_arb_face_mode", "obj face x y", TO_UNLIMITED, to_move_arb_face_mode, GED_FUNC_PTR_NULL}, + {"bot_move_pnt", (char *)0, TO_UNLIMITED, to_bot_move_pnt, GED_FUNC_PTR_NULL}, + {"bot_move_pnts", (char *)0, TO_UNLIMITED, to_bot_move_pnts, GED_FUNC_PTR_NULL}, + {"bot_move_pnt_mode", "obj i mx my", TO_UNLIMITED, to_bot_move_pnt_mode, GED_FUNC_PTR_NULL}, + {"bot_move_pnts_mode", "mx my obj i1 [i2 ... iN]", TO_UNLIMITED, to_bot_move_pnts_mode, GED_FUNC_PTR_NULL}, + {"metaball_move_pnt_mode", "obj pt_i mx my", TO_UNLIMITED, to_metaball_move_pnt_mode, GED_FUNC_PTR_NULL}, + {"pipe_pnt_mode", "obj seg_i mx my", TO_UNLIMITED, to_pipe_move_pnt_mode, GED_FUNC_PTR_NULL}, + {"mouse_brep_selection_append", "obj mx my", 5, to_mouse_brep_selection_append, GED_FUNC_PTR_NULL}, + {"mouse_brep_selection_translate", "obj mx my", 5, to_mouse_brep_selection_translate, GED_FUNC_PTR_NULL}, + {"mouse_constrain_rot", "coord mx my", TO_UNLIMITED, to_mouse_constrain_rot, GED_FUNC_PTR_NULL}, + {"mouse_constrain_trans", "coord mx my", TO_UNLIMITED, to_mouse_constrain_trans, GED_FUNC_PTR_NULL}, + {"mouse_data_scale", "mx my", TO_UNLIMITED, to_mouse_data_scale, GED_FUNC_PTR_NULL}, + {"mouse_find_arb_edge", "obj mx my ptol", TO_UNLIMITED, to_mouse_find_arb_edge, GED_FUNC_PTR_NULL}, + {"mouse_find_bot_edge", "obj mx my", TO_UNLIMITED, to_mouse_find_bot_edge, GED_FUNC_PTR_NULL}, + {"mouse_find_bot_pnt", "obj mx my", TO_UNLIMITED, to_mouse_find_bot_pnt, GED_FUNC_PTR_NULL}, + {"mouse_find_metaball_pnt", "obj mx my", TO_UNLIMITED, to_mouse_find_metaball_pnt, GED_FUNC_PTR_NULL}, + {"mouse_find_pipe_pnt", "obj mx my", TO_UNLIMITED, to_mouse_find_pipe_pnt, GED_FUNC_PTR_NULL}, + {"mouse_joint_select", "obj mx my", 5, to_mouse_joint_select, GED_FUNC_PTR_NULL}, + {"mouse_joint_selection_translate", "obj mx my", 5, to_mouse_joint_selection_translate, GED_FUNC_PTR_NULL}, + {"mouse_move_arb_edge", "obj edge mx my", TO_UNLIMITED, to_mouse_move_arb_edge, GED_FUNC_PTR_NULL}, + {"mouse_move_arb_face", "obj face mx my", TO_UNLIMITED, to_mouse_move_arb_face, GED_FUNC_PTR_NULL}, + {"mouse_move_bot_pnt", "[-r] obj i mx my", TO_UNLIMITED, to_mouse_move_bot_pnt, GED_FUNC_PTR_NULL}, + {"mouse_move_bot_pnts", "mx my obj i1 [i2 ... iN]", TO_UNLIMITED, to_mouse_move_bot_pnts, GED_FUNC_PTR_NULL}, + {"mouse_orotate", "obj mx my", TO_UNLIMITED, to_mouse_orotate, GED_FUNC_PTR_NULL}, + {"mouse_oscale", "obj mx my", TO_UNLIMITED, to_mouse_oscale, GED_FUNC_PTR_NULL}, + {"mouse_otranslate", "obj mx my", TO_UNLIMITED, to_mouse_otranslate, GED_FUNC_PTR_NULL}, + {"mouse_poly_circ", "mx my", TO_UNLIMITED, to_mouse_poly_circ, GED_FUNC_PTR_NULL}, + {"mouse_poly_cont", "mx my", TO_UNLIMITED, to_mouse_poly_cont, GED_FUNC_PTR_NULL}, + {"mouse_poly_ell", "mx my", TO_UNLIMITED, to_mouse_poly_ell, GED_FUNC_PTR_NULL}, + {"mouse_poly_rect", "mx my", TO_UNLIMITED, to_mouse_poly_rect, GED_FUNC_PTR_NULL}, + {"mouse_ray", "mx my", TO_UNLIMITED, to_mouse_ray, GED_FUNC_PTR_NULL}, + {"mouse_rect", "mx my", TO_UNLIMITED, to_mouse_rect, GED_FUNC_PTR_NULL}, + {"mouse_rot", "mx my", TO_UNLIMITED, to_mouse_rot, GED_FUNC_PTR_NULL}, + {"mouse_rotate_arb_face", "obj face v mx my", TO_UNLIMITED, to_mouse_rotate_arb_face, GED_FUNC_PTR_NULL}, + {"mouse_scale", "mx my", TO_UNLIMITED, to_mouse_scale, GED_FUNC_PTR_NULL}, + {"mouse_protate", "obj attribute mx my", TO_UNLIMITED, to_mouse_protate, GED_FUNC_PTR_NULL}, + {"mouse_pscale", "obj attribute mx my", TO_UNLIMITED, to_mouse_pscale, GED_FUNC_PTR_NULL}, + {"mouse_ptranslate", "obj attribute mx my", TO_UNLIMITED, to_mouse_ptranslate, GED_FUNC_PTR_NULL}, + {"mouse_trans", "mx my", TO_UNLIMITED, to_mouse_trans, GED_FUNC_PTR_NULL}, + {"new_view", "vname type [args]", TO_UNLIMITED, to_new_view, GED_FUNC_PTR_NULL}, + {"orotate_mode", "obj x y", TO_UNLIMITED, to_orotate_mode, GED_FUNC_PTR_NULL}, + {"oscale_mode", "obj x y", TO_UNLIMITED, to_oscale_mode, GED_FUNC_PTR_NULL}, + {"otranslate_mode", "obj x y", TO_UNLIMITED, to_otranslate_mode, GED_FUNC_PTR_NULL}, + {"paint_rect_area", "vname", TO_UNLIMITED, to_paint_rect_area, GED_FUNC_PTR_NULL}, +#if defined(DM_OGL) || defined(DM_WGL) + {"pix", "file", TO_UNLIMITED, to_pix, GED_FUNC_PTR_NULL}, + {"png", "file", TO_UNLIMITED, to_png, GED_FUNC_PTR_NULL}, +#endif + {"poly_circ_mode", "x y", TO_UNLIMITED, to_poly_circ_mode, GED_FUNC_PTR_NULL}, + {"poly_cont_build", "x y", TO_UNLIMITED, to_poly_cont_build, GED_FUNC_PTR_NULL}, + {"poly_cont_build_end", "y", TO_UNLIMITED, to_poly_cont_build_end, GED_FUNC_PTR_NULL}, + {"poly_ell_mode", "x y", TO_UNLIMITED, to_poly_ell_mode, GED_FUNC_PTR_NULL}, + {"poly_rect_mode", "x y [s]", TO_UNLIMITED, to_poly_rect_mode, GED_FUNC_PTR_NULL}, + {"prim_label", "[prim_1 prim_2 ... prim_N]", TO_UNLIMITED, to_prim_label, GED_FUNC_PTR_NULL}, + {"protate_mode", "obj attribute x y", TO_UNLIMITED, to_protate_mode, GED_FUNC_PTR_NULL}, + {"pscale_mode", "obj attribute x y", TO_UNLIMITED, to_pscale_mode, GED_FUNC_PTR_NULL}, + {"ptranslate_mode", "obj attribute x y", TO_UNLIMITED, to_ptranslate_mode, GED_FUNC_PTR_NULL}, + {"rect_mode", "x y", TO_UNLIMITED, to_rect_mode, GED_FUNC_PTR_NULL}, + {"redraw", "obj", 2, to_redraw, GED_FUNC_PTR_NULL}, + {"refresh", "vname", TO_UNLIMITED, to_refresh, GED_FUNC_PTR_NULL}, + {"refresh_all", (char *)0, TO_UNLIMITED, to_refresh_all, GED_FUNC_PTR_NULL}, + {"refresh_on", "[0|1]", TO_UNLIMITED, to_refresh_on, GED_FUNC_PTR_NULL}, + {"rotate_arb_face_mode", "obj face v x y", TO_UNLIMITED, to_rotate_arb_face_mode, GED_FUNC_PTR_NULL}, + {"rotate_mode", "x y", TO_UNLIMITED, to_rotate_mode, GED_FUNC_PTR_NULL}, + {"rt_end_callback", "[args]", TO_UNLIMITED, to_rt_end_callback, GED_FUNC_PTR_NULL}, + {"rt_gettrees", "[-i] [-u] pname object", TO_UNLIMITED, to_rt_gettrees, GED_FUNC_PTR_NULL}, + {"scale_mode", "x y", TO_UNLIMITED, to_scale_mode, GED_FUNC_PTR_NULL}, + {"screen2model", "x y", TO_UNLIMITED, to_screen2model, GED_FUNC_PTR_NULL}, + {"screen2view", "x y", TO_UNLIMITED, to_screen2view, GED_FUNC_PTR_NULL}, + {"sdata_arrows", "???", TO_UNLIMITED, to_data_arrows, GED_FUNC_PTR_NULL}, + {"sdata_axes", "???", TO_UNLIMITED, to_data_axes, GED_FUNC_PTR_NULL}, + {"sdata_labels", "???", TO_UNLIMITED, to_data_labels, GED_FUNC_PTR_NULL}, + {"sdata_lines", "???", TO_UNLIMITED, to_data_lines, GED_FUNC_PTR_NULL}, + {"sdata_polygons", "???", TO_UNLIMITED, to_data_polygons, GED_FUNC_PTR_NULL}, + {"set_coord", "[m|v]", TO_UNLIMITED, to_set_coord, GED_FUNC_PTR_NULL}, + {"set_fb_mode", "[mode]", TO_UNLIMITED, to_set_fb_mode, GED_FUNC_PTR_NULL}, + {"snap_view", "vx vy", 4, to_snap_view, GED_FUNC_PTR_NULL}, + {"translate_mode", "x y", TO_UNLIMITED, to_translate_mode, GED_FUNC_PTR_NULL}, + {"transparency", "[val]", TO_UNLIMITED, to_transparency, GED_FUNC_PTR_NULL}, + {"view_axes", "vname [args]", TO_UNLIMITED, to_view_axes, GED_FUNC_PTR_NULL}, + {"view_callback", "vname [args]", TO_UNLIMITED, to_view_callback, GED_FUNC_PTR_NULL}, + {"view_win_size", "[s] | [x y]", 4, to_view_win_size, GED_FUNC_PTR_NULL}, + {"view2screen", "", 2, to_view2screen, GED_FUNC_PTR_NULL}, + {"vmake", "pname ptype", TO_UNLIMITED, to_vmake, GED_FUNC_PTR_NULL}, + {"vslew", "x y", TO_UNLIMITED, to_vslew, GED_FUNC_PTR_NULL}, {"zbuffer", "[0|1]", TO_UNLIMITED, to_zbuffer, GED_FUNC_PTR_NULL}, {"zclip", "[0|1]", TO_UNLIMITED, to_zclip, GED_FUNC_PTR_NULL}, - {"zoom", "sf", 3, to_view_func_plus, ged_zoom}, {(char *)0, (char *)0, 0, TO_WRAPPER_FUNC_PTR_NULL, GED_FUNC_PTR_NULL} }; @@ -1003,6 +1008,10 @@ if (argc < 2) { Tcl_DStringAppend(&ds, "subcommand not specified; must be one of: ", -1); + for (ctp = ged_cmds; ctp->to_name != (char *)NULL; ctp++) { + Tcl_DStringAppend(&ds, " ", -1); + Tcl_DStringAppend(&ds, ctp->to_name, -1); + } for (ctp = to_cmds; ctp->to_name != (char *)NULL; ctp++) { Tcl_DStringAppend(&ds, " ", -1); Tcl_DStringAppend(&ds, ctp->to_name, -1); @@ -1022,6 +1031,15 @@ break; } } + if (ctp->to_name == (char *)0) { + for (ctp = ged_cmds; ctp->to_name != (char *)0; ctp++) { + if (BU_STR_EQUAL(ctp->to_name, argv[1])) { + struct ged *gedp = top->to_gop->go_gedp; + ret = (*ctp->to_wrapper_func)(gedp, argc-1, (const char **)argv+1, ctp->to_func, ctp->to_usage, ctp->to_maxargs); + break; + } + } + } /* Command not found. */ if (ctp->to_name == (char *)0) { @@ -1029,10 +1047,16 @@ Tcl_DStringAppend(&ds, argv[1], -1); Tcl_DStringAppend(&ds, "; must be one of: ", -1); + for (ctp = ged_cmds; ctp->to_name != (char *)NULL; ctp++) { + Tcl_DStringAppend(&ds, " ", -1); + Tcl_DStringAppend(&ds, ctp->to_name, -1); + } + for (ctp = to_cmds; ctp->to_name != (char *)NULL; ctp++) { Tcl_DStringAppend(&ds, " ", -1); Tcl_DStringAppend(&ds, ctp->to_name, -1); } + Tcl_DStringAppend(&ds, "\n", -1); Tcl_DStringResult(interp, &ds); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. _______________________________________________ BRL-CAD Source Commits mailing list brlcad-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/brlcad-commits