[Qgis-developer] Re: Selecting a shape with the mouse?
qlands
supportlists at qlands.com
Thu Sep 23 13:44:00 EDT 2010
Solve it by:
Creating and EmitPoint too;:
mpSelectTool = new QgsMapToolEmitPoint(mpMapCanvas);
mpSelectTool->setAction(selectAct);
Connecting the signal canvasClicked to a custom slot
connect(mpSelectTool,SIGNAL(canvasClicked(QgsPoint,Qt::MouseButton)),this,SLOT(pointSelected(QgsPoint,Qt::MouseButton)));
Custom slot
void browseMap::pointSelected(QgsPoint point, Qt::MouseButton button)
{
QgsPoint end(point);
end.setX(point.x()+0.1);
end.setY(point.y()+0.1);
QgsRectangle rect(point,end); //Very small rectangle because if
point = end QGIS select all shapes
QgsMapLayer * currlayer; //A layer
currlayer = myList[0].layer(); //My layer of interest
if (qobject_cast<QgsVectorLayer *>(currlayer)) //If it is a
shape layer
{
qobject_cast<QgsVectorLayer
*>(currlayer)->select(rect,false); //Select the shape
}
}
Hope this help others.
Carlos.
--
View this message in context: http://osgeo-org.1803224.n2.nabble.com/Selecting-a-shape-with-the-mouse-tp5560908p5564025.html
Sent from the qgis-developer mailing list archive at Nabble.com.
More information about the Qgis-developer
mailing list