PDA

View Full Version : QwtPlotPicker does not show VLineRubberBand at mouse moving to left



kuzulis
13th November 2016, 20:00
Hi all.

I have faced with the "bug/feature", when I move the mouse from right to left, then the VLineRubberBand is disappeared. But when the mouse stops, then the VLineRubberBand is appeared again.
When I move the mouse to right, then the VLineRubberBand is visible always.

I use an empty plot without any curves, and pure QwtPlotPicker:



Plot::Plot( QWidget *parent ):
QwtPlot( parent)
{
auto tracker = new QwtPlotPicker(this->canvas());
tracker->setStateMachine( new QwtPickerTrackerMachine() );
tracker->setTrackerMode( QwtPlotPicker::ActiveOnly );
tracker->setRubberBand( QwtPlotPicker::VLineRubberBand );
}


and nothing more in code.

UPD: When I use the HLineRubberBand is disappeared at moving from top to bottom.
When I use the CrossRubberBand, it always stays visible.

Using QwtPlotPicker::AlwaysOn does not helps.

What is it? Bug or feature.. And, how to do the VLineRubberBand always visible? :)

PS: I use Qwt6.3 (multiaxes) + Qt 5.7 + MSVC2015x86, on Desktop PC in Release build target.

BR,
Denis

Uwe
15th November 2016, 05:58
I can't confirm this on my machine and considering, that this is code that runs since many, many years and nobody ever reported such a problem ...
What about the curvetracker example - it does have such a rubberband. Did you notice these effects there too ?

Uwe

kuzulis
15th November 2016, 08:24
Did you notice these effects there too ?

Yes, I have same effects and with the curvetracker example.

I have reproduced it on different PC's with different GPU's (both PC's have Windows 10 + Qt5.7.0 + MSVC2015).

kuzulis
8th December 2016, 10:30
Hi @Uwe,

do you have any thinks about?

Uwe
8th December 2016, 15:19
As I'm not using Windows and don't see this effect on any of my devices - no.

To identify the reason you could start with increasing the width of the rubberband. Another thing worth to check is what happens if you disable masking of the rubberband ( try NoMask ) in the constructor of QwtPickerRubberband ( qwt_picker.cpp ).

Does this have any effect ?

Uwe