예제 #1
0
    def canvasReleaseEvent(self, event):
        point = event.pos() - self.dragStart
        if not self.selectionActive or (point.manhattanLength() < QApplication.startDragDistance()):
            self.selectionActive = False
            self.selectFeatures(QgsGeometry.fromPointXY(self.toMapCoordinates(event.pos())), event.modifiers())

        if self.rubberBand is not None and self.selectionActive:
            self.selectFeatures(self.rubberBand.asGeometry(), event.modifiers())
            self.rubberBand.reset()

        self.selectionActive = False

        self.featuresSelected.emit()