code: def on_mouse(self, event):
          '''
          implement dragging
          '''
          # print('on_mouse')
          if not event.Dragging():
              self._dragPos = None
              return
          # self.CaptureMouse()
          if not self._dragPos:
              self._dragPos = event.GetPosition()
          else:
              pos = event.GetPosition()
              displacement = self._dragPos - pos
              self.SetPosition( self.GetPosition() - displacement f on_mouse(self, event):
          '''
          implement dragging
          '''
          # print('on_mouse')
          if not event.Dragging():
              self._dragPos = None
              return
          # self.CaptureMouse()
          if not self._dragPos:
              self._dragPos = event.GetPosition()
          else:
              pos = event.GetPosition()
              displacement = self._dragPos - pos
              self.SetPosition( self.GetPosition() - displacement )
docs: implement dragging