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 #ifdef HAVE_CONFIG_H
8 #include "config.h"
9 #endif
10 
11 #include "app/cmd/set_frame_tag_range.h"
12 
13 #include "doc/frame_tag.h"
14 
15 namespace app {
16 namespace cmd {
17 
SetFrameTagRange(FrameTag * tag,frame_t from,frame_t to)18 SetFrameTagRange::SetFrameTagRange(FrameTag* tag, frame_t from, frame_t to)
19   : WithFrameTag(tag)
20   , m_oldFrom(tag->fromFrame())
21   , m_oldTo(tag->toFrame())
22   , m_newFrom(from)
23   , m_newTo(to)
24 {
25 }
26 
onExecute()27 void SetFrameTagRange::onExecute()
28 {
29   frameTag()->setFrameRange(m_newFrom, m_newTo);
30   frameTag()->incrementVersion();
31 }
32 
onUndo()33 void SetFrameTagRange::onUndo()
34 {
35   frameTag()->setFrameRange(m_oldFrom, m_oldTo);
36   frameTag()->incrementVersion();
37 }
38 
39 } // namespace cmd
40 } // namespace app
41