1 /* Copyright (c) 2001-2002 by SoftIntegration, Inc. All Rights Reserved */
6 static ChInterp_t interp;
7 static void* cvSetMouseCallback_chdl_callback_ptr[8] = { 0, 0, 0, 0, 0, 0, 0, 0 };
9 static void cvSetMouseCallback_chdl_callback0(int event, int x, int y, int flags) {
10 Ch_CallFuncByAddr(interp,cvSetMouseCallback_chdl_callback_ptr[0],NULL, event, x, y, flags);
14 static void cvSetMouseCallback_chdl_callback1(int event, int x, int y, int flags) {
15 Ch_CallFuncByAddr(interp,cvSetMouseCallback_chdl_callback_ptr[1],NULL, event, x, y, flags);
18 static void cvSetMouseCallback_chdl_callback2(int event, int x, int y, int flags) {
19 Ch_CallFuncByAddr(interp,cvSetMouseCallback_chdl_callback_ptr[2],NULL, event, x, y, flags);
22 static void cvSetMouseCallback_chdl_callback3(int event, int x, int y, int flags) {
23 Ch_CallFuncByAddr(interp,cvSetMouseCallback_chdl_callback_ptr[3],NULL, event, x, y, flags);
25 static void cvSetMouseCallback_chdl_callback4(int event, int x, int y, int flags) {
26 Ch_CallFuncByAddr(interp,cvSetMouseCallback_chdl_callback_ptr[4],NULL, event, x, y, flags);
29 static void cvSetMouseCallback_chdl_callback5(int event, int x, int y, int flags) {
30 Ch_CallFuncByAddr(interp,cvSetMouseCallback_chdl_callback_ptr[5],NULL, event, x, y, flags);
33 static void cvSetMouseCallback_chdl_callback6(int event, int x, int y, int flags) {
34 Ch_CallFuncByAddr(interp,cvSetMouseCallback_chdl_callback_ptr[6],NULL, event, x, y, flags);
37 static void cvSetMouseCallback_chdl_callback7(int event, int x, int y, int flags) {
38 Ch_CallFuncByAddr(interp,cvSetMouseCallback_chdl_callback_ptr[7],NULL, event, x, y, flags);
43 EXPORTCH void cvSetMouseCallback_chdl(void *varg) {
47 CvMouseCallback on_mouse_ch = NULL, on_mouse_c = NULL;
49 Ch_VaStart(interp, ap, varg);
50 window_name = Ch_VaArg(interp, ap, char*);
51 on_mouse_ch = Ch_VaArg(interp, ap, CvMouseCallback);
52 if (on_mouse_ch != NULL) {
55 case 0: on_mouse_c = cvSetMouseCallback_chdl_callback0; break;
56 case 1: on_mouse_c = cvSetMouseCallback_chdl_callback1; break;
57 case 2: on_mouse_c = cvSetMouseCallback_chdl_callback2; break;
58 case 3: on_mouse_c = cvSetMouseCallback_chdl_callback3; break;
59 case 4: on_mouse_c = cvSetMouseCallback_chdl_callback4; break;
60 case 5: on_mouse_c = cvSetMouseCallback_chdl_callback5; break;
61 case 6: on_mouse_c = cvSetMouseCallback_chdl_callback6; break;
62 case 7: on_mouse_c = cvSetMouseCallback_chdl_callback7; break;
64 cvSetMouseCallback_chdl_callback_ptr[idx] = (void*)on_mouse_ch;
67 cvSetMouseCallback(window_name, on_mouse_c);