1 // Aseprite
2 // Copyright (C) 2001-2016  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_PATCH_CEL_H_INCLUDED
8 #define APP_CMD_PATCH_CEL_H_INCLUDED
9 #pragma once
10 
11 #include "app/cmd/with_cel.h"
12 #include "app/cmd_sequence.h"
13 #include "gfx/fwd.h"
14 #include "gfx/point.h"
15 
16 namespace doc {
17   class Cel;
18   class Image;
19 }
20 
21 namespace app {
22 namespace cmd {
23 
24   class PatchCel : public CmdSequence
25                  , public WithCel {
26   public:
27     PatchCel(doc::Cel* dstCel,
28              const doc::Image* patch,
29              const gfx::Region& patchedRegion,
30              const gfx::Point& patchPos);
31 
32   protected:
33     void onExecute() override;
34 
35     const doc::Image* m_patch;
36     const gfx::Region& m_region;
37     gfx::Point m_pos;
38   };
39 
40 } // namespace cmd
41 } // namespace app
42 
43 #endif
44