diff --git a/src/Commands/SetActivePresetCmd.cpp b/src/Commands/SetActivePresetCmd.cpp index d8239cc..5e6c109 100644 --- a/src/Commands/SetActivePresetCmd.cpp +++ b/src/Commands/SetActivePresetCmd.cpp @@ -11,12 +11,15 @@ SetActivePresetCmd::SetActivePresetCmd(Application * app, unsigned int pi){ void SetActivePresetCmd::exec(){ ofLogNotice("SetActivePresetCmd", "exec"); _prevPresetIndex = _app->getSurfaceManager()->getActivePresetIndex(); + _app->getSurfaceManager()->deselectSurface(); + _selectedSurfaceIndex = _app->getSurfaceManager()->getSelectedSurfaceIndex(); _app->getSurfaceManager()->setActivePreset(_newPresetIndex); } void SetActivePresetCmd::undo(){ ofLogNotice("SetActivePresetCmd", "undo"); _app->getSurfaceManager()->setActivePreset(_prevPresetIndex); + _app->getSurfaceManager()->selectSurface(_selectedSurfaceIndex); } } // namespace piMapper diff --git a/src/Commands/SetActivePresetCmd.h b/src/Commands/SetActivePresetCmd.h index cab6988..2f480e6 100644 --- a/src/Commands/SetActivePresetCmd.h +++ b/src/Commands/SetActivePresetCmd.h @@ -25,6 +25,7 @@ class SetActivePresetCmd : public BaseUndoCmd { Application * _app; unsigned int _newPresetIndex; unsigned int _prevPresetIndex; + int _selectedSurfaceIndex; }; } // namespace piMapper