From c2d3b9fef9f7d820e582c3c3182b2a9f03c952ee Mon Sep 17 00:00:00 2001 From: Krisjanis Rijnieks Date: Sat, 28 Jan 2017 18:34:15 +0100 Subject: [PATCH] Select surface after creation --- src/Commands/AddSurfaceCmd.cpp | 4 ++++ src/Commands/AddSurfaceCmd.h | 1 + 2 files changed, 5 insertions(+) diff --git a/src/Commands/AddSurfaceCmd.cpp b/src/Commands/AddSurfaceCmd.cpp index 05b8756..c81d19c 100644 --- a/src/Commands/AddSurfaceCmd.cpp +++ b/src/Commands/AddSurfaceCmd.cpp @@ -6,16 +6,20 @@ namespace piMapper { AddSurfaceCmd::AddSurfaceCmd(SurfaceManager * sm, SurfaceType surfaceType){ _surfaceManager = sm; _surfaceType = surfaceType; + _selectedSurface = 0; } void AddSurfaceCmd::exec(){ + _selectedSurface = _surfaceManager->getSelectedSurface(); BaseSurface * surface = SurfaceFactory::instance()->createSurface(_surfaceType); _surfaceManager->addSurface(surface); + _surfaceManager->selectSurface(surface); } void AddSurfaceCmd::undo(){ ofLogNotice("AddSurfaceCmd", "undo"); _surfaceManager->removeSurface(); + _surfaceManager->selectSurface(_selectedSurface); } } // namespace piMapper diff --git a/src/Commands/AddSurfaceCmd.h b/src/Commands/AddSurfaceCmd.h index a321cfd..83d2c6f 100644 --- a/src/Commands/AddSurfaceCmd.h +++ b/src/Commands/AddSurfaceCmd.h @@ -21,6 +21,7 @@ class AddSurfaceCmd : public BaseUndoCmd { private: SurfaceManager * _surfaceManager; SurfaceType _surfaceType; + BaseSurface * _selectedSurface; };