+ SCM
+ irr_setVisible (SCM wrapped_obj,
+ SCM visible)
+ {
+ if (cursor_control_p (wrapped_obj))
+ {
+ unwrap_cursor_control (wrapped_obj)->setVisible (scm_to_bool (visible));
+ }
+ else if (gui_element_p (wrapped_obj))
+ {
+ unwrap_gui_element (wrapped_obj)->setVisible (scm_to_bool (visible));
+ }
+ else if (scene_node_p (wrapped_obj))
+ {
+ unwrap_scene_node (wrapped_obj)->setVisible (scm_to_bool (visible));
+ }
+ else
+ {
+ scm_error (scm_arg_type_key, NULL, "Cannot set visibility for object: ~S",
+ scm_list_1 (wrapped_obj), scm_list_1 (wrapped_obj));
+ }
+ return SCM_UNSPECIFIED;
+ }
+