QwtPickerMachine is a mealy machine ( http://en.wikipedia.org/wiki/Mealy_machine ), where QwtEventPattern::MousePatternCode/KeyPatternCode defines the input and QwtPickerMachine::Command the output alphabet.
So what you can do on application side is:
- Change the type of machine - mapping an inputs to a command sequence
- change the mapping of mouse/keyboard events to the input alphabet
- implement what to do on the commands ( f.e by overloading QwtPicker::move() )
Not sure if this makes it more understandable when you are unfamiliar with the concept of state machines, but my experience is, that application requirements how to select things on a plot canvas is so different, that a simpler API like for QwtPlotMagnifier would not be enough.
Uwe
Bookmarks