From 5daa902430f13d3eb17fa6beae7904ee4cdbfea5 Mon Sep 17 00:00:00 2001 From: Jim Evins Date: Sun, 20 Sep 2015 13:12:36 -0400 Subject: [PATCH] Select top object when objects overlap at cursor position. --- glabels/LabelModel.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/glabels/LabelModel.cpp b/glabels/LabelModel.cpp index 5b2c26f..a96a68f 100644 --- a/glabels/LabelModel.cpp +++ b/glabels/LabelModel.cpp @@ -118,8 +118,12 @@ namespace glabels /// LabelModelObject* LabelModel::objectAt( double scale, double x, double y ) const { - foreach( LabelModelObject* object, mObjectList ) + /* Search object list in reverse order. I.e. from top to bottom. */ + QList::const_iterator it = mObjectList.end(); + while ( it != mObjectList.begin() ) { + it--; + LabelModelObject* object = *it; if ( object->isLocatedAt( scale, x, y ) ) { return object;