1 // Aseprite
2 // Copyright (C) 2001-2015  David Capello
3 //
4 // This program is distributed under the terms of
5 // the End-User License Agreement for Aseprite.
6 
7 #ifndef APP_CMD_DESELECT_MASK_H_INCLUDED
8 #define APP_CMD_DESELECT_MASK_H_INCLUDED
9 #pragma once
10 
11 #include "app/cmd.h"
12 #include "app/cmd/with_document.h"
13 #include "base/unique_ptr.h"
14 
15 namespace doc {
16   class Mask;
17 }
18 
19 namespace app {
20 namespace cmd {
21   using namespace doc;
22 
23   class DeselectMask : public Cmd
24                      , public WithDocument {
25   public:
26     DeselectMask(Doc* doc);
27 
28   protected:
29     void onExecute() override;
30     void onUndo() override;
31     size_t onMemSize() const override;
32 
33   private:
34     base::UniquePtr<Mask> m_oldMask;
35   };
36 
37 } // namespace cmd
38 } // namespace app
39 
40 #endif
41