MantisBT - VTK | |||||
View Issue Details | |||||
ID | Project | Category | View Status | Date Submitted | Last Update |
0013323 | VTK | (No Category) | public | 2012-07-24 10:44 | 2016-08-12 09:55 |
Reporter | edice | ||||
Assigned To | Will Schroeder | ||||
Priority | normal | Severity | minor | Reproducibility | have not tried |
Status | closed | Resolution | moved | ||
Platform | OS | OS Version | |||
Product Version | 5.8.0 | ||||
Target Version | Fixed in Version | ||||
Project | TBD | ||||
Type | incorrect functionality | ||||
Summary | 0013323: vtkInteractorStyle.cxx uses outdated EventPosition | ||||
Description | In this code from vtkInteractorStyle.cxx: case 'f' : case 'F' : { if(this->CurrentRenderer!=0) { this->AnimState = VTKIS_ANIM_ON; vtkAssemblyPath *path = NULL; this->FindPokedRenderer(rwi->GetEventPosition()[0], rwi->GetEventPosition()[1]); The InteractorStyle is responding to a key press, and is using "EventPosition" to determine the poked renderer and the pick coordinate. However, in QVTKInteractorAdapter.cxx (and also likely in the equivalent for MFC, Cocoa, etc) this is what is done in response to a key press: iren->SetKeyEventInformation( (e2->modifiers() & Qt::ControlModifier), (e2->modifiers() & Qt::ShiftModifier), ascii_key, e2->count(), keysym); SetKeyEventInformation() does everything except set EventPosition. So the interactor style is using an EventPosition that was set during the last MouseMove or other mouse event. That is normally ok, unless the mouse is moved outside the widget. The widget still has the focus and receives key presses, but EventPosition is left at the last known mouse position (at the point it left the window). Fixes: a) Instead, the key event should call SetEventInformation() with the current mouse cursor position (from QCursor::pos(), converted to widget coords). b) The InteractorStyle should not use EventPosition, but instead use a mechanism to query the current mouse position. | ||||
Steps To Reproduce | |||||
Additional Information | |||||
Tags | hackaton, Interaction | ||||
Relationships | |||||
Attached Files | |||||
Issue History | |||||
Date Modified | Username | Field | Change | ||
2012-07-24 10:44 | edice | New Issue | |||
2014-10-02 09:31 | Will Schroeder | Assigned To | => Will Schroeder | ||
2014-10-02 10:03 | Will Schroeder | Tag Attached: hackaton | |||
2014-10-02 12:52 | Will Schroeder | Tag Attached: Interaction | |||
2014-10-02 12:57 | Will Schroeder | Note Added: 0033485 | |||
2014-10-02 12:57 | Will Schroeder | Note Edited: 0033485 | bug_revision_view_page.php?bugnote_id=33485#r855 | ||
2016-07-06 16:48 | Berk Geveci | Status | backlog => expired | ||
2016-07-06 16:48 | Berk Geveci | Note Added: 0036266 | |||
2016-07-07 05:13 | edice | Note Added: 0036321 | |||
2016-07-07 05:13 | edice | Note Added: 0036322 | |||
2016-07-07 07:59 | Dave DeMarle | Note Added: 0036324 | |||
2016-07-07 07:59 | Dave DeMarle | Status | expired => backlog | ||
2016-07-07 07:59 | Dave DeMarle | Resolution | open => reopened | ||
2016-07-14 23:15 | edice | Note Added: 0036518 | |||
2016-07-27 11:20 | Cory Quammen | Note Added: 0036631 | |||
2016-08-12 09:55 | Kitware Robot | Note Added: 0037290 | |||
2016-08-12 09:55 | Kitware Robot | Status | backlog => closed | ||
2016-08-12 09:55 | Kitware Robot | Resolution | reopened => moved |
Notes | |||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|