comparison src/graphics.cc @ 7967:6add0f974aee

Add __go_execute_callback__
author John W. Eaton <jwe@octave.org>
date Tue, 22 Jul 2008 17:24:17 -0400
parents 9cd3ee5298a0
children a2ab20ba78f7
comparison
equal deleted inserted replaced
7966:5747be3ac497 7967:6add0f974aee
4411 @end deftypefn") 4411 @end deftypefn")
4412 { 4412 {
4413 gh_manager::autolock guard; 4413 gh_manager::autolock guard;
4414 4414
4415 return octave_value (gh_manager::figure_handle_list ()); 4415 return octave_value (gh_manager::figure_handle_list ());
4416 }
4417
4418 DEFUN (__go_execute_callback__, args, ,
4419 "-*- texinfo -*-\n\
4420 @deftypefn {Built-in Function} {} __go_execute_callback__ (@var{h}, @var{name})\n\
4421 @deftypefnx {Built-in Function} {} __go_execute_callback__ (@var{h}, @var{name}, @var{param})\n\
4422 Undocumented internal function.\n\
4423 @end deftypefn")
4424 {
4425 octave_value retval;
4426
4427 int nargin = args.length ();
4428
4429 if (nargin == 2 || nargin == 3)
4430 {
4431 double val = args(0).double_value ();
4432
4433 if (! error_state)
4434 {
4435 graphics_handle h = gh_manager::lookup (val);
4436
4437 if (h.ok ())
4438 {
4439 std::string name = args(1).string_value ();
4440
4441 if (! error_state)
4442 {
4443 if (nargin == 2)
4444 gh_manager::execute_callback (h, name);
4445 else
4446 gh_manager::execute_callback (h, name, args(2));
4447 }
4448 else
4449 error ("__go_execute_callback__: invalid callback name");
4450 }
4451 else
4452 error ("__go_execute_callback__: invalid graphics object (= %g)",
4453 val);
4454 }
4455 else
4456 error ("__go_execute_callback__: invalid graphics object");
4457 }
4458 else
4459 print_usage ();
4460
4461 return retval;
4416 } 4462 }
4417 4463
4418 DEFUN (available_backends, , , 4464 DEFUN (available_backends, , ,
4419 "-*- texinfo -*-\n\ 4465 "-*- texinfo -*-\n\
4420 @deftypefn {Built-in Function} {} available_backends ()\n\ 4466 @deftypefn {Built-in Function} {} available_backends ()\n\