[QGIS-Developer] Override mouse events in Shape Digitizing Toolbar

Catania, Luke A ERDC-RDE-GRL-VA CIV Luke.A.Catania at erdc.dren.mil
Thu May 4 20:17:20 PDT 2023


I have made a few posts here, so this might sound a bit repetitive, but specifies the specific QGIS tool I am using.

I want to override the right mouse click when using the Shape Digitizing Toolbar to end an edit session. I don't want it to end the session unless the shape is if of a specific size.  I tried getting the items on the canvas as the simplest way to get the shape as it is being drawn before becoming a permanent layer based on response to another post I made but I can only get rectangles.  Circles don't seem to return the geometry when getting the canvas QgsGeometryRubberband objects.

I also have installed an event filter on the canvas that handles getting the size of the object being drawn.  It's become a bit of a monster of code, but it works other than when right clicking to end the edit session.  I want to end it on my terms not the terms of what is the Shape Digitizing Toolbar which is just close the edit session and complete the shape.  I can get it to work with a middle mouse click, but I want it to work with the Right mouse and it does not seem my event filter will stop the Shape Digitizing Toolbar from firing it's own end edit session.

Thanks again for the support.  Luke
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20230505/967db29d/attachment-0001.htm>


More information about the QGIS-Developer mailing list