[vtkusers] VTK & QDialog, Linux vs NT

Ann Gentile gentile at dancer.ca.sandia.gov
Tue Jul 17 20:33:30 EDT 2001


(my apologies if multiple copies sent) 

hi all
 
VTK 3.2 & Qt 2.3 Single-threaded DLL. 

In vtkInteractorStyleUser I've 
Set(Right/Left)ButtonPressMethods to bring up modal
QDialog boxes. The behavior I'd like is that pressing
the right button will cause other VTK and QT events to
be ignored until the user has exited the right button's
QDialog. However, the behavior i get if I press the
right button and then the left button:
under linux:
1) right button dialog only comes up
2) i can interact right button dialog until i exit it
3) then left button dialog comes up

under NT:
1) right button dialog comes up
2) left button dialog comes up
3) i can interact only with left button dialog
4) after exiting left button dialog, then i can interact
   with right button dialog

Have i got to combine QT and VTK event loops to do this properly?
Is there any easy way to at least get the linux behavior on NT (so that
one at least blocks the other ? I fiddled with trying 
RenderWindowInteractor.Disable() just before bringing up the right
dialog so as to ignore events from the other buttons, but on linux at least
then i cannot interact with the right dialog). Is NT version inherently
multi-threaded and is that why both dialog boxes come up in the NT version
rather than one blocking the other (VTK NT installation things i've seen
say to choose to link multi-threaded DLL) ? 

thanks for any info
ag






More information about the vtkusers mailing list