1 
2 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
3 
4 /*
5     Rosegarden
6     A MIDI and audio sequencer and musical notation editor.
7     Copyright 2000-2021 the Rosegarden development team.
8 
9     Other copyrights also apply to some parts of this work.  Please
10     see the AUTHORS file and individual file headers for details.
11 
12     This program is free software; you can redistribute it and/or
13     modify it under the terms of the GNU General Public License as
14     published by the Free Software Foundation; either version 2 of the
15     License, or (at your option) any later version.  See the file
16     COPYING included with this distribution for more information.
17 */
18 
19 #ifndef RG_SEGMENTFORNOTATIONCOMMAND_H
20 #define RG_SEGMENTFORNOTATIONCOMMAND_H
21 
22 #include "base/Segment.h"
23 #include "base/Selection.h"
24 #include "document/Command.h"
25 #include <QString>
26 #include <vector>
27 #include <QCoreApplication>
28 
29 
30 namespace Rosegarden
31 {
32 
33 
34 class SegmentForNotationCommand : public NamedCommand
35 {
36     Q_DECLARE_TR_FUNCTIONS(Rosegarden::SegmentForNotationCommand)
37 
38 public:
39     SegmentForNotationCommand(SegmentSelection &segments,
40 			      const bool flag);
41     ~SegmentForNotationCommand() override;
42 
getGlobalName()43     static QString getGlobalName()
44         { return tr("Change Segment Notation flag..."); }
45 
46     void execute() override;
47     void unexecute() override;
48 protected:
49 
50     std::vector<Segment*>     m_segments;
51     std::vector<bool>         m_oldForNotationFlags;
52     bool                      m_newForNotationFlag;
53 };
54 
55 
56 }
57 
58 #endif
59