From eec30b08d4a2ae2c1aca5aada57cbec0ef9e4466 Mon Sep 17 00:00:00 2001 From: Vadim Pisarevsky Date: Tue, 18 May 2010 15:47:39 +0000 Subject: [PATCH] added cv::setMouseCallback and cv::startWindowThread --- modules/highgui/include/opencv2/highgui/highgui.hpp | 6 ++++++ modules/highgui/src/window.cpp | 10 ++++++++++ 2 files changed, 16 insertions(+) diff --git a/modules/highgui/include/opencv2/highgui/highgui.hpp b/modules/highgui/include/opencv2/highgui/highgui.hpp index 6cfb02b515..9c7feb3d8c 100644 --- a/modules/highgui/include/opencv2/highgui/highgui.hpp +++ b/modules/highgui/include/opencv2/highgui/highgui.hpp @@ -58,6 +58,7 @@ enum { WINDOW_AUTOSIZE=1 }; CV_EXPORTS void namedWindow( const string& winname, int flags CV_DEFAULT(WINDOW_AUTOSIZE) ); CV_EXPORTS void destroyWindow( const string& winname ); +CV_EXPORTS int startWindowThread(); CV_EXPORTS void setWindowProperty(const string& winname, int prop_id, double prop_value);//YV CV_EXPORTS double getWindowProperty(const string& winname, int prop_id);//YV @@ -74,6 +75,11 @@ CV_EXPORTS int createTrackbar( const string& trackbarname, const string& winname CV_EXPORTS int getTrackbarPos( const string& trackbarname, const string& winname ); CV_EXPORTS void setTrackbarPos( const string& trackbarname, const string& winname, int pos ); +typedef void (*MouseCallback )(int event, int x, int y, int flags, void* param); + +//! assigns callback for mouse events +CV_EXPORTS void setMouseCallback( const string& windowName, MouseCallback onMouse, void* param=0); + CV_EXPORTS Mat imread( const string& filename, int flags=1 ); CV_EXPORTS bool imwrite( const string& filename, const Mat& img, const vector& params=vector()); diff --git a/modules/highgui/src/window.cpp b/modules/highgui/src/window.cpp index 32c4553dee..8e78fe92ca 100644 --- a/modules/highgui/src/window.cpp +++ b/modules/highgui/src/window.cpp @@ -154,6 +154,16 @@ int getTrackbarPos( const string& trackbarName, const string& winName ) { return cvGetTrackbarPos(trackbarName.c_str(), winName.c_str()); } + +void setMouseCallback( const string& windowName, MouseCallback onMouse, void* param) +{ + cvSetMouseCallback(windowName.c_str(), onMouse, param); +} + +int startWindowThread() +{ + return cvStartWindowThread(); +} } -- GitLab