GesturePan is a Gesture implementation able to recognize
pan gestures, those are drags that are locked to happen along one axis.
The axis that a GesturePan handles is defined at construct time, and can be changed through
set_orientation.
When the gesture starts to be recognized, GesturePan will attempt to determine as early as possible whether
the sequence is moving in the expected direction, and denying the sequence if this does not happen.
Once a panning gesture along the expected axis is recognized, the pan signal will be
emitted as input events are received, containing the offset in the given axis.