diff --git a/wrap/qt/anttweakbarMapper.cpp b/wrap/qt/anttweakbarMapper.cpp index 0bfc3d7c..d1e0235d 100644 --- a/wrap/qt/anttweakbarMapper.cpp +++ b/wrap/qt/anttweakbarMapper.cpp @@ -1,6 +1,7 @@ #include #include #include +#include void TW_CALL CopyCDStringToClient(char **destPtr, const char *src) { @@ -35,14 +36,26 @@ TwMouseButtonID Qt2TwMouseButtonId(QMouseEvent *e) int TwMousePressQt(QMouseEvent *e) { - TwMouseMotion(e->x (), e->y ()); - return TwMouseButton(TW_MOUSE_PRESSED, Qt2TwMouseButtonId(e)); + TwMouseMotion(e->x (), e->y ()); + return TwMouseButton(TW_MOUSE_PRESSED, Qt2TwMouseButtonId(e)); +} + +int TwMousePressQt(QWidget *qw, QMouseEvent *e) +{ + TwMouseMotion(QTLogicalToDevice(qw, e->x()), QTLogicalToDevice(qw, e->y())); + return TwMouseButton(TW_MOUSE_PRESSED, Qt2TwMouseButtonId(e)); } int TwMouseReleaseQt(QMouseEvent *e) { - TwMouseMotion(e->x (), e->y ()); - return TwMouseButton(TW_MOUSE_RELEASED, Qt2TwMouseButtonId(e)); + TwMouseMotion(e->x (), e->y ()); + return TwMouseButton(TW_MOUSE_RELEASED, Qt2TwMouseButtonId(e)); +} + +int TwMouseReleaseQt(QWidget *qw, QMouseEvent *e) +{ + TwMouseMotion(QTLogicalToDevice(qw, e->x()), QTLogicalToDevice(qw, e->y())); + return TwMouseButton(TW_MOUSE_RELEASED, Qt2TwMouseButtonId(e)); } int TwKeyPressQt(QKeyEvent *e) diff --git a/wrap/qt/anttweakbarMapper.h b/wrap/qt/anttweakbarMapper.h index 0937a38d..9d0ba8dc 100644 --- a/wrap/qt/anttweakbarMapper.h +++ b/wrap/qt/anttweakbarMapper.h @@ -1,12 +1,18 @@ #ifndef ANTTWEAKBARMAPPER_H #define ANTTWEAKBARMAPPER_H +#include +#include +#include + void TW_CALL CopyCDStringToClient(char **destPtr, const char *src); void TW_CALL CopyStdStringToClient(std::string& destClientString, const std::string& srcLibraryString); TwMouseButtonID Qt2TwMouseButtonId(QMouseEvent *e); int TwMousePressQt(QMouseEvent *e); int TwMouseReleaseQt(QMouseEvent *e); +int TwMousePressQt(QWidget *qw, QMouseEvent *e); +int TwMouseReleaseQt(QWidget *qw, QMouseEvent *e); int TwKeyPressQt(QKeyEvent *e); #endif // ANTTWEAKBARMAPPER_H diff --git a/wrap/qt/anttweakbarMapperNew.cpp b/wrap/qt/anttweakbarMapperNew.cpp index 042f33f0..1bbdf33d 100644 --- a/wrap/qt/anttweakbarMapperNew.cpp +++ b/wrap/qt/anttweakbarMapperNew.cpp @@ -1,6 +1,7 @@ #include #include #include +#include void TW_CALL CopyCDStringToClient(char **destPtr, const char *src) { @@ -35,14 +36,26 @@ TwMouseButtonID Qt2TwMouseButtonId(QMouseEvent *e) int TwMousePressQt(QMouseEvent *e) { - TwMouseMotion(e->x (), e->y ()); - return TwMouseButton(TW_MOUSE_PRESSED, Qt2TwMouseButtonId(e)); + TwMouseMotion(e->x (), e->y ()); + return TwMouseButton(TW_MOUSE_PRESSED, Qt2TwMouseButtonId(e)); +} + +int TwMousePressQt(QWidget *qw, QMouseEvent *e) +{ + TwMouseMotion(QTLogicalToDevice(qw, e->x()), QTLogicalToDevice(qw, e->y())); + return TwMouseButton(TW_MOUSE_PRESSED, Qt2TwMouseButtonId(e)); } int TwMouseReleaseQt(QMouseEvent *e) { - TwMouseMotion(e->x (), e->y ()); - return TwMouseButton(TW_MOUSE_RELEASED, Qt2TwMouseButtonId(e)); + TwMouseMotion(e->x (), e->y ()); + return TwMouseButton(TW_MOUSE_RELEASED, Qt2TwMouseButtonId(e)); +} + +int TwMouseReleaseQt(QWidget *qw, QMouseEvent *e) +{ + TwMouseMotion(QTLogicalToDevice(qw, e->x()), QTLogicalToDevice(qw, e->y())); + return TwMouseButton(TW_MOUSE_RELEASED, Qt2TwMouseButtonId(e)); } int TwKeyPressQt(QKeyEvent *e) @@ -56,7 +69,7 @@ int TwKeyPressQt(QKeyEvent *e) if( key>0 && key<0x7e ) k=key; // plain ascii codes - if( key>=Qt::Key_F1 && key<=Qt::Key_F12 ) + if( key>=Qt::Key_F1 && key<=Qt::Key_F15 ) k = TW_KEY_F1 + (key-Qt::Key_F1 ); else if ( key>=Qt::Key_A && key<=Qt::Key_Z)