1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-11-23 22:37:55 +02:00

Map objects now use shared_ptr (editor)

This commit is contained in:
Ivan Savenko
2025-03-13 19:42:57 +00:00
parent 0ada2a5ebd
commit dda5c9f13a
14 changed files with 45 additions and 54 deletions

View File

@@ -386,7 +386,7 @@ void MapView::mousePressEvent(QMouseEvent *event)
sc->selectionTerrainView.clear();
sc->selectionTerrainView.draw();
if(sc->selectionObjectsView.newObject && sc->selectionObjectsView.isSelected(sc->selectionObjectsView.newObject))
if(sc->selectionObjectsView.newObject && sc->selectionObjectsView.isSelected(sc->selectionObjectsView.newObject.get()))
{
if(event->button() == Qt::RightButton)
controller->discardObject(sc->level);
@@ -614,11 +614,11 @@ void MapView::dropEvent(QDropEvent * event)
if(sc->selectionObjectsView.newObject)
{
QString errorMsg;
if(controller->canPlaceObject(sc->level, sc->selectionObjectsView.newObject, errorMsg))
if(controller->canPlaceObject(sc->level, sc->selectionObjectsView.newObject.get(), errorMsg))
{
auto * obj = sc->selectionObjectsView.newObject;
auto obj = sc->selectionObjectsView.newObject;
controller->commitObjectCreate(sc->level);
openObjectProperties(obj, false);
openObjectProperties(obj.get(), false);
}
else
{
@@ -643,7 +643,7 @@ void MapView::dragMoveEvent(QDragMoveEvent * event)
if(sc->selectionObjectsView.newObject)
{
sc->selectionObjectsView.shift = QPoint(tile.x, tile.y);
sc->selectionObjectsView.selectObject(sc->selectionObjectsView.newObject);
sc->selectionObjectsView.selectObject(sc->selectionObjectsView.newObject.get());
sc->selectionObjectsView.selectionMode = SelectionObjectsLayer::MOVEMENT;
sc->selectionObjectsView.draw();
}