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)29SegmentCommandRepeat::SegmentCommandRepeat(const std::vector<Segment*>& segments, 30 bool repeat) 31 : SegmentCommand(tr("Repeat Segments"), segments), 32 m_repeatState(repeat) 33 {} 34 execute()35void 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()43void 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