Gnats 6066: Initial placement of new SimObj in the OTHER two workspace views [1] Bug Number: 6066 Release notes (y/n): Yes For Release Nums: 7.3 Gnats 6066: Adding objects to one workspace view get misplaced in other views. This commit cleans up the prior implementation of placing a newly created SimObj in the other two workspace views (of Simulation, Geospatial and Accounting). The following algorithm is now implemented: Compute the proportional position based on the canvas extents of the current view and place it in the same place on other views. For example, x=30%,y=20% on this views, so put it at x=30%,y=20% on the other view. Previously, redundant and competing "initial placement in other view" algorithms were implemented in these two methods: void WorkspaceGfxScene::createSimObjByType (int objTypeId, const QPointF& scenePos); bool SimWorkspace::addSimObjAtPosition (SimObj*, int x, int y, CanvasDefs::CanvasGeometry); The latter had been conditionally overriding the first method's object placements, based on the bounding rectangle of the existing objects. The initial placement algorithm is now implemented strictly in the latter method. The existing object bounding rectangle is no longer used in the computation. WE ARE CONSIDERING replacing this "proportional position with respect to scene rectangle" algorithm with one which places the new object relative to the position of two proximate pre-existing SimObjs in the original Workspace view. Also, some initial work was done to support showing each view's QGraphicsScene rectangle in same way we do that for the Output Canvas. This consists of centralizing the calls to QGraphicsScene::setSceneRect() with these two new QtUtils/RwGraphicsScene methods: void setRwSceneRect (qreal x, qreal y, qreal w, qreal h); void setRwSceneRect (const QRectF&); ---