From aa4309637d38369d0af901ef91daf0afd32b840a Mon Sep 17 00:00:00 2001 From: Krisjanis Rijnieks Date: Wed, 17 Aug 2016 21:10:48 +0200 Subject: [PATCH] Add `ScaleSurfaceDnCmd` --- src/Commands/ScaleSurfaceDnCmd.cpp | 23 +++++++++++++++++++++++ src/Commands/ScaleSurfaceDnCmd.h | 25 +++++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 src/Commands/ScaleSurfaceDnCmd.cpp create mode 100644 src/Commands/ScaleSurfaceDnCmd.h diff --git a/src/Commands/ScaleSurfaceDnCmd.cpp b/src/Commands/ScaleSurfaceDnCmd.cpp new file mode 100644 index 0000000..621bf95 --- /dev/null +++ b/src/Commands/ScaleSurfaceDnCmd.cpp @@ -0,0 +1,23 @@ +#include "ScaleSurfaceDnCmd.h" + +namespace ofx { +namespace piMapper { + +ScaleSurfaceDnCmd::ScaleSurfaceDnCmd(BaseSurface * selectedSurface, float by){ + _selectedSurface = selectedSurface; + _by = by; +} + +void ScaleSurfaceDnCmd::exec(){ + ofLogNotice("ScaleSurfaceDnCmd", "exec"); + _selectedSurface->scaleTo(1.0f - _by); +} + +void ScaleSurfaceDnCmd::undo(){ + ofLogNotice("ScaleSurfaceCmd", "undo"); + _selectedSurface->scaleTo(1.0f / (1.0f - _by)); +} + +} // namespace piMapper +} // namespace ofx + diff --git a/src/Commands/ScaleSurfaceDnCmd.h b/src/Commands/ScaleSurfaceDnCmd.h new file mode 100644 index 0000000..2a5900e --- /dev/null +++ b/src/Commands/ScaleSurfaceDnCmd.h @@ -0,0 +1,25 @@ +#pragma once + +#include "BaseCmd.h" +#include "BaseSurface.h" + +namespace ofx { +namespace piMapper { + +class ScaleSurfaceDnCmd : public BaseUndoCmd { + + public: + ScaleSurfaceDnCmd(BaseSurface * selectedSurface, float by); + void exec(); + void undo(); + + private: + BaseSurface * _selectedSurface; + + float _by; + +}; + +} // namespace piMapper +} // namespace ofx +