1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
2 
3 /*
4     Rosegarden
5     A MIDI and audio sequencer and musical notation editor.
6     Copyright 2000-2021 the Rosegarden development team.
7 
8     Other copyrights also apply to some parts of this work.  Please
9     see the AUTHORS file and individual file headers for details.
10 
11     This program is free software; you can redistribute it and/or
12     modify it under the terms of the GNU General Public License as
13     published by the Free Software Foundation; either version 2 of the
14     License, or (at your option) any later version.  See the file
15     COPYING included with this distribution for more information.
16 */
17 
18 
19 #include "SegmentCommandRepeat.h"
20 
21 #include "base/Segment.h"
22 #include "SegmentCommand.h"
23 #include <QString>
24 
25 
26 namespace Rosegarden
27 {
28 
SegmentCommandRepeat(const std::vector<Segment * > & segments,bool repeat)29 SegmentCommandRepeat::SegmentCommandRepeat(const std::vector<Segment*>& segments,
30         bool repeat)
31         : SegmentCommand(tr("Repeat Segments"), segments),
32         m_repeatState(repeat)
33 {}
34 
execute()35 void SegmentCommandRepeat::execute()
36 {
37     segmentlist::iterator it;
38 
39     for (it = m_segments.begin(); it != m_segments.end(); ++it)
40         (*it)->setRepeating(m_repeatState);
41 }
42 
unexecute()43 void SegmentCommandRepeat::unexecute()
44 {
45     segmentlist::iterator it;
46 
47     for (it = m_segments.begin(); it != m_segments.end(); ++it)
48         (*it)->setRepeating(!m_repeatState);
49 }
50 
51 }
52