Merge pull request #946 from Jojo-Schmitz/enum-class

convert as many "enum" as possible to "enum class", and make them ": char" in the due course #5
This commit is contained in:
Werner Schweer 2014-06-24 16:24:42 +02:00
commit 53f81b3571
64 changed files with 512 additions and 491 deletions

View file

@ -364,7 +364,7 @@ QPointF Articulation::canvasPos() const
void Articulation::draw(QPainter* painter) const
{
SymId sym = _up ? articulationList[int(articulationType())].upSym : articulationList[int(articulationType())].downSym;
int flags = articulationList[int(articulationType())].flags;
ArticulationShowIn flags = articulationList[int(articulationType())].flags;
if (staff()) {
if (staff()->staffGroup() == StaffGroup::TAB) {
if (!(flags & ArticulationShowIn::TABLATURE))

View file

@ -37,7 +37,14 @@ enum class ArticulationAnchor : char {
};
// flags:
enum ArticulationShowIn : char { PITCHED_STAFF = 1, TABLATURE = 2 };
enum class ArticulationShowIn : char { PITCHED_STAFF = 1, TABLATURE = 2 };
constexpr ArticulationShowIn operator| (ArticulationShowIn a1, ArticulationShowIn a2) {
return static_cast<ArticulationShowIn>(static_cast<unsigned char>(a1) | static_cast<unsigned char>(a2));
}
constexpr bool operator& (ArticulationShowIn a1, ArticulationShowIn a2) {
return static_cast<unsigned char>(a1) & static_cast<unsigned char>(a2);
}
struct ArticulationInfo {
SymId upSym;
@ -45,7 +52,7 @@ struct ArticulationInfo {
QString name;
QString description; // translated name
qreal timeStretch; // for fermata
int flags;
ArticulationShowIn flags;
};
//---------------------------------------------------------

View file

@ -43,7 +43,7 @@ enum class SymId : short;
// ElementFlag
//---------------------------------------------------------
enum ElementFlag : char {
enum class ElementFlag : char {
DROP_TARGET = 0x2,
SELECTABLE = 0x4,
MOVABLE = 0x8,
@ -252,17 +252,17 @@ enum class Placement : char {
/// score layout elements.
//
// @P type Ms::ElementType element type, read only
// @P parent Ms::Element* parent in drawing hierarchy
// @P parent Ms::Element* parent in drawing hierarchy
// @P track int
// @P color QColor foreground color
// @P generated bool generated by layout
// @P color QColor foreground color
// @P generated bool generated by layout
// @P visible bool
// @P selected bool
// @P placement Ms::Placement (ABOVE, BELOW)
// @P pos QPointF position relativ to parent
// @P pagePos QPointF position in page coordinated, read only
// @P userOff QPointF manual offset to layout position
// @P bbox QRectF Bounding box relative to pos and userOff, read only
// @P placement Ms::Placement (ABOVE, BELOW)
// @P pos QPointF position relativ to parent
// @P pagePos QPointF position in page coordinated, read only
// @P userOff QPointF manual offset to layout position
// @P bbox QRectF Bounding box relative to pos and userOff, read only
//-------------------------------------------------------------------
class Element : public QObject {
@ -526,7 +526,7 @@ class Element : public QObject {
if (v)
_flags |= f;
else
_flags &= ~f;
_flags &= ~ElementFlags(f);
}
bool flag(ElementFlag f) const { return _flags & f; }
void setFlags(ElementFlags f) { _flags = f; }
@ -539,7 +539,7 @@ class Element : public QObject {
if (v)
_flags |= ElementFlag::DROP_TARGET;
else
_flags &= ~ElementFlag::DROP_TARGET;
_flags &= ~ElementFlags(ElementFlag::DROP_TARGET);
}
virtual bool isMovable() const { return flag(ElementFlag::MOVABLE); }
bool isSegment() const { return flag(ElementFlag::SEGMENT); }

View file

@ -24,7 +24,7 @@ namespace Ms {
ElementLayout::ElementLayout()
{
_align = ALIGN_LEFT | ALIGN_BASELINE;
_align = AlignmentFlags::LEFT | AlignmentFlags::BASELINE;
_offsetType = OffsetType::SPATIUM;
}
@ -60,16 +60,16 @@ void ElementLayout::layout(Element* e) const
h = e->parent()->height();
else
w = e->width();
if (_align & ALIGN_BOTTOM)
if (_align & AlignmentFlags::BOTTOM)
p.setY(h - e->height());
else if (_align & ALIGN_VCENTER)
else if (_align & AlignmentFlags::VCENTER)
p.setY((h - e->height()) * .5);
else if (_align & ALIGN_BASELINE)
else if (_align & AlignmentFlags::BASELINE)
p.setY(-e->baseLine());
if (!frameText) {
if (_align & ALIGN_RIGHT)
if (_align & AlignmentFlags::RIGHT)
p.setX(-w);
else if (_align & ALIGN_HCENTER)
else if (_align & AlignmentFlags::HCENTER)
p.setX(-(w * .5));
}
e->setPos(p + o);
@ -82,24 +82,24 @@ void ElementLayout::layout(Element* e) const
void ElementLayout::writeProperties(Xml& xml, const ElementLayout& l) const
{
if ((l._align & ALIGN_HMASK) != (_align & ALIGN_HMASK)) {
if ((l._align & AlignmentFlags::HMASK) != (_align & AlignmentFlags::HMASK)) {
const char* p;
if (_align & ALIGN_HCENTER)
if (_align & AlignmentFlags::HCENTER)
p = "center";
else if (_align & ALIGN_RIGHT)
else if (_align & AlignmentFlags::RIGHT)
p = "right";
else
p = "left";
xml.tag("halign", p);
}
if ((l._align & ALIGN_VMASK) != (_align & ALIGN_VMASK)) {
if ((l._align & AlignmentFlags::VMASK) != (_align & AlignmentFlags::VMASK)) {
const char* p;
if (_align & ALIGN_BOTTOM)
if (_align & AlignmentFlags::BOTTOM)
p = "bottom";
else if (_align & ALIGN_VCENTER)
else if (_align & AlignmentFlags::VCENTER)
p = "center";
else if (_align & ALIGN_BASELINE)
else if (_align & AlignmentFlags::BASELINE)
p = "baseline";
else
p = "top";
@ -130,17 +130,17 @@ void ElementLayout::writeProperties(Xml& xml, const ElementLayout& l) const
void ElementLayout::writeProperties(Xml& xml) const
{
if (_align & ALIGN_HCENTER)
if (_align & AlignmentFlags::HCENTER)
xml.tag("halign", "center");
else if (_align & ALIGN_RIGHT)
else if (_align & AlignmentFlags::RIGHT)
xml.tag("halign", "right");
else
xml.tag("halign", "left");
if (_align & ALIGN_BOTTOM)
if (_align & AlignmentFlags::BOTTOM)
xml.tag("valign", "bottom");
else if (_align & ALIGN_VCENTER)
else if (_align & AlignmentFlags::VCENTER)
xml.tag("valign", "center");
else if (_align & ALIGN_BASELINE)
else if (_align & AlignmentFlags::BASELINE)
xml.tag("valign", "baseline");
else
xml.tag("valign", "top");
@ -171,11 +171,11 @@ bool ElementLayout::readProperties(XmlReader& e)
if (tag == "halign") {
const QString& val(e.readElementText());
_align &= ~(ALIGN_HCENTER | ALIGN_RIGHT);
_align &= ~(AlignmentFlags::HCENTER | AlignmentFlags::RIGHT);
if (val == "center")
_align |= ALIGN_HCENTER;
_align |= AlignmentFlags::HCENTER;
else if (val == "right")
_align |= ALIGN_RIGHT;
_align |= AlignmentFlags::RIGHT;
else if (val == "left")
;
else
@ -183,13 +183,13 @@ bool ElementLayout::readProperties(XmlReader& e)
}
else if (tag == "valign") {
const QString& val(e.readElementText());
_align &= ~(ALIGN_VCENTER | ALIGN_BOTTOM | ALIGN_BASELINE);
_align &= ~(AlignmentFlags::VCENTER | AlignmentFlags::BOTTOM | AlignmentFlags::BASELINE);
if (val == "center")
_align |= ALIGN_VCENTER;
_align |= AlignmentFlags::VCENTER;
else if (val == "bottom")
_align |= ALIGN_BOTTOM;
_align |= AlignmentFlags::BOTTOM;
else if (val == "baseline")
_align |= ALIGN_BASELINE;
_align |= AlignmentFlags::BASELINE;
else if (val == "top")
;
else
@ -235,10 +235,10 @@ bool ElementLayout::readProperties(XmlReader& e)
void ElementLayout::restyle(const ElementLayout& ol, const ElementLayout& nl)
{
if ((ol._align & ALIGN_HMASK) == (_align & ALIGN_HMASK))
_align |= nl._align & ALIGN_HMASK;
if ((ol._align & ALIGN_VMASK) == (_align & ALIGN_VMASK))
_align |= nl._align & ALIGN_VMASK;
if ((ol._align & AlignmentFlags::HMASK) == (_align & AlignmentFlags::HMASK))
_align |= nl._align & AlignmentFlags::HMASK;
if ((ol._align & AlignmentFlags::VMASK) == (_align & AlignmentFlags::VMASK))
_align |= nl._align & AlignmentFlags::VMASK;
if (ol._offset == _offset)
_offset = nl._offset;
if (_offsetType == ol._offsetType)

View file

@ -916,7 +916,7 @@ FiguredBass::FiguredBass(Score* s)
setOnNote(true);
setTextStyleType(TextStyleType::FIGURED_BASS);
TextStyle st("Figured Bass", g_FBFonts[0].family, score()->styleD(StyleIdx::figuredBassFontSize),
false, false, false, ALIGN_LEFT | ALIGN_TOP, QPointF(0, score()->styleD(StyleIdx::figuredBassYOffset)), OffsetType::SPATIUM);
false, false, false, AlignmentFlags::LEFT | AlignmentFlags::TOP, QPointF(0, score()->styleD(StyleIdx::figuredBassYOffset)), OffsetType::SPATIUM);
st.setSizeIsSpatiumDependent(true);
setTextStyle(st);
setTicks(0);
@ -1008,7 +1008,7 @@ void FiguredBass::layout()
// if 'our' style, force 'our' style data from FiguredBass parameters
if(textStyleType() == TextStyleType::FIGURED_BASS) {
TextStyle st("Figured Bass", g_FBFonts[0].family, score()->styleD(StyleIdx::figuredBassFontSize),
false, false, false, ALIGN_LEFT | ALIGN_TOP, QPointF(0, yOff),
false, false, false, AlignmentFlags::LEFT | AlignmentFlags::TOP, QPointF(0, yOff),
OffsetType::SPATIUM);
st.setSizeIsSpatiumDependent(true);
setTextStyle(st);

View file

@ -134,15 +134,15 @@ QLineF FretDiagram::dragAnchor() const
#if 0 // TODOxx
qreal tw = width();
qreal th = height();
if (_align & ALIGN_BOTTOM)
if (_align & AlignmentFlags::BOTTOM)
y = th;
else if (_align & ALIGN_VCENTER)
else if (_align & AlignmentFlags::VCENTER)
y = (th * .5);
else if (_align & ALIGN_BASELINE)
else if (_align & AlignmentFlags::BASELINE)
y = baseLine();
if (_align & ALIGN_RIGHT)
if (_align & AlignmentFlags::RIGHT)
x = tw;
else if (_align & ALIGN_HCENTER)
else if (_align & AlignmentFlags::HCENTER)
x = (tw * .5);
#endif
return QLineF(p1, abbox().topLeft() + QPointF(x, y));

View file

@ -59,7 +59,7 @@ class HairpinSegment : public LineSegment {
// @@ Hairpin
// @P hairpinType Ms::Hairpin::HairpinType (CRESCENDO, DECRESCENDO)
// @P veloChange int
// @P dynRange Ms::DynamicRange (STAFF, PART, SYSTEM)
// @P dynRange Ms::DynamicRange (STAFF, PART, SYSTEM)
//---------------------------------------------------------
class Hairpin : public SLine {

View file

@ -898,15 +898,15 @@ void Harmony::layout()
yy += textStyle().offset(_spatium).y();
if (!editMode()) {
qreal hb = lineHeight() - Text::baseLine();
if (textStyle().align() & ALIGN_BOTTOM)
if (textStyle().align() & AlignmentFlags::BOTTOM)
yy -= hb;
else if (textStyle().align() & ALIGN_VCENTER) {
else if (textStyle().align() & AlignmentFlags::VCENTER) {
yy -= hb;
yy += (height() * .5);
}
else if (textStyle().align() & ALIGN_BASELINE) {
else if (textStyle().align() & AlignmentFlags::BASELINE) {
}
else { // ALIGN_TOP
else { // AlignmentFlags::TOP
yy -= hb;
yy += height();
}
@ -915,11 +915,11 @@ void Harmony::layout()
qreal xx = textStyle().offset(_spatium).x();
if (!editMode()) {
qreal cw = symWidth(SymId::noteheadBlack);
if (textStyle().align() & ALIGN_RIGHT) {
if (textStyle().align() & AlignmentFlags::RIGHT) {
xx += cw;
xx -= width();
}
else if (textStyle().align() & ALIGN_HCENTER) {
else if (textStyle().align() & AlignmentFlags::HCENTER) {
xx += (cw * .5);
xx -= (width() * .5);
}

View file

@ -215,7 +215,8 @@ bool AccidentalState::tieContext(int line) const
void AccidentalState::setAccidentalVal(int line, AccidentalVal val, bool tieContext)
{
Q_ASSERT(line >= 0 && line < 75);
Q_ASSERT(val >= AccidentalVal::FLAT2 && val <= AccidentalVal::SHARP2);
// casts needed to work around a bug in Xcode 4.2 on Mac, see #25910
Q_ASSERT(int(val) >= int(AccidentalVal::FLAT2) && int(val) <= int(AccidentalVal::SHARP2));
state[line] = (int(val) + 2) | (tieContext ? TIE_CONTEXT : 0);
}
}

View file

@ -70,7 +70,8 @@ class KeySig : public Element {
void setCustom(const QList<KeySym*>& symbols);
virtual void write(Xml&) const;
virtual void read(XmlReader&);
Q_INVOKABLE Key key() const { return _sig.key(); } //@ -7 (flats) -- +7 (sharps)
//@ -7 (flats) -- +7 (sharps)
Q_INVOKABLE Key key() const { return _sig.key(); }
int customType() const { return _sig.customType(); }
bool isCustom() const { return _sig.custom(); }
KeySigEvent keySigEvent() const { return _sig; }

View file

@ -225,9 +225,9 @@ void Lyrics::layout1()
//
// left align if syllable has a number or is a melisma
//
if (_ticks == 0 && (textStyle().align() & ALIGN_HCENTER) && !_verseNumber)
if (_ticks == 0 && (textStyle().align() & AlignmentFlags::HCENTER) && !_verseNumber)
x += symWidth(SymId::noteheadBlack) * .5;
else if (_ticks || ((textStyle().align() & ALIGN_HCENTER) && _verseNumber))
else if (_ticks || ((textStyle().align() & AlignmentFlags::HCENTER) && _verseNumber))
x += width() * .5;
rxpos() += x;
rypos() += y;

View file

@ -103,7 +103,7 @@ void Marker::adjustReadPos()
uo = userOff();
uo.rx() -= segment()->pos().x();
// 1.2 is always HCENTER aligned
if ((textStyle().align() & ALIGN_HMASK) == 0) // ALIGN_LEFT
if ((textStyle().align() & AlignmentFlags::HMASK) == 0) // AlignmentFlags::LEFT
uo.rx() -= bbox().width() * .5;
}
else

View file

@ -126,7 +126,7 @@ Measure::Measure(Score* s)
_timesig(4,4), _len(4,4)
{
_repeatCount = 2;
_repeatFlags = 0;
_repeatFlags = Repeat::NONE;
int n = _score->nstaves();
staves.reserve(n);
@ -3868,7 +3868,7 @@ QVariant Measure::getProperty(P_ID propertyId) const
case P_ID::TIMESIG_ACTUAL:
return QVariant::fromValue(_len);
case P_ID::REPEAT_FLAGS:
return repeatFlags();
return int(repeatFlags());
case P_ID::MEASURE_NUMBER_MODE:
return int(measureNumberMode());
case P_ID::BREAK_MMR:
@ -3900,7 +3900,7 @@ bool Measure::setProperty(P_ID propertyId, const QVariant& value)
_len = value.value<Fraction>();
break;
case P_ID::REPEAT_FLAGS:
setRepeatFlags(value.toInt());
setRepeatFlags(Repeat(value.toInt()));
break;
case P_ID::MEASURE_NUMBER_MODE:
setMeasureNumberMode(MeasureNumberMode(value.toInt()));

View file

@ -74,6 +74,7 @@ struct MStaff {
};
enum Repeat : char {
NONE = 0,
END = 1,
START = 2,
MEASURE = 4,

View file

@ -140,17 +140,17 @@ enum class PlaceText : char {
// AlignmentFlags
//---------------------------------------------------------
enum AlignmentFlags : char {
ALIGN_LEFT = 0,
ALIGN_RIGHT = 1,
ALIGN_HCENTER = 2,
ALIGN_TOP = 0,
ALIGN_BOTTOM = 4,
ALIGN_VCENTER = 8,
ALIGN_BASELINE = 16,
ALIGN_CENTER = ALIGN_HCENTER | ALIGN_VCENTER,
ALIGN_HMASK = ALIGN_LEFT | ALIGN_RIGHT | ALIGN_HCENTER,
ALIGN_VMASK = ALIGN_TOP | ALIGN_BOTTOM | ALIGN_VCENTER | ALIGN_BASELINE
enum class AlignmentFlags : char {
LEFT = 0,
RIGHT = 1,
HCENTER = 2,
TOP = 0,
BOTTOM = 4,
VCENTER = 8,
BASELINE = 16,
CENTER = AlignmentFlags::HCENTER | AlignmentFlags::VCENTER,
HMASK = AlignmentFlags::LEFT | AlignmentFlags::RIGHT | AlignmentFlags::HCENTER,
VMASK = AlignmentFlags::TOP | AlignmentFlags::BOTTOM | AlignmentFlags::VCENTER | AlignmentFlags::BASELINE
};
//---------------------------------------------------------

View file

@ -268,12 +268,12 @@ void Page::drawHeaderFooter(QPainter* p, int area, const QString& ss) const
Align flags;
switch (area) {
case 0: flags = ALIGN_LEFT | ALIGN_TOP; break;
case 1: flags = ALIGN_HCENTER | ALIGN_TOP; break;
case 2: flags = ALIGN_RIGHT | ALIGN_TOP; break;
case 3: flags = ALIGN_LEFT | ALIGN_BOTTOM; break;
case 4: flags = ALIGN_HCENTER | ALIGN_BOTTOM; break;
case 5: flags = ALIGN_RIGHT | ALIGN_BOTTOM; break;
case 0: flags = AlignmentFlags::LEFT | AlignmentFlags::TOP; break;
case 1: flags = AlignmentFlags::HCENTER | AlignmentFlags::TOP; break;
case 2: flags = AlignmentFlags::RIGHT | AlignmentFlags::TOP; break;
case 3: flags = AlignmentFlags::LEFT | AlignmentFlags::BOTTOM; break;
case 4: flags = AlignmentFlags::HCENTER | AlignmentFlags::BOTTOM; break;
case 5: flags = AlignmentFlags::RIGHT | AlignmentFlags::BOTTOM; break;
}
text.textStyle().setAlign(flags);
text.setText(s);

View file

@ -400,7 +400,7 @@ Score::FileError Score::read114(XmlReader& e)
s.setName("Tuplet");
if (s.name() == "Lyrics Odd Lines" || s.name() == "Lyrics Even Lines")
s.setAlign((s.align() & ~ ALIGN_VMASK) | Align(ALIGN_BASELINE));
s.setAlign((s.align() & ~ Align(AlignmentFlags::VMASK)) | AlignmentFlags::BASELINE);
_style.setTextStyle(s);
}

View file

@ -196,7 +196,7 @@ struct Position {
// LayoutFlag bits
//---------------------------------------------------------
enum LayoutFlag : char {
enum class LayoutFlag : char {
FIX_TICKS = 1,
FIX_PITCH_VELO = 2,
PLAY_EVENTS = 4

View file

@ -35,7 +35,7 @@ class System;
// SegmentType
//---------------------------------------------------------
enum class SegmentType {
enum class SegmentType : short {
Invalid = 0x0,
Clef = 0x1, // type from SegClef to SegTimeSig
KeySig = 0x2, // need to be in the order in which they
@ -52,10 +52,10 @@ enum class SegmentType {
};
constexpr SegmentType operator| (SegmentType t1, SegmentType t2) {
return static_cast<SegmentType>(static_cast<int>(t1) | static_cast<int>(t2));
return static_cast<SegmentType>(static_cast<short>(t1) | static_cast<short>(t2));
}
constexpr bool operator& (SegmentType t1, SegmentType t2) {
return static_cast<int>(t1) & static_cast<int>(t2);
return static_cast<short>(t1) & static_cast<short>(t2);
}
//------------------------------------------------------------------------
@ -63,7 +63,7 @@ constexpr bool operator& (SegmentType t1, SegmentType t2) {
/// A segment holds all vertical aligned staff elements.
/// Segments are typed and contain only Elements of the same type.
//
// @P segmentType SegmentType (Invalid, Clef, KeySig, Ambitus, TimeSig, StartRepeatBarLine, BarLine, ChordRest, Breath, EndBarLine TimeSigAnnounce, KeySigAnnounce, All)
// @P segmentType Ms::SegmentType (Invalid, Clef, KeySig, Ambitus, TimeSig, StartRepeatBarLine, BarLine, ChordRest, Breath, EndBarLine TimeSigAnnounce, KeySigAnnounce, All)
//------------------------------------------------------------------------
/**
@ -78,8 +78,7 @@ constexpr bool operator& (SegmentType t1, SegmentType t2) {
class Segment : public Element {
Q_OBJECT
Q_PROPERTY(SegmentType segmentType READ segmentType WRITE setSegmentType)
Q_ENUMS(SegmentType)
Q_PROPERTY(Ms::SegmentType segmentType READ segmentType WRITE setSegmentType)
private:
Segment* _next; // linked list of segments inside a measure

View file

@ -16,7 +16,7 @@
namespace Ms {
class Segment;
enum class SegmentType;
enum class SegmentType : short;
//---------------------------------------------------------
// SegmentList

View file

@ -248,77 +248,77 @@ void initStyle(MStyle* s)
{
// this is an empty style, no offsets are allowed
// never show this style
AS("", ff, 10, false, false, false, ALIGN_LEFT | ALIGN_BASELINE, QPointF(), OS, false,
AS("", ff, 10, false, false, false, AlignmentFlags::LEFT | AlignmentFlags::BASELINE, QPointF(), OS, false,
false, Spatium(.2), Spatium(.5), 25, QColor(Qt::black), false, false, QColor(Qt::black),
QColor(255, 255, 255, 0), TextStyle::Hidden::ALWAYS);
QColor(255, 255, 255, 0), TextStyleHidden::ALWAYS);
AS("Title", ff, 24, false, false, false, ALIGN_HCENTER | ALIGN_TOP, QPointF(), OA);
AS("Subtitle", ff, 14, false, false, false, ALIGN_HCENTER | ALIGN_TOP, QPointF(0, MM(10)), OA);
AS("Composer", ff, 12, false, false, false, ALIGN_RIGHT | ALIGN_BOTTOM, QPointF(), OA);
AS("Lyricist", ff, 12, false, false, false, ALIGN_LEFT | ALIGN_BOTTOM, QPointF(), OA);
AS("Title", ff, 24, false, false, false, AlignmentFlags::HCENTER | AlignmentFlags::TOP, QPointF(), OA);
AS("Subtitle", ff, 14, false, false, false, AlignmentFlags::HCENTER | AlignmentFlags::TOP, QPointF(0, MM(10)), OA);
AS("Composer", ff, 12, false, false, false, AlignmentFlags::RIGHT | AlignmentFlags::BOTTOM, QPointF(), OA);
AS("Lyricist", ff, 12, false, false, false, AlignmentFlags::LEFT | AlignmentFlags::BOTTOM, QPointF(), OA);
AS("Lyrics Odd Lines", ff, 11, false, false, false, ALIGN_HCENTER | ALIGN_BASELINE, QPointF(0, 7), OS, true);
AS("Lyrics Even Lines", ff, 11, false, false, false, ALIGN_HCENTER | ALIGN_BASELINE, QPointF(0, 7), OS, true);
AS("Fingering", ff, 8, false, false, false, ALIGN_CENTER, QPointF(), OA, true);
AS("Instrument Name (Long)", ff, 12, false, false, false, ALIGN_RIGHT | ALIGN_VCENTER, QPointF(), OA, true);
AS("Instrument Name (Short)", ff, 12, false, false, false, ALIGN_RIGHT | ALIGN_VCENTER, QPointF(), OA, true);
AS("Instrument Name (Part)", ff, 18, false, false, false, ALIGN_LEFT | ALIGN_BOTTOM, QPointF(), OA);
AS("Dynamics", ff, 20, false,false,false,ALIGN_HCENTER | ALIGN_BASELINE, QPointF(0.0, 8.0), OS, true);
AS("Technique", ff, 12, false, true, false,ALIGN_LEFT | ALIGN_BASELINE, QPointF(0.0, -2.0), OS);
AS("Lyrics Odd Lines", ff, 11, false, false, false, AlignmentFlags::HCENTER | AlignmentFlags::BASELINE, QPointF(0, 7), OS, true);
AS("Lyrics Even Lines", ff, 11, false, false, false, AlignmentFlags::HCENTER | AlignmentFlags::BASELINE, QPointF(0, 7), OS, true);
AS("Fingering", ff, 8, false, false, false, AlignmentFlags::CENTER, QPointF(), OA, true);
AS("Instrument Name (Long)", ff, 12, false, false, false, AlignmentFlags::RIGHT | AlignmentFlags::VCENTER, QPointF(), OA, true);
AS("Instrument Name (Short)", ff, 12, false, false, false, AlignmentFlags::RIGHT | AlignmentFlags::VCENTER, QPointF(), OA, true);
AS("Instrument Name (Part)", ff, 18, false, false, false, AlignmentFlags::LEFT | AlignmentFlags::BOTTOM, QPointF(), OA);
AS("Dynamics", ff, 20, false,false,false, AlignmentFlags::HCENTER | AlignmentFlags::BASELINE, QPointF(0.0, 8.0), OS, true);
AS("Technique", ff, 12, false, true, false, AlignmentFlags::LEFT | AlignmentFlags::BASELINE, QPointF(0.0, -2.0), OS);
AS("Tempo", ff, 12, false, false, false,ALIGN_LEFT | ALIGN_BASELINE, QPointF(0, -4.0), OS,
AS("Tempo", ff, 12, false, false, false, AlignmentFlags::LEFT | AlignmentFlags::BASELINE, QPointF(0, -4.0), OS,
true, false, Spatium(.2), Spatium(.5), 0, Qt::black, false, true);
AS("Metronome", ff, 12, true, false, false, ALIGN_LEFT);
AS("Measure Number", ff, 8, false, false, false,ALIGN_HCENTER | ALIGN_BOTTOM, QPointF(.0, -2.0), OS, true);
AS("Translator", ff, 11, false, false, false, ALIGN_HCENTER | ALIGN_TOP, QPointF(0, 6));
AS("Tuplet", ff, 10, false, true, false, ALIGN_CENTER, QPointF(), OA, true);
AS("Metronome", ff, 12, true, false, false, AlignmentFlags::LEFT);
AS("Measure Number", ff, 8, false, false, false,AlignmentFlags::HCENTER | AlignmentFlags::BOTTOM, QPointF(.0, -2.0), OS, true);
AS("Translator", ff, 11, false, false, false, AlignmentFlags::HCENTER | AlignmentFlags::TOP, QPointF(0, 6));
AS("Tuplet", ff, 10, false, true, false, AlignmentFlags::CENTER, QPointF(), OA, true);
AS("System", ff, 10, false, false, false,
ALIGN_LEFT, QPointF(0, -4.0), OS, true,
AlignmentFlags::LEFT, QPointF(0, -4.0), OS, true,
false, Spatium(.2), Spatium(.5), 25, Qt::black, false, true);
AS("Staff", ff, 10, false, false, false, ALIGN_LEFT, QPointF(0, -4.0), OS, true);
AS("Chord Symbol", ff, 12, false, false, false, ALIGN_LEFT | ALIGN_BASELINE, QPointF(), OS, true);
AS("Staff", ff, 10, false, false, false, AlignmentFlags::LEFT, QPointF(0, -4.0), OS, true);
AS("Chord Symbol", ff, 12, false, false, false, AlignmentFlags::LEFT | AlignmentFlags::BASELINE, QPointF(), OS, true);
AS("Rehearsal Mark", ff, 14, true, false, false,
ALIGN_HCENTER | ALIGN_BASELINE, QPointF(0, -3.0), OS, true,
AlignmentFlags::HCENTER | AlignmentFlags::BASELINE, QPointF(0, -3.0), OS, true,
true, Spatium(.2), Spatium(.5), 20, Qt::black, false, true);
AS("Repeat Text Left", ff, 20, false, false, false,
ALIGN_LEFT | ALIGN_BASELINE, QPointF(0, -2.0), OS, true,
AlignmentFlags::LEFT | AlignmentFlags::BASELINE, QPointF(0, -2.0), OS, true,
false, Spatium(.2), Spatium(.5), 25, Qt::black, false, true);
AS("Repeat Text Right", ff, 12, false, false, false,
ALIGN_RIGHT | ALIGN_BASELINE, QPointF(0, -2.0), OS, true,
AlignmentFlags::RIGHT | AlignmentFlags::BASELINE, QPointF(0, -2.0), OS, true,
false, Spatium(0.2), Spatium(0.5), 25, Qt::black, false, true);
AS("Repeat Text", ff, 12, false, false, false, // for backward compatibility
ALIGN_HCENTER | ALIGN_BASELINE, QPointF(0, -2.0), OS, true,
AlignmentFlags::HCENTER | AlignmentFlags::BASELINE, QPointF(0, -2.0), OS, true,
false, Spatium(0.2), Spatium(0.5), 25, Qt::black, false, true);
// y offset may depend on voltaHook style element
AS("Volta", ff, 11, true, false, false, ALIGN_LEFT | ALIGN_BASELINE, QPointF(0.5, 1.9), OS, true);
AS("Frame", ff, 12, false, false, false, ALIGN_LEFT | ALIGN_TOP);
AS("Text Line", ff, 20, false, false, false, ALIGN_LEFT | ALIGN_VCENTER, QPointF(), OS, true);
AS("Glissando", ff, 8, false, true, false, ALIGN_HCENTER | ALIGN_BASELINE, QPointF(), OS, true);
AS("Volta", ff, 11, true, false, false, AlignmentFlags::LEFT | AlignmentFlags::BASELINE, QPointF(0.5, 1.9), OS, true);
AS("Frame", ff, 12, false, false, false, AlignmentFlags::LEFT | AlignmentFlags::TOP);
AS("Text Line", ff, 20, false, false, false, AlignmentFlags::LEFT | AlignmentFlags::VCENTER, QPointF(), OS, true);
AS("Glissando", ff, 8, false, true, false, AlignmentFlags::HCENTER | AlignmentFlags::BASELINE, QPointF(), OS, true);
AS("String Number", ff, 8, false, false, false,
ALIGN_CENTER, QPointF(0, -5.0), OS, true,
AlignmentFlags::CENTER, QPointF(0, -5.0), OS, true,
true, Spatium(.1), Spatium(.2), 0, Qt::black, true, false);
AS("Ottava", ff, 12, false, true, false, ALIGN_LEFT | ALIGN_VCENTER, QPointF(), OS, true);
AS("Bend", ff, 8, false, false, false, ALIGN_CENTER | ALIGN_BOTTOM, QPointF(), OS, true);
AS("Header", ff, 8, false, false, false, ALIGN_HCENTER | ALIGN_TOP);
AS("Footer", ff, 8, false, false, false, ALIGN_HCENTER | ALIGN_BOTTOM, QPointF(0.0, MM(5)), OA);
AS("Instrument Change", ff, 12, true, false, false, ALIGN_LEFT | ALIGN_BOTTOM, QPointF(0, -3.0), OS, true);
AS("Lyrics Verse", ff, 11, false, false, false,ALIGN_RIGHT | ALIGN_TOP, QPointF(), OS, true);
AS("Ottava", ff, 12, false, true, false, AlignmentFlags::LEFT | AlignmentFlags::VCENTER, QPointF(), OS, true);
AS("Bend", ff, 8, false, false, false, AlignmentFlags::CENTER | AlignmentFlags::BOTTOM, QPointF(), OS, true);
AS("Header", ff, 8, false, false, false, AlignmentFlags::HCENTER | AlignmentFlags::TOP);
AS("Footer", ff, 8, false, false, false, AlignmentFlags::HCENTER | AlignmentFlags::BOTTOM, QPointF(0.0, MM(5)), OA);
AS("Instrument Change", ff, 12, true, false, false, AlignmentFlags::LEFT | AlignmentFlags::BOTTOM, QPointF(0, -3.0), OS, true);
AS("Lyrics Verse", ff, 11, false, false, false,AlignmentFlags::RIGHT | AlignmentFlags::TOP, QPointF(), OS, true);
AS("Figured Bass", "MScoreBC", 8, false, false, false,
ALIGN_LEFT | ALIGN_TOP, QPointF(0, 6), OS, true,
AlignmentFlags::LEFT | AlignmentFlags::TOP, QPointF(0, 6), OS, true,
false, Spatium(0.0), Spatium(0.0), 25, QColor(Qt::black), false, // default params
false, QColor(Qt::black), QColor(255, 255, 255, 0), // default params
TextStyle::Hidden::IN_EDITOR); // don't show in Style Editor
TextStyleHidden::IN_EDITOR); // don't show in Style Editor
#undef MM
#undef OA
@ -583,7 +583,7 @@ StyleData::~StyleData()
TextStyle::TextStyle()
{
d = new TextStyleData;
_hidden = Hidden::NEVER;
_hidden = TextStyleHidden::NEVER;
}
TextStyle::TextStyle(QString _name, QString _family, qreal _size,
@ -592,7 +592,7 @@ TextStyle::TextStyle(QString _name, QString _family, qreal _size,
const QPointF& _off, OffsetType _ot,
bool sd,
bool hasFrame, Spatium fw, Spatium pw, int fr, QColor co, bool _circle, bool _systemFlag,
QColor fg, QColor bg, Hidden hidden)
QColor fg, QColor bg, TextStyleHidden hidden)
{
d = new TextStyleData(_name, _family, _size,
_bold, _italic, _underline, _align, _off, _ot,

View file

@ -27,22 +27,25 @@ class Element;
class TextStyleData;
enum class TextStyleHidden : unsigned char {
NEVER = 0,
IN_EDITOR = 1,
IN_LISTS = 2,
ALWAYS = 0xFF
};
constexpr bool operator& (TextStyleHidden h1, TextStyleHidden h2) {
return static_cast<unsigned char>(h1) & static_cast<unsigned char>(h2);
}
//---------------------------------------------------------
// TextStyle
//---------------------------------------------------------
class TextStyle {
public:
enum Hidden : unsigned char {
NEVER = 0,
IN_EDITOR = 1,
IN_LISTS = 2,
ALWAYS = 0xFF
};
private:
QSharedDataPointer<TextStyleData> d;
Hidden _hidden; // read-only parameter for text style visibility in various program places
TextStyleHidden _hidden; // read-only parameter for text style visibility in various program places
public:
TextStyle();
@ -54,7 +57,7 @@ class TextStyle {
bool sd = false,
bool hasFrame = false, Spatium fw = Spatium(0.2), Spatium pw = Spatium(0.5), int fr = 25,
QColor co = QColor(Qt::black), bool circle = false, bool systemFlag = false,
QColor fg = QColor(Qt::black), QColor bg = QColor(255, 255, 255, 0), Hidden hidden = Hidden::NEVER);
QColor fg = QColor(Qt::black), QColor bg = QColor(255, 255, 255, 0), TextStyleHidden hidden = TextStyleHidden::NEVER);
TextStyle(const TextStyle&);
~TextStyle();
@ -106,7 +109,7 @@ class TextStyle {
void setSystemFlag(bool v);
void setForegroundColor(const QColor& v);
void setBackgroundColor(const QColor& v);
Hidden hidden() const { return _hidden; }
TextStyleHidden hidden() const { return _hidden; }
void write(Xml& xml) const;
void writeProperties(Xml& xml) const;
void writeProperties(Xml& xml, const TextStyle&) const;

View file

@ -288,11 +288,11 @@ void TextBlock::layout(Text* t)
}
}
qreal rx;
if (t->textStyle().align() & ALIGN_RIGHT)
if (t->textStyle().align() & AlignmentFlags::RIGHT)
rx = layoutWidth-_bbox.right();
else if (t->textStyle().align() & ALIGN_HCENTER)
else if (t->textStyle().align() & AlignmentFlags::HCENTER)
rx = (layoutWidth - (_bbox.left() + _bbox.right())) * .5;
else // ALIGN_LEFT
else // AlignmentFlags::LEFT
rx = -_bbox.left();
rx += lm;
for (TextFragment& f : _text)
@ -1190,11 +1190,11 @@ void Text::layout1()
}
}
if (textStyle().align() & ALIGN_BOTTOM)
if (textStyle().align() & AlignmentFlags::BOTTOM)
yoff += h-bb.bottom();
else if (textStyle().align() & ALIGN_VCENTER)
else if (textStyle().align() & AlignmentFlags::VCENTER)
yoff += (h - (bb.top() + bb.bottom())) * .5;
else if (textStyle().align() & ALIGN_BASELINE)
else if (textStyle().align() & AlignmentFlags::BASELINE)
yoff += h * .5 - _layout.front().lineSpacing();
else
yoff += -bb.top();

View file

@ -48,7 +48,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Open..."),
QT_TRANSLATE_NOOP("action","File open"),
QT_TRANSLATE_NOOP("action","Load score from file"),
fileOpen_ICON
Icons::fileOpen_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT | STATE_LYRICS_EDIT | STATE_PLAY,
@ -57,7 +57,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Save"),
QT_TRANSLATE_NOOP("action","File save"),
QT_TRANSLATE_NOOP("action","Save score to file"),
fileSave_ICON
Icons::fileSave_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT | STATE_LYRICS_EDIT | STATE_PLAY,
@ -66,7 +66,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Save As..."),
QT_TRANSLATE_NOOP("action","File save as"),
QT_TRANSLATE_NOOP("action","Save score under a new file name"),
fileSaveAs_ICON
Icons::fileSaveAs_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT | STATE_LYRICS_EDIT | STATE_PLAY,
@ -75,7 +75,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Save Selection..."),
QT_TRANSLATE_NOOP("action","Save Selection"),
QT_TRANSLATE_NOOP("action","Save current selection as new score"),
fileSaveAs_ICON
Icons::fileSaveAs_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT | STATE_LYRICS_EDIT | STATE_PLAY,
@ -92,7 +92,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Export..."),
QT_TRANSLATE_NOOP("action","Export score"),
QT_TRANSLATE_NOOP("action","Save a copy of the score in various formats"),
fileSave_ICON
Icons::fileSave_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT | STATE_LYRICS_EDIT | STATE_PLAY,
@ -101,7 +101,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Export Parts..."),
QT_TRANSLATE_NOOP("action","Export Parts"),
QT_TRANSLATE_NOOP("action","Save a copy of the score's parts in various formats"),
fileSave_ICON
Icons::fileSave_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT | STATE_LYRICS_EDIT | STATE_PLAY,
@ -119,7 +119,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","New..."),
QT_TRANSLATE_NOOP("action","File new"),
QT_TRANSLATE_NOOP("action","Create new score"),
fileNew_ICON
Icons::fileNew_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_LYRICS_EDIT | STATE_PLAY,
@ -128,7 +128,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Print..."),
QT_TRANSLATE_NOOP("action","Print"),
QT_TRANSLATE_NOOP("action","Print score"),
print_ICON
Icons::print_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT,
@ -138,7 +138,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Undo"),
QT_TRANSLATE_NOOP("action","Undo"),
QT_TRANSLATE_NOOP("action","Undo last change"),
undo_ICON
Icons::undo_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT,
@ -148,21 +148,21 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Redo"),
QT_TRANSLATE_NOOP("action","Redo"),
QT_TRANSLATE_NOOP("action","Redo last undo"),
redo_ICON
Icons::redo_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT | STATE_TEXT_EDIT | STATE_LYRICS_EDIT,
0,
"cut",
QT_TRANSLATE_NOOP("action","Cut"),
cut_ICON
Icons::cut_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT | STATE_TEXT_EDIT |STATE_LYRICS_EDIT | STATE_FOTO,
0,
"copy",
QT_TRANSLATE_NOOP("action","Copy"),
copy_ICON
Icons::copy_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT | STATE_TEXT_EDIT |STATE_LYRICS_EDIT,
@ -170,7 +170,7 @@ Shortcut Shortcut::sc[] = {
"paste",
Qt::ApplicationShortcut,
QT_TRANSLATE_NOOP("action","Paste"),
paste_ICON
Icons::paste_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -185,7 +185,7 @@ Shortcut Shortcut::sc[] = {
"note-input",
QT_TRANSLATE_NOOP("action","Note Input"),
QT_TRANSLATE_NOOP("action","Note input mode"),
noteEntry_ICON
Icons::noteEntry_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -465,7 +465,7 @@ Shortcut Shortcut::sc[] = {
"rest",
QT_TRANSLATE_NOOP("action","Rest"),
QT_TRANSLATE_NOOP("action","Enter rest"),
quartrest_ICON
Icons::quartrest_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -524,7 +524,7 @@ Shortcut Shortcut::sc[] = {
ShortcutFlags::A_CMD,
"flip",
QT_TRANSLATE_NOOP("action","Flip direction"),
flip_ICON
Icons::flip_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM,
@ -844,7 +844,7 @@ Shortcut Shortcut::sc[] = {
0,
"insert-measure",
QT_TRANSLATE_NOOP("action","Insert One Measure"),
measure_ICON
Icons::measure_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -858,14 +858,14 @@ Shortcut Shortcut::sc[] = {
0,
"insert-hbox",
QT_TRANSLATE_NOOP("action","Insert Horizontal Frame"),
hframe_ICON
Icons::hframe_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
0,
"insert-textframe",
QT_TRANSLATE_NOOP("action","Insert Text Frame"),
tframe_ICON
Icons::tframe_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -878,14 +878,14 @@ Shortcut Shortcut::sc[] = {
0,
"insert-fretframe",
QT_TRANSLATE_NOOP("action","Insert Fretboard Diagram Frame"),
fframe_ICON
Icons::fframe_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
0,
"insert-vbox",
QT_TRANSLATE_NOOP("action","Insert Vertical Frame"),
vframe_ICON
Icons::vframe_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -961,7 +961,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Longa"),
QT_TRANSLATE_NOOP("action","Note duration: longa"),
QT_TRANSLATE_NOOP("action","Longa"),
longaUp_ICON
Icons::longaUp_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM | STATE_NOTE_ENTRY_TAB,
@ -970,7 +970,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Double whole note"),
QT_TRANSLATE_NOOP("action","Note duration: double whole"),
QT_TRANSLATE_NOOP("action","Double whole note"),
brevis_ICON
Icons::brevis_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM | STATE_NOTE_ENTRY_TAB,
@ -979,7 +979,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Whole note"),
QT_TRANSLATE_NOOP("action","Note duration: whole"),
QT_TRANSLATE_NOOP("action","Whole note"),
note_ICON
Icons::note_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM | STATE_NOTE_ENTRY_TAB,
@ -988,7 +988,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Half note"),
QT_TRANSLATE_NOOP("action","Note duration: half"),
QT_TRANSLATE_NOOP("action","Half note"),
note2_ICON
Icons::note2_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM | STATE_NOTE_ENTRY_TAB,
@ -997,7 +997,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Quarter note"),
QT_TRANSLATE_NOOP("action","Note duration: quarter"),
QT_TRANSLATE_NOOP("action","Quarter note"),
note4_ICON
Icons::note4_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM | STATE_NOTE_ENTRY_TAB,
@ -1006,7 +1006,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","8th note"),
QT_TRANSLATE_NOOP("action","Note duration: 8th"),
QT_TRANSLATE_NOOP("action","8th note"),
note8_ICON
Icons::note8_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM | STATE_NOTE_ENTRY_TAB,
@ -1015,7 +1015,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","16th note"),
QT_TRANSLATE_NOOP("action","Note duration: 16th"),
QT_TRANSLATE_NOOP("action","16th note"),
note16_ICON
Icons::note16_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM | STATE_NOTE_ENTRY_TAB,
@ -1024,7 +1024,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","32nd note"),
QT_TRANSLATE_NOOP("action","Note duration: 32nd"),
QT_TRANSLATE_NOOP("action","32nd note"),
note32_ICON
Icons::note32_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM | STATE_NOTE_ENTRY_TAB,
@ -1033,7 +1033,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","64th note"),
QT_TRANSLATE_NOOP("action","Note duration: 64th"),
QT_TRANSLATE_NOOP("action","64th note"),
note64_ICON
Icons::note64_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM | STATE_NOTE_ENTRY_TAB,
@ -1042,7 +1042,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","128th note"),
QT_TRANSLATE_NOOP("action","Note duration: 128th"),
QT_TRANSLATE_NOOP("action","128th note"),
note128_ICON
Icons::note128_ICON
),
Shortcut(
STATE_NOTE_ENTRY,
@ -1065,7 +1065,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Augmentation dot"),
QT_TRANSLATE_NOOP("action","Note duration: augmentation dot"),
QT_TRANSLATE_NOOP("action","Augmentation dot"),
dot_ICON
Icons::dot_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1074,7 +1074,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Double augmentation dot"),
QT_TRANSLATE_NOOP("action","Note duration: double augmentation dot"),
QT_TRANSLATE_NOOP("action","Double augmentation dot"),
dotdot_ICON
Icons::dotdot_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1083,7 +1083,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Tie"),
QT_TRANSLATE_NOOP("action","Note duration: tie"),
QT_TRANSLATE_NOOP("action","Tie"),
tie_ICON
Icons::tie_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM,
@ -1092,7 +1092,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Rest"),
QT_TRANSLATE_NOOP("action","Note entry: rest"),
QT_TRANSLATE_NOOP("action","Rest"),
quartrest_ICON
Icons::quartrest_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM,
@ -1101,7 +1101,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Double sharp"),
QT_TRANSLATE_NOOP("action","Note entry: double sharp"),
QT_TRANSLATE_NOOP("action","Double sharp"),
sharpsharp_ICON
Icons::sharpsharp_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM,
@ -1110,7 +1110,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Sharp"),
QT_TRANSLATE_NOOP("action","Note entry: sharp"),
QT_TRANSLATE_NOOP("action","Sharp"),
sharp_ICON
Icons::sharp_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM,
@ -1119,7 +1119,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Natural"),
QT_TRANSLATE_NOOP("action","Note entry: natural"),
QT_TRANSLATE_NOOP("action","Natural"),
natural_ICON
Icons::natural_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM,
@ -1128,7 +1128,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Flat"),
QT_TRANSLATE_NOOP("action","Note entry: flat"),
QT_TRANSLATE_NOOP("action","Flat"),
flat_ICON
Icons::flat_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM,
@ -1137,7 +1137,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Double flat"),
QT_TRANSLATE_NOOP("action","Note entry: double flat"),
QT_TRANSLATE_NOOP("action","Double flat"),
flatflat_ICON
Icons::flatflat_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1146,7 +1146,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Acciaccatura"),
QT_TRANSLATE_NOOP("action","Add acciaccatura"),
QT_TRANSLATE_NOOP("action","Acciaccatura"),
acciaccatura_ICON
Icons::acciaccatura_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1155,7 +1155,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Appoggiatura"),
QT_TRANSLATE_NOOP("action","Add appoggiatura"),
QT_TRANSLATE_NOOP("action","Appoggiatura"),
appoggiatura_ICON
Icons::appoggiatura_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1165,7 +1165,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Grace: quarter"),
QT_TRANSLATE_NOOP("action","Add quarter grace note"),
QT_TRANSLATE_NOOP("action","Grace: quarter"),
grace4_ICON
Icons::grace4_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1175,7 +1175,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Grace: 16th"),
QT_TRANSLATE_NOOP("action","Add 16th grace note"),
QT_TRANSLATE_NOOP("action","Grace: 16th"),
grace16_ICON
Icons::grace16_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1185,7 +1185,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Grace: 32nd"),
QT_TRANSLATE_NOOP("action","Add 32nd grace note"),
QT_TRANSLATE_NOOP("action","Grace: 32nd"),
grace32_ICON
Icons::grace32_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1195,7 +1195,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Grace: 8th after"),
QT_TRANSLATE_NOOP("action","Add 8th grace note after"),
QT_TRANSLATE_NOOP("action","Grace: 8th after"),
grace8after_ICON
Icons::grace8after_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1205,7 +1205,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Grace: 16th after"),
QT_TRANSLATE_NOOP("action","Add 16th grace note after"),
QT_TRANSLATE_NOOP("action","Grace: 16th after"),
grace16after_ICON
Icons::grace16after_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1215,7 +1215,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Grace: 32nd after"),
QT_TRANSLATE_NOOP("action","Add 32nd grace note after"),
QT_TRANSLATE_NOOP("action","Grace: 32nd after"),
grace32after_ICON
Icons::grace32after_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1224,7 +1224,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","1"),
QT_TRANSLATE_NOOP("action","Voice 1"),
QT_TRANSLATE_NOOP("action","Voice 1")
// voice1_ICON
// Icons::voice1_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1233,7 +1233,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","2"),
QT_TRANSLATE_NOOP("action","Voice 2"),
QT_TRANSLATE_NOOP("action","Voice 2")
// voice2_ICON
// Icons::voice2_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1242,7 +1242,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","3"),
QT_TRANSLATE_NOOP("action","Voice 3"),
QT_TRANSLATE_NOOP("action","Voice 3")
// voice3_ICON
// Icons::voice3_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1251,7 +1251,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","4"),
QT_TRANSLATE_NOOP("action","Voice 4"),
QT_TRANSLATE_NOOP("action","Voice 4")
// voice4_ICON
// Icons::voice4_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1260,63 +1260,63 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","MIDI input"),
QT_TRANSLATE_NOOP("action","Enable MIDI input"),
QT_TRANSLATE_NOOP("action","Enable MIDI input"),
midiin_ICON
Icons::midiin_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
ShortcutFlags::A_CMD,
"beam-start",
QT_TRANSLATE_NOOP("action","Beam start"),
sbeam_ICON
Icons::sbeam_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
ShortcutFlags::A_CMD,
"beam-mid",
QT_TRANSLATE_NOOP("action","Beam middle"),
mbeam_ICON
Icons::mbeam_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
ShortcutFlags::A_CMD,
"no-beam",
QT_TRANSLATE_NOOP("action","No beam"),
nbeam_ICON
Icons::nbeam_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
ShortcutFlags::A_CMD,
"beam32",
QT_TRANSLATE_NOOP("action","Beam 32nd sub"),
beam32_ICON
Icons::beam32_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
0,
"beam64",
QT_TRANSLATE_NOOP("action","Beam 64th sub"),
beam64_ICON
Icons::beam64_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
0,
"auto-beam",
QT_TRANSLATE_NOOP("action","Auto beam"),
abeam_ICON
Icons::abeam_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
0,
"fbeam1",
QT_TRANSLATE_NOOP("action","Feathered beam, slower"),
fbeam1_ICON
Icons::fbeam1_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
0,
"fbeam2",
QT_TRANSLATE_NOOP("action","Feathered beam, faster"),
fbeam2_ICON
Icons::fbeam2_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT | STATE_LYRICS_EDIT | STATE_PLAY,
@ -1482,7 +1482,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Play"),
QT_TRANSLATE_NOOP("action","Player play"),
QT_TRANSLATE_NOOP("action","Start or stop playback"),
play_ICON
Icons::play_ICON
),
Shortcut(
STATE_PLAY,
@ -1526,7 +1526,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Rewind"),
QT_TRANSLATE_NOOP("action","Player rewind"),
QT_TRANSLATE_NOOP("action","Rewind to start position"),
start_ICON
Icons::start_ICON
),
Shortcut(
STATE_PLAY,
@ -1541,7 +1541,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Play repeats"),
QT_TRANSLATE_NOOP("action","Toggle repeats playback"),
QT_TRANSLATE_NOOP("action","Play repeats"),
repeat_ICON
Icons::repeat_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_PLAY,
@ -1550,7 +1550,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Pan"),
QT_TRANSLATE_NOOP("action","Toggle pan score"),
QT_TRANSLATE_NOOP("action","Pan score during playback"),
pan_ICON
Icons::pan_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_PLAY,
@ -1558,7 +1558,7 @@ Shortcut Shortcut::sc[] = {
"load-style",
QT_TRANSLATE_NOOP("action","Load Style..."),
QT_TRANSLATE_NOOP("action","Load style"),
fileOpen_ICON
Icons::fileOpen_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_PLAY,
@ -1566,14 +1566,14 @@ Shortcut Shortcut::sc[] = {
"save-style",
QT_TRANSLATE_NOOP("action","Save Style..."),
QT_TRANSLATE_NOOP("action","Save style"),
fileSave_ICON
Icons::fileSave_ICON
),
/* Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_PLAY,
A_SCORE,
"save-default-style",
QT_TRANSLATE_NOOP("action","Save Style as Default..."),
fileSave_ICON
Icons::fileSave_ICON
),
*/
Shortcut (
@ -1651,7 +1651,7 @@ Shortcut Shortcut::sc[] = {
0,
"repeat-cmd",
QT_TRANSLATE_NOOP("action","Repeat last command"),
fileOpen_ICON
Icons::fileOpen_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1734,7 +1734,7 @@ Shortcut Shortcut::sc[] = {
"show-keys",
QT_TRANSLATE_NOOP("action","Insert Special Characters..."),
QT_TRANSLATE_NOOP("action","Insert Special Characters"),
keys_ICON
Icons::keys_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1796,7 +1796,7 @@ Shortcut Shortcut::sc[] = {
ShortcutFlags::A_CMD,
"mirror-note",
QT_TRANSLATE_NOOP("action","Mirror note head"),
flip_ICON
Icons::flip_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -1857,7 +1857,7 @@ Shortcut Shortcut::sc[] = {
0,
"repeat-sel",
QT_TRANSLATE_NOOP("action","Repeat selection"),
fileOpen_ICON
Icons::fileOpen_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_PLAY,
@ -1866,7 +1866,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Pan piano roll"),
QT_TRANSLATE_NOOP("action","Toggle pan piano roll"),
QT_TRANSLATE_NOOP("action","Pan roll during playback"),
pan_ICON
Icons::pan_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_PLAY,
@ -1912,7 +1912,7 @@ Shortcut Shortcut::sc[] = {
0,
"fotomode",
QT_TRANSLATE_NOOP("action","Toggle foto mode"),
fotomode_ICON
Icons::fotomode_ICON
),
#ifdef OMR
Shortcut(
@ -1933,14 +1933,14 @@ Shortcut Shortcut::sc[] = {
0,
"hraster",
QT_TRANSLATE_NOOP("action","Enable horizontal raster"),
hraster_ICON
Icons::hraster_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT | STATE_LYRICS_EDIT,
0,
"vraster",
QT_TRANSLATE_NOOP("action","Enable vertical raster"),
vraster_ICON
Icons::vraster_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_EDIT | STATE_LYRICS_EDIT,
@ -1955,7 +1955,7 @@ Shortcut Shortcut::sc[] = {
Qt::ApplicationShortcut,
QT_TRANSLATE_NOOP("action","Re-Pitch Mode"),
QT_TRANSLATE_NOOP("action","Replace pitches without changing rhythms"),
repitch_ICON
Icons::repitch_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -2031,7 +2031,7 @@ Shortcut Shortcut::sc[] = {
"musescore-connect",
Qt::ApplicationShortcut,
QT_TRANSLATE_NOOP("action", "MuseScore Connect"),
community_ICON
Icons::community_ICON
),
Shortcut(
STATE_ALL,
@ -2077,7 +2077,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Loop"),
QT_TRANSLATE_NOOP("action","Toggle loop playback"),
QT_TRANSLATE_NOOP("action","Loop playback"),
loop_ICON
Icons::loop_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_PLAY,
@ -2086,7 +2086,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Loop in"),
QT_TRANSLATE_NOOP("action","Set loop In position"),
QT_TRANSLATE_NOOP("action","Set loop In position"),
loopIn_ICON
Icons::loopIn_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_PLAY,
@ -2095,7 +2095,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Loop out"),
QT_TRANSLATE_NOOP("action","Set loop Out position"),
QT_TRANSLATE_NOOP("action","Set loop Out position"),
loopOut_ICON
Icons::loopOut_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_PLAY | STATE_EDIT | STATE_LYRICS_EDIT,
@ -2104,7 +2104,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Metronome"),
QT_TRANSLATE_NOOP("action","Toggle metronome playback"),
QT_TRANSLATE_NOOP("action","Play metronome during playback"),
metronome_ICON
Icons::metronome_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY | STATE_PLAY | STATE_EDIT | STATE_LYRICS_EDIT,
@ -2113,7 +2113,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Count-in"),
QT_TRANSLATE_NOOP("action","Toggle count-in playback"),
QT_TRANSLATE_NOOP("action","Play count-in at playback start"),
countin_ICON
Icons::countin_ICON
),
Shortcut(
STATE_NORMAL | STATE_NOTE_ENTRY,
@ -2199,7 +2199,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Longa (TAB)"),
QT_TRANSLATE_NOOP("action","Note duration: longa (TAB)"),
QT_TRANSLATE_NOOP("action","Longa"),
longaUp_ICON
Icons::longaUp_ICON
),
Shortcut(
STATE_NEVER,
@ -2208,7 +2208,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Double whole note (TAB)"),
QT_TRANSLATE_NOOP("action","Note duration: double whole (TAB)"),
QT_TRANSLATE_NOOP("action","Double whole note"),
brevis_ICON
Icons::brevis_ICON
),
Shortcut(
STATE_NEVER,
@ -2217,7 +2217,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Whole note (TAB)"),
QT_TRANSLATE_NOOP("action","Note duration: whole (TAB)"),
QT_TRANSLATE_NOOP("action","Whole note"),
note_ICON
Icons::note_ICON
),
Shortcut(
STATE_NEVER,
@ -2226,7 +2226,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Half note (TAB)"),
QT_TRANSLATE_NOOP("action","Note duration: half (TAB)"),
QT_TRANSLATE_NOOP("action","Half note"),
note2_ICON
Icons::note2_ICON
),
Shortcut(
STATE_NEVER,
@ -2235,7 +2235,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","Quarter note (TAB)"),
QT_TRANSLATE_NOOP("action","Note duration: quarter (TAB)"),
QT_TRANSLATE_NOOP("action","Quarter note"),
note4_ICON
Icons::note4_ICON
),
Shortcut(
STATE_NEVER,
@ -2244,7 +2244,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","8th note (TAB)"),
QT_TRANSLATE_NOOP("action","Note duration: 8th (TAB)"),
QT_TRANSLATE_NOOP("action","8th note"),
note8_ICON
Icons::note8_ICON
),
Shortcut(
STATE_NEVER,
@ -2253,7 +2253,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","16th note (TAB)"),
QT_TRANSLATE_NOOP("action","Note duration: 16th (TAB)"),
QT_TRANSLATE_NOOP("action","16th note"),
note16_ICON
Icons::note16_ICON
),
Shortcut(
STATE_NEVER,
@ -2262,7 +2262,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","32nd note (TAB)"),
QT_TRANSLATE_NOOP("action","Note duration: 32nd (TAB)"),
QT_TRANSLATE_NOOP("action","32nd note"),
note32_ICON
Icons::note32_ICON
),
Shortcut(
STATE_NEVER,
@ -2271,7 +2271,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","64th note (TAB)"),
QT_TRANSLATE_NOOP("action","Note duration: 64th (TAB)"),
QT_TRANSLATE_NOOP("action","64th note"),
note64_ICON
Icons::note64_ICON
),
Shortcut(
STATE_NEVER,
@ -2280,7 +2280,7 @@ Shortcut Shortcut::sc[] = {
QT_TRANSLATE_NOOP("action","128th note (TAB)"),
QT_TRANSLATE_NOOP("action","Note duration: 128th (TAB)"),
QT_TRANSLATE_NOOP("action","128th note"),
note128_ICON
Icons::note128_ICON
),
Shortcut(
STATE_NOTE_ENTRY_TAB,
@ -2302,7 +2302,7 @@ Shortcut Shortcut::sc[] = {
"rest-TAB",
QT_TRANSLATE_NOOP("action","Rest (TAB)"),
QT_TRANSLATE_NOOP("action","Enter rest (TAB)"),
quartrest_ICON
Icons::quartrest_ICON
),
Shortcut(
STATE_NOTE_ENTRY_TAB,
@ -2525,7 +2525,7 @@ Shortcut Shortcut::sc[] = {
ShortcutFlags::A_CMD,
"add-brackets",
QT_TRANSLATE_NOOP("action","Add brackets to note head"),
brackets_ICON
Icons::brackets_ICON
),
Shortcut(
STATE_NORMAL,

View file

@ -593,7 +593,7 @@ AlsaAudio::AlsaAudio(Seq* s)
: Driver(s)
{
alsa = 0;
state = Seq::TRANSPORT_STOP;
state = Transport::STOP;
seekflag = false;
midiDriver = 0;
}
@ -769,7 +769,7 @@ void AlsaAudio::disconnect(void* /*src*/, void* /*dst*/)
void AlsaAudio::startTransport()
{
state = Seq::TRANSPORT_PLAY;
state = Transport::PLAY;
}
//---------------------------------------------------------
@ -778,14 +778,14 @@ void AlsaAudio::startTransport()
void AlsaAudio::stopTransport()
{
state = Seq::TRANSPORT_STOP;
state = Transport::STOP;
}
//---------------------------------------------------------
// getState
//---------------------------------------------------------
int AlsaAudio::getState()
Transport AlsaAudio::getState()
{
return state;
}

View file

@ -40,6 +40,7 @@ typedef struct pollfd PollFd;
namespace Ms {
class MidiDriver;
enum class Transport : char;
//---------------------------------------------------------
// AlsaDriver
@ -111,7 +112,7 @@ class AlsaAudio : public Driver {
pthread_t thread;
AlsaDriver* alsa;
volatile int runAlsa;
int state;
Transport state;
bool seekflag;
MidiDriver* midiDriver;
@ -132,7 +133,7 @@ class AlsaAudio : public Driver {
virtual bool isRealtime() const { return false; }
virtual void startTransport();
virtual void stopTransport();
virtual int getState();
virtual Transport getState() override;
virtual int sampleRate() const;
void alsaLoop();
void write(int n, void* l);

View file

@ -233,7 +233,7 @@ static void processBasicDrawObj(QList<BasicDrawObj*> objects, Segment* s, int tr
// qDebug("setText %s (%f %f)(%f %f) <%s>",
// qPrintable(st->font().family()),
// st->pos().x(), st->pos().y(), p.x(), p.y(), qPrintable(st->text()));
text->textStyle().setAlign(ALIGN_LEFT | ALIGN_BASELINE);
text->textStyle().setAlign(AlignmentFlags::LEFT | AlignmentFlags::BASELINE);
text->setTrack(track);
s->add(text);
}

View file

@ -26,6 +26,7 @@ namespace Ms {
class Seq;
class Event;
class NPlayEvent;
enum class Transport : char;
//---------------------------------------------------------
// Driver
@ -45,7 +46,7 @@ class Driver {
virtual QList<QString> inputPorts() { return QList<QString>(); }
virtual void stopTransport() = 0;
virtual void startTransport() = 0;
virtual int getState() = 0;
virtual Transport getState() = 0;
virtual int sampleRate() const = 0;
virtual void registerPort(const QString& /*name*/, bool /*input*/, bool /*midi*/) {}
virtual void unregisterPort(int) {}

View file

@ -29,7 +29,7 @@
namespace Ms {
enum { COL_PITCH, COL_NOTE, COL_SHORTCUT, COL_NAME };
enum Column : char { PITCH, NOTE, SHORTCUT, NAME };
//---------------------------------------------------------
// noteHeadNames
@ -94,15 +94,15 @@ void EditDrumset::updateList()
pitchList->clear();
for (int i = 0; i < 128; ++i) {
QTreeWidgetItem* item = new QTreeWidgetItem(pitchList);
item->setText(COL_PITCH, QString("%1").arg(i));
item->setText(COL_NOTE, pitch2string(i));
item->setText(Column::PITCH, QString("%1").arg(i));
item->setText(Column::NOTE, pitch2string(i));
if (nDrumset.shortcut(i) == 0)
item->setText(COL_SHORTCUT, "");
item->setText(Column::SHORTCUT, "");
else {
QString s(QChar(nDrumset.shortcut(i)));
item->setText(COL_SHORTCUT, s);
item->setText(Column::SHORTCUT, s);
}
item->setText(COL_NAME, qApp->translate("drumset", qPrintable(nDrumset.name(i))));
item->setText(Column::NAME, qApp->translate("drumset", qPrintable(nDrumset.name(i))));
item->setData(0, Qt::UserRole, i);
}
}
@ -113,12 +113,12 @@ void EditDrumset::updateList2()
QTreeWidgetItem* item = pitchList->topLevelItem(i);
int pitch = item->data(0, Qt::UserRole).toInt();
if (nDrumset.shortcut(pitch) == 0)
item->setText(COL_SHORTCUT, "");
item->setText(Column::SHORTCUT, "");
else {
QString s(QChar(nDrumset.shortcut(pitch)));
item->setText(COL_SHORTCUT, s);
item->setText(Column::SHORTCUT, s);
}
item->setText(COL_NAME, qApp->translate("drumset", qPrintable(nDrumset.name(pitch))));
item->setText(Column::NAME, qApp->translate("drumset", qPrintable(nDrumset.name(pitch))));
item->setData(0, Qt::UserRole, pitch);
}
}
@ -131,7 +131,7 @@ void EditDrumset::nameChanged(const QString& name)
{
QTreeWidgetItem* item = pitchList->currentItem();
if (item)
item->setText(COL_NAME, name);
item->setText(Column::NAME, name);
}
//---------------------------------------------------------
@ -144,7 +144,7 @@ void EditDrumset::shortcutChanged()
if (!item)
return;
int pitch = item->data(COL_PITCH, Qt::UserRole).toInt();
int pitch = item->data(Column::PITCH, Qt::UserRole).toInt();
int sc;
if (shortcut->currentIndex() == 7)
sc = 0;
@ -163,9 +163,9 @@ void EditDrumset::shortcutChanged()
}
nDrumset.drum(pitch).shortcut = sc;
if (shortcut->currentIndex() == 7)
item->setText(COL_SHORTCUT, "");
item->setText(Column::SHORTCUT, "");
else
item->setText(COL_SHORTCUT, shortcut->currentText());
item->setText(Column::SHORTCUT, shortcut->currentText());
}
updateList2();
}
@ -224,7 +224,7 @@ void EditDrumset::itemChanged(QTreeWidgetItem* current, QTreeWidgetItem* previou
else
nDrumset.drum(pitch).shortcut = "ABCDEFG"[shortcut->currentIndex()];
nDrumset.drum(pitch).stemDirection = Direction(stemDirection->currentIndex());
previous->setText(COL_NAME, qApp->translate("drumset", qPrintable(nDrumset.name(pitch))));
previous->setText(Column::NAME, qApp->translate("drumset", qPrintable(nDrumset.name(pitch))));
}
if (current == 0)
return;
@ -265,7 +265,7 @@ void EditDrumset::valueChanged()
{
if(!pitchList->currentItem())
return;
int pitch = pitchList->currentItem()->data(COL_PITCH, Qt::UserRole).toInt();
int pitch = pitchList->currentItem()->data(Column::PITCH, Qt::UserRole).toInt();
nDrumset.drum(pitch).name = name->text();
nDrumset.drum(pitch).notehead = NoteHeadGroup(noteHead->currentIndex() - 1);
nDrumset.drum(pitch).line = staffLine->value();

View file

@ -48,7 +48,7 @@ EditStyle::EditStyle(Score* s, QWidget* parent)
lstyle = *s->style();
setModal(true);
chordDescriptionFileButton->setIcon(*icons[fileOpen_ICON]);
chordDescriptionFileButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
pageList->setCurrentRow(0);

View file

@ -46,7 +46,7 @@ ChordStyleEditor::ChordStyleEditor(QWidget* parent)
setWindowTitle(tr("MuseScore: Chord Symbols Style Editor"));
setWindowFlags(this->windowFlags() & ~Qt::WindowContextHelpButtonHint);
fileButton->setIcon(*icons[fileOpen_ICON]);
fileButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
chordList = 0;
score = 0;

View file

@ -33,7 +33,7 @@ HelpBrowser::HelpBrowser(QWidget* parent)
QHBoxLayout* bl = new QHBoxLayout;
QToolButton* home = new QToolButton;
home->setIcon(QIcon(*icons[goHome_ICON]));
home->setIcon(QIcon(*icons[int(Icons::goHome_ICON)]));
bl->addWidget(home);
connect(home, SIGNAL(clicked()), SLOT(homeClicked()));
@ -41,12 +41,12 @@ HelpBrowser::HelpBrowser(QWidget* parent)
QToolButton* previous = new QToolButton;
previous->setDefaultAction(view->pageAction(QWebPage::Back));
previous->setIcon(QIcon(*icons[goPrevious_ICON]));
previous->setIcon(QIcon(*icons[int(Icons::goPrevious_ICON)]));
bl->addWidget(previous);
QToolButton* next = new QToolButton;
next->setDefaultAction(view->pageAction(QWebPage::Forward));
next->setIcon(QIcon(*icons[goNext_ICON]));
next->setIcon(QIcon(*icons[int(Icons::goNext_ICON)]));
bl->addWidget(next);
bl->addStretch(10);
@ -54,7 +54,7 @@ HelpBrowser::HelpBrowser(QWidget* parent)
QToolButton* reload = new QToolButton;
QAction * reloadAction = view->pageAction(QWebPage::Reload);
//for an unknown reason setting icon on the QToolButton doesn't work here...
reloadAction->setIcon(QIcon(*icons[viewRefresh_ICON]));
reloadAction->setIcon(QIcon(*icons[int(Icons::viewRefresh_ICON)]));
reload->setDefaultAction(reloadAction);
bl->addWidget(reload);

View file

@ -30,7 +30,7 @@
namespace Ms {
extern QString iconPath;
QIcon* icons[ICONS];
QIcon* icons[int(Icons::ICONS)];
//---------------------------------------------------------
// genIcons
@ -147,7 +147,7 @@ static const char* iconNames[] = {
void genIcons()
{
for (int i = 0; i < voice1_ICON; ++i) {
for (int i = 0; i < int(Icons::voice1_ICON); ++i) {
QIcon* icon = new QIcon(new MIconEngine);
icon->addFile(iconPath + iconNames[i]);
icons[i] = icon;
@ -160,7 +160,7 @@ void genIcons()
int iw = preferences.iconHeight * 2 / 3; // 16;
int ih = preferences.iconHeight; // 24;
for (int i = 0; i < VOICES; ++i) {
icons[voice1_ICON + i] = new QIcon;
icons[int(Icons::voice1_ICON) + i] = new QIcon;
QPixmap image(iw, ih);
QColor c(MScore::selectColor[i].lighter(180));
image.fill(c);
@ -170,7 +170,7 @@ void genIcons()
painter.setPen(QPen(Qt::black));
painter.drawText(QRect(0, 0, iw, ih), Qt::AlignCenter, vtext[i]);
painter.end();
icons[voice1_ICON +i]->addPixmap(image);
icons[int(Icons::voice1_ICON) +i]->addPixmap(image);
painter.begin(&image);
c = QColor(MScore::selectColor[i].lighter(140));
@ -178,7 +178,7 @@ void genIcons()
painter.setPen(QPen(Qt::black));
painter.drawText(QRect(0, 0, iw, ih), Qt::AlignCenter, vtext[i]);
painter.end();
icons[voice1_ICON + i]->addPixmap(image, QIcon::Normal, QIcon::On);
icons[int(Icons::voice1_ICON) + i]->addPixmap(image, QIcon::Normal, QIcon::On);
}
}
}

View file

@ -25,7 +25,8 @@ namespace Ms {
extern void genIcons();
enum { longaUp_ICON, brevis_ICON, note_ICON, note2_ICON, note4_ICON, note8_ICON, note16_ICON,
enum class Icons : signed char { Invalid_ICON = -1,
longaUp_ICON, brevis_ICON, note_ICON, note2_ICON, note4_ICON, note8_ICON, note16_ICON,
note32_ICON, note64_ICON, note128_ICON,
natural_ICON, sharp_ICON, sharpsharp_ICON, flat_ICON, flatflat_ICON,
quartrest_ICON, dot_ICON, dotdot_ICON,
@ -56,7 +57,7 @@ enum { longaUp_ICON, brevis_ICON, note_ICON, note2_ICON, note4_ICON, note8_ICON,
ICONS
};
extern QIcon* icons[ICONS];
extern QIcon* icons[];
} // namespace Ms
#endif

View file

@ -906,7 +906,7 @@ qDebug("BeginRepeat=============================================");
QString name = readPascalString(40);
int strings = readInt();
if (strings <= 0 || strings > GP_MAX_STRING_NUMBER)
throw GP_BAD_NUMBER_OF_STRINGS ;
throw GuitarProError::GP_BAD_NUMBER_OF_STRINGS ;
for (int j = 0; j < strings; ++j)
tuning[j] = readInt();
for (int j = strings; j < GP_MAX_STRING_NUMBER; ++j)
@ -1484,7 +1484,7 @@ void GuitarPro3::read(QFile* fp)
QString name = readPascalString(40);
int strings = readInt();
if (strings <= 0 || strings > GP_MAX_STRING_NUMBER)
throw GP_BAD_NUMBER_OF_STRINGS ;
throw GuitarProError::GP_BAD_NUMBER_OF_STRINGS ;
for (int j = 0; j < strings; ++j)
tuning[j] = readInt();
for (int j = strings; j < GP_MAX_STRING_NUMBER; ++j)
@ -2164,7 +2164,7 @@ void GuitarPro4::read(QFile* fp)
QString name = readPascalString(40);
int strings = readInt();
if (strings <= 0 || strings > GP_MAX_STRING_NUMBER)
throw GP_BAD_NUMBER_OF_STRINGS ;
throw GuitarProError::GP_BAD_NUMBER_OF_STRINGS ;
for (int j = 0; j < strings; ++j)
tuning[j] = readInt();
for (int j = strings; j < GP_MAX_STRING_NUMBER; ++j)
@ -3008,7 +3008,7 @@ void GuitarPro5::readTracks()
int strings = readInt();
if (strings <= 0 || strings > GP_MAX_STRING_NUMBER)
throw GP_BAD_NUMBER_OF_STRINGS ;
throw GuitarProError::GP_BAD_NUMBER_OF_STRINGS ;
for (int j = 0; j < strings; ++j) {
tuning[j] = readInt();
}

View file

@ -123,7 +123,7 @@ class GuitarPro {
int measures;
QList<GpBar> bars;
enum GuitarProError { GP_NO_ERROR, GP_UNKNOWN_FORMAT,
enum class GuitarProError : char { GP_NO_ERROR, GP_UNKNOWN_FORMAT,
GP_EOF, GP_BAD_NUMBER_OF_STRINGS
};

View file

@ -2874,7 +2874,7 @@ void MusicXml::direction(Measure* measure, int staff, QDomElement e)
}
else {
Symbol* s = new Symbol(score);
s->setAlign(ALIGN_LEFT | ALIGN_BASELINE);
s->setAlign(AlignmentFlags::LEFT | AlignmentFlags::BASELINE);
s->setOffsetType(OffsetType::SPATIUM);
if (type == "start")
s->setSym(SymId::keyboardPedalPed);

View file

@ -572,7 +572,7 @@ void InspectorText::setElement()
const QList<TextStyle>& ts = score->style()->textStyles();
int n = ts.size();
for (int i = 0; i < n; ++i) {
if (!(ts.at(i).hidden() & TextStyle::Hidden::IN_LISTS) )
if (!(ts.at(i).hidden() & TextStyleHidden::IN_LISTS) )
t.style->addItem(ts.at(i).name(), i);
}
t.style->blockSignals(false);
@ -617,7 +617,7 @@ void InspectorTempoText::setElement()
const QList<TextStyle>& ts = score->style()->textStyles();
int n = ts.size();
for (int i = 0; i < n; ++i) {
if (!(ts.at(i).hidden() & TextStyle::Hidden::IN_LISTS) )
if (!(ts.at(i).hidden() & TextStyleHidden::IN_LISTS) )
t.style->addItem(ts.at(i).name(), i);
}
t.style->blockSignals(false);
@ -670,7 +670,7 @@ void InspectorDynamic::setElement()
const QList<TextStyle>& ts = score->style()->textStyles();
int n = ts.size();
for (int i = 0; i < n; ++i) {
if (!(ts.at(i).hidden() & TextStyle::Hidden::IN_LISTS) )
if (!(ts.at(i).hidden() & TextStyleHidden::IN_LISTS) )
t.style->addItem(ts.at(i).name(), i);
}
t.style->blockSignals(false);

View file

@ -17,7 +17,7 @@
namespace Ms {
enum {
enum AmbitusControl : char {
COLOR, VISIBLE, OFF_X, OFF_Y, // Element controls
HEADGROUP, HEADTYPE, DIRECTION, // Range controls
HASLINE,
@ -119,9 +119,9 @@ void InspectorAmbitus::setElement()
Ambitus* range = static_cast<Range*>(inspector->element());
// int octave = range->topPitch() / 12;
// static_cast<QSpinBox*>(iList[TOPOCTAVE].w)->setValue(octave);
// static_cast<QSpinBox*>(iList[AmbitusControl::TOPOCTAVE].w)->setValue(octave);
// octave = range->bottomPitch() / 12;
// static_cast<QSpinBox*>(iList[BOTTOMOCTAVE].w)->setValue(octave);
// static_cast<QSpinBox*>(iList[AmbitusControl::BOTTOMOCTAVE].w)->setValue(octave);
// InspectorBase::setElement();
}
*/
@ -134,7 +134,7 @@ void InspectorAmbitus::valueChanged(int idx)
InspectorBase::valueChanged(idx);
// if either tpc or octave is changed, notes can have been swapped
// (to keep top above bottom): reload data
if (idx >= TOPTPC && idx <= BOTTOMOCTAVE) {
if (idx >= AmbitusControl::TOPTPC && idx <= AmbitusControl::BOTTOMOCTAVE) {
setElement();
}
}
@ -151,6 +151,6 @@ void Ms::InspectorAmbitus::updateRange()
range->updateRange();
range->layout(); // redo layout
setElement(); // set Inspector values to range properties
valueChanged(TOPTPC); // force score to notice new range properties
valueChanged(AmbitusControl::TOPTPC); // force score to notice new range properties
}

View file

@ -18,7 +18,7 @@
namespace Ms {
enum {
enum ImageControl : char {
COLOR, VISIBLE, OFF_X, OFF_Y, // Element controls
AUTOSCALE, SIZE_W, SIZE_H, SCALE_W, SCALE_H, // Image controls
LOCK_RATIO, SIZE_IS_SPATIUM
@ -104,14 +104,14 @@ void InspectorImage::valueChanged(int idx)
QDoubleSpinBox* b3 = b.scaleWidth;
QDoubleSpinBox* b4 = b.scaleHeight;
Image* image = static_cast<Image*>(inspector->element());
if (idx == AUTOSCALE) {
if (idx == ImageControl::AUTOSCALE) {
bool v = !b.autoscale->isChecked();
b1->setEnabled(v);
b2->setEnabled(v);
b.scaleWidth->setEnabled(v);
b.scaleHeight->setEnabled(v);
}
if (idx == SIZE_W) {
if (idx == ImageControl::SIZE_W) {
if (b.lockAspectRatio->isChecked()) {
QSizeF sz = image->getProperty(P_ID::SIZE).toSizeF();
qreal ratio = sz.width() / sz.height();
@ -123,7 +123,7 @@ void InspectorImage::valueChanged(int idx)
}
updateScaleFromSize(QSizeF(b1->value(), b2->value()));
}
else if (idx == SIZE_H) {
else if (idx == ImageControl::SIZE_H) {
if (b.lockAspectRatio->isChecked()) {
QSizeF sz = image->getProperty(P_ID::SIZE).toSizeF();
qreal ratio = sz.width() / sz.height();
@ -131,43 +131,43 @@ void InspectorImage::valueChanged(int idx)
b1->blockSignals(true);
b1->setValue(w);
b1->blockSignals(false);
InspectorBase::valueChanged(SIZE_W);
InspectorBase::valueChanged(ImageControl::SIZE_W);
}
updateScaleFromSize(QSizeF(b1->value(), b2->value()));
}
else if (idx == SCALE_W) {
else if (idx == ImageControl::SCALE_W) {
if (b.lockAspectRatio->isChecked()) {
/* LOCK_RATIO keeps original ratio:
// NEEDS case "else if(idx == LOCK_RATIO) ..." to restore original ratio on checking LOCK_RATIO
/* ImageControl::LOCK_RATIO keeps original ratio:
// NEEDS case "else if(idx == ImageControl::LOCK_RATIO) ..." to restore original ratio on checking ImageControl::LOCK_RATIO
b4->blockSignals(true);
b4->setValue(b3->value());
b4->blockSignals(false);*/
/* LOCK_RATIO keeps current ratio: */
/* ImageControl::LOCK_RATIO keeps current ratio: */
QSizeF sz = inspector->element()->getProperty(P_ID::SCALE).toSizeF();
qreal ratio = sz.width() / sz.height();
qreal w = b3->value() / ratio;
b4->blockSignals(true);
b4->setValue(w);
b4->blockSignals(false);
InspectorBase::valueChanged(SCALE_H);
InspectorBase::valueChanged(ImageControl::SCALE_H);
}
updateSizeFromScale(QSizeF(b3->value(), b4->value()));
}
else if (idx == SCALE_H) {
if (b.lockAspectRatio->isChecked()) {
/* LOCK_RATIO keeps original ratio:
// NEEDS case "else if(idx == LOCK_RATIO) ..." to restore original ratio on checking LOCK_RATIO
/* ImageControl::LOCK_RATIO keeps original ratio:
// NEEDS case "else if(idx == ImageControl::LOCK_RATIO) ..." to restore original ratio on checking ImageControl::LOCK_RATIO
b3->blockSignals(true);
b3->setValue(b4->value());
b3->blockSignals(false);*/
/* LOCK_RATIO keeps current ratio: */
/* ImageControl::LOCK_RATIO keeps current ratio: */
QSizeF sz = inspector->element()->getProperty(P_ID::SCALE).toSizeF();
qreal ratio = sz.width() / sz.height();
qreal w = b4->value() * ratio;
b3->blockSignals(true);
b3->setValue(w);
b3->blockSignals(false);
InspectorBase::valueChanged(SCALE_W);
InspectorBase::valueChanged(ImageControl::SCALE_W);
}
updateSizeFromScale(QSizeF(b3->value(), b4->value()));
}

View file

@ -56,7 +56,7 @@ void InspectorJump::setElement()
const QList<TextStyle>& ts = score->style()->textStyles();
int n = ts.size();
for (int i = 0; i < n; ++i) {
if (!(ts.at(i).hidden() & TextStyle::Hidden::IN_LISTS) )
if (!(ts.at(i).hidden() & TextStyleHidden::IN_LISTS) )
t.style->addItem(ts.at(i).name(), i);
}
t.style->blockSignals(false);

View file

@ -55,7 +55,7 @@ void InspectorMarker::setElement()
const QList<TextStyle>& ts = score->style()->textStyles();
int n = ts.size();
for (int i = 0; i < n; ++i) {
if (!(ts.at(i).hidden() & TextStyle::Hidden::IN_LISTS) )
if (!(ts.at(i).hidden() & TextStyleHidden::IN_LISTS) )
t.style->addItem(ts.at(i).name(), i);
}
t.style->blockSignals(false);

View file

@ -156,7 +156,7 @@ void StaffListItem::setClef(const ClefTypeList& val)
void StaffListItem::setLinked(bool val)
{
_linked = val;
setIcon(3, _linked ? *icons[checkmark_ICON] : QIcon() );
setIcon(3, _linked ? *icons[int(Icons::checkmark_ICON)] : QIcon() );
}
//---------------------------------------------------------

View file

@ -529,16 +529,16 @@ void JackAudio::stopTransport()
// getState
//---------------------------------------------------------
int JackAudio::getState()
Transport JackAudio::getState()
{
jack_position_t pos;
int transportState = jack_transport_query(client, &pos);
switch (transportState) {
case JackTransportStopped: return Seq::TRANSPORT_STOP;
case JackTransportStopped: return Transport::STOP;
case JackTransportLooping:
case JackTransportRolling: return Seq::TRANSPORT_PLAY;
case JackTransportRolling: return Transport::PLAY;
default:
return Seq::TRANSPORT_STOP;
return Transport::STOP;
}
}

View file

@ -61,7 +61,7 @@ class JackAudio : public Driver {
virtual bool isRealtime() const { return jack_is_realtime(client); }
virtual void startTransport();
virtual void stopTransport();
virtual int getState();
virtual Transport getState() override;
virtual int sampleRate() const { return jack_get_sample_rate(client); }
virtual void putEvent(const NPlayEvent&, unsigned framePos);
virtual void midiRead();

View file

@ -39,8 +39,8 @@ MediaDialog::MediaDialog(QWidget* /*parent*/)
setupUi(this);
setWindowFlags(this->windowFlags() & ~Qt::WindowContextHelpButtonHint);
setWindowTitle(tr("MuseScore: Additional Media"));
scanFileButton->setIcon(*icons[fileOpen_ICON]);
audioFileButton->setIcon(*icons[fileOpen_ICON]);
scanFileButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
audioFileButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
connect(addScan, SIGNAL(clicked()), SLOT(addScanPressed()));
connect(removeScan, SIGNAL(clicked()), SLOT(removeScanPressed()));

View file

@ -2836,7 +2836,7 @@ AboutBoxDialog::AboutBoxDialog()
revisionLabel->setText(tr("Revision: %1").arg(revision));
setWindowFlags(this->windowFlags() & ~Qt::WindowContextHelpButtonHint);
#ifdef MSCORE_UNSTABLE
copyRevisionButton->setIcon(*icons[copy_ICON]);
copyRevisionButton->setIcon(*icons[int(Icons::copy_ICON)]);
connect(copyRevisionButton, SIGNAL(clicked()), this, SLOT(copyRevisionToClipboard()));
#else
copyRevisionButton->hide();
@ -4898,7 +4898,7 @@ int main(int argc, char* av[])
genIcons();
if (!converterMode)
qApp->setWindowIcon(*icons[window_ICON]);
qApp->setWindowIcon(*icons[int(Icons::window_ICON)]);
Workspace::initWorkspace();
mscore = new MuseScore();
mscoreCore = mscore;

View file

@ -57,7 +57,7 @@ Portaudio::Portaudio(Seq* s)
{
_sampleRate = 48000; // will be replaced by device default sample rate
initialized = false;
state = Seq::TRANSPORT_STOP;
state = Transport::STOP;
seekflag = false;
midiDriver = 0;
}
@ -279,7 +279,7 @@ int Portaudio::framePos() const
void Portaudio::startTransport()
{
state = Seq::TRANSPORT_PLAY;
state = Transport::PLAY;
}
//---------------------------------------------------------
@ -288,14 +288,14 @@ void Portaudio::startTransport()
void Portaudio::stopTransport()
{
state = Seq::TRANSPORT_STOP;
state = Transport::STOP;
}
//---------------------------------------------------------
// getState
//---------------------------------------------------------
int Portaudio::getState()
Transport Portaudio::getState()
{
return state;
}

View file

@ -28,6 +28,7 @@ namespace Ms {
class Synth;
class Seq;
class MidiDriver;
enum class Transport : char;
//---------------------------------------------------------
// Portaudio
@ -37,7 +38,7 @@ class Portaudio : public Driver {
bool initialized;
int _sampleRate;
int state;
Transport state;
bool seekflag;
unsigned pos;
double startTime;
@ -53,7 +54,7 @@ class Portaudio : public Driver {
virtual QList<QString> inputPorts();
virtual void startTransport();
virtual void stopTransport();
virtual int getState();
virtual Transport getState() override;
virtual int sampleRate() const { return _sampleRate; }
virtual void registerPort(const QString& name, bool input, bool midi);
virtual void unregisterPort(int);

View file

@ -17,14 +17,14 @@ namespace Ms {
class Palette;
enum PaletteCommand {
PALETTE_DELETE,
PALETTE_SAVE,
PALETTE_LOAD,
PALETTE_EDIT,
PALETTE_UP,
PALETTE_DOWN,
PALETTE_NEW
enum class PaletteCommand : char {
PDELETE,
SAVE,
LOAD,
EDIT,
UP,
DOWN,
NEW
};
//---------------------------------------------------------
@ -45,20 +45,20 @@ class PaletteBoxButton : public QToolButton {
virtual QSize sizeHint() const;
private slots:
void deleteTriggered() { emit paletteCmd(PALETTE_DELETE, id); }
void saveTriggered() { emit paletteCmd(PALETTE_SAVE, id); }
void loadTriggered() { emit paletteCmd(PALETTE_LOAD, id); }
void propertiesTriggered() { emit paletteCmd(PALETTE_EDIT, id); }
void upTriggered() { emit paletteCmd(PALETTE_UP, id); }
void downTriggered() { emit paletteCmd(PALETTE_DOWN, id); }
void newTriggered() { emit paletteCmd(PALETTE_NEW, id); }
void deleteTriggered() { emit paletteCmd(PaletteCommand::PDELETE, id); }
void saveTriggered() { emit paletteCmd(PaletteCommand::SAVE, id); }
void loadTriggered() { emit paletteCmd(PaletteCommand::LOAD, id); }
void propertiesTriggered() { emit paletteCmd(PaletteCommand::EDIT, id); }
void upTriggered() { emit paletteCmd(PaletteCommand::UP, id); }
void downTriggered() { emit paletteCmd(PaletteCommand::DOWN, id); }
void newTriggered() { emit paletteCmd(PaletteCommand::NEW, id); }
void enableEditing(bool);
public slots:
void showPalette(bool);
signals:
void paletteCmd(int, int);
void paletteCmd(PaletteCommand, int);
void closeAll();
public:

View file

@ -108,14 +108,14 @@ Palette* PaletteBox::newPalette(const QString& name, int slot)
// paletteCmd
//---------------------------------------------------------
void PaletteBox::paletteCmd(int cmd, int slot)
void PaletteBox::paletteCmd(PaletteCommand cmd, int slot)
{
QLayoutItem* item = vbox->itemAt(slot);
PaletteBoxButton* b = static_cast<PaletteBoxButton*>(item->widget());
Palette* palette = static_cast<Palette*>(vbox->itemAt(slot+1)->widget());
switch(cmd) {
case PALETTE_DELETE:
case PaletteCommand::PDELETE:
{
vbox->removeItem(item);
b->deleteLater(); // this is the button widget
@ -129,7 +129,7 @@ void PaletteBox::paletteCmd(int cmd, int slot)
emit changed();
}
break;
case PALETTE_SAVE:
case PaletteCommand::SAVE:
{
QString path = mscore->getPaletteFilename(false);
if (!path.isEmpty())
@ -137,7 +137,7 @@ void PaletteBox::paletteCmd(int cmd, int slot)
}
break;
case PALETTE_LOAD:
case PaletteCommand::LOAD:
{
QString path = mscore->getPaletteFilename(true);
if (!path.isEmpty()) {
@ -149,13 +149,13 @@ void PaletteBox::paletteCmd(int cmd, int slot)
emit changed();
break;
case PALETTE_NEW:
case PaletteCommand::NEW:
palette = newPalette(tr("new Palette"), slot);
item = vbox->itemAt(slot);
b = static_cast<PaletteBoxButton*>(item->widget());
// fall through
case PALETTE_EDIT:
case PaletteCommand::EDIT:
{
PaletteProperties pp(palette, 0);
int rv = pp.exec();
@ -168,7 +168,7 @@ void PaletteBox::paletteCmd(int cmd, int slot)
emit changed();
break;
case PALETTE_UP:
case PaletteCommand::UP:
if (slot) {
QLayoutItem* i1 = vbox->itemAt(slot);
QLayoutItem* i2 = vbox->itemAt(slot+1);
@ -184,7 +184,7 @@ void PaletteBox::paletteCmd(int cmd, int slot)
}
break;
case PALETTE_DOWN:
case PaletteCommand::DOWN:
if (slot < (vbox->count() - 3)) {
QLayoutItem* i1 = vbox->itemAt(slot);
QLayoutItem* i2 = vbox->itemAt(slot+1);

View file

@ -19,6 +19,7 @@ namespace Ms {
class Xml;
class XmlReader;
class Palette;
enum class PaletteCommand : char;
//---------------------------------------------------------
// PaletteBox
@ -31,7 +32,7 @@ class PaletteBox : public QDockWidget {
Palette* newPalette(const QString& name, int slot);
private slots:
void paletteCmd(int, int);
void paletteCmd(PaletteCommand, int);
void closeAll();
void displayMore(const QString& paletteName);

View file

@ -49,33 +49,33 @@ PluginCreator::PluginCreator(QWidget* parent)
QToolBar* fileTools = addToolBar(tr("File Operations"));
fileTools->setObjectName("FileOperations");
actionNew->setIcon(*icons[fileNew_ICON]);
actionNew->setIcon(*icons[int(Icons::fileNew_ICON)]);
actionNew->setShortcut(QKeySequence(QKeySequence::New));
fileTools->addAction(actionNew);
actionOpen->setIcon(*icons[fileOpen_ICON]);
actionOpen->setIcon(*icons[int(Icons::fileOpen_ICON)]);
actionOpen->setShortcut(QKeySequence(QKeySequence::Open));
fileTools->addAction(actionOpen);
actionReload->setIcon(*icons[viewRefresh_ICON]);
actionReload->setIcon(*icons[int(Icons::viewRefresh_ICON)]);
fileTools->addAction(actionReload);
actionSave->setIcon(*icons[fileSave_ICON]);
actionSave->setIcon(*icons[int(Icons::fileSave_ICON)]);
actionSave->setShortcut(QKeySequence(QKeySequence::Save));
fileTools->addAction(actionSave);
actionQuit->setShortcut(QKeySequence(QKeySequence::Quit));
actionManual->setIcon(QIcon(*icons[helpContents_ICON]));
actionManual->setIcon(QIcon(*icons[int(Icons::helpContents_ICON)]));
actionManual->setShortcut(QKeySequence(QKeySequence::HelpContents));
fileTools->addAction(actionManual);
QToolBar* editTools = addToolBar(tr("Edit Operations"));
editTools->setObjectName("EditOperations");
actionUndo->setIcon(*icons[undo_ICON]);
actionUndo->setIcon(*icons[int(Icons::undo_ICON)]);
actionUndo->setShortcut(QKeySequence(QKeySequence::Undo));
editTools->addAction(actionUndo);
actionRedo->setIcon(*icons[redo_ICON]);
actionRedo->setIcon(*icons[int(Icons::redo_ICON)]);
actionRedo->setShortcut(QKeySequence(QKeySequence::Redo));
editTools->addAction(actionRedo);
actionUndo->setEnabled(false);

View file

@ -560,20 +560,20 @@ PreferenceDialog::PreferenceDialog(QWidget* parent)
setupUi(this);
setWindowFlags(this->windowFlags() & ~Qt::WindowContextHelpButtonHint);
setModal(true);
startWithButton->setIcon(*icons[fileOpen_ICON]);
instrumentList1Button->setIcon(*icons[fileOpen_ICON]);
instrumentList2Button->setIcon(*icons[fileOpen_ICON]);
defaultStyleButton->setIcon(*icons[fileOpen_ICON]);
partStyleButton->setIcon(*icons[fileOpen_ICON]);
myScoresButton->setIcon(*icons[fileOpen_ICON]);
myStylesButton->setIcon(*icons[fileOpen_ICON]);
myTemplatesButton->setIcon(*icons[fileOpen_ICON]);
myPluginsButton->setIcon(*icons[fileOpen_ICON]);
myImagesButton->setIcon(*icons[fileOpen_ICON]);
startWithButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
instrumentList1Button->setIcon(*icons[int(Icons::fileOpen_ICON)]);
instrumentList2Button->setIcon(*icons[int(Icons::fileOpen_ICON)]);
defaultStyleButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
partStyleButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
myScoresButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
myStylesButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
myTemplatesButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
myPluginsButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
myImagesButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
bgWallpaperSelect->setIcon(*icons[fileOpen_ICON]);
fgWallpaperSelect->setIcon(*icons[fileOpen_ICON]);
styleFileButton->setIcon(*icons[fileOpen_ICON]);
bgWallpaperSelect->setIcon(*icons[int(Icons::fileOpen_ICON)]);
fgWallpaperSelect->setIcon(*icons[int(Icons::fileOpen_ICON)]);
styleFileButton->setIcon(*icons[int(Icons::fileOpen_ICON)]);
shortcutsChanged = false;
#ifndef USE_JACK
@ -1044,8 +1044,8 @@ void PreferenceDialog::updateSCListView()
continue;
ShortcutItem* newItem = new ShortcutItem;
newItem->setText(0, s->descr());
if (s->icon() != -1)
newItem->setIcon(0, *icons[s->icon()]);
if (s->icon() != Icons::Invalid_ICON)
newItem->setIcon(0, *icons[int(s->icon())]);
newItem->setText(1, s->keysToString());
newItem->setData(0, Qt::UserRole, s->key());
shortcutList->addTopLevelItem(newItem);

View file

@ -25,7 +25,7 @@ namespace Ms {
//---------------------------------------------------------
class PulseAudio : public Driver {
int state;
Transport state;
int runState;
int _sampleRate;
pa_sample_spec ss;
@ -43,10 +43,10 @@ class PulseAudio : public Driver {
virtual bool init();
virtual bool start();
virtual bool stop();
virtual int getState() { return state; }
virtual Transport getState() override { return state; }
virtual int sampleRate() const { return _sampleRate; }
virtual void stopTransport() { state = Seq::TRANSPORT_STOP; }
virtual void startTransport() { state = Seq::TRANSPORT_PLAY; }
virtual void stopTransport() { state = Transport::STOP; }
virtual void startTransport() { state = Transport::PLAY; }
};
//---------------------------------------------------------
@ -72,7 +72,7 @@ PulseAudio::PulseAudio(Seq* s)
: Driver(s)
{
_sampleRate = preferences.alsaSampleRate;
state = Seq::TRANSPORT_STOP;
state = Transport::STOP;
runState = 0;
}

View file

@ -96,7 +96,7 @@ void JSHighlighter::setColor(QmlEdit::ColorComponent component, const QColor& co
void JSHighlighter::highlightBlock(const QString& text)
{
// parsing state
enum {
enum class State : char {
Start = 0,
Number = 1,
Identifier = 2,
@ -108,10 +108,10 @@ void JSHighlighter::highlightBlock(const QString& text)
QList<int> bracketPositions;
int blockState = previousBlockState();
int bracketLevel = blockState >> 4;
int state = blockState & 15;
State state = State(blockState & 15);
if (blockState < 0) {
bracketLevel = 0;
state = Start;
state = State::Start;
}
int start = 0;
int i = 0;
@ -119,27 +119,27 @@ void JSHighlighter::highlightBlock(const QString& text)
QChar ch = (i < text.length()) ? text.at(i) : QChar();
QChar next = (i < text.length() - 1) ? text.at(i + 1) : QChar();
switch (state) {
case Start:
case State::Start:
start = i;
if (ch.isSpace()) {
++i;
}
else if (ch.isDigit()) {
++i;
state = Number;
state = State::Number;
}
else if (ch.isLetter() || ch == '_') {
++i;
state = Identifier;
state = State::Identifier;
}
else if (ch == '\'' || ch == '\"') {
++i;
state = String;
state = State::String;
}
else if (ch == '/' && next == '*') {
++i;
++i;
state = Comment;
state = State::Comment;
}
else if (ch == '/' && next == '/') {
i = text.length();
@ -147,7 +147,7 @@ void JSHighlighter::highlightBlock(const QString& text)
}
else if (ch == '/' && next != '*') {
++i;
state = Regex;
state = State::Regex;
}
else {
if (!QString("(){}[]").contains(ch))
@ -160,38 +160,38 @@ void JSHighlighter::highlightBlock(const QString& text)
bracketLevel--;
}
++i;
state = Start;
state = State::Start;
}
break;
case Number:
case State::Number:
if (ch.isSpace() || !ch.isDigit()) {
setFormat(start, i - start, m_colors[QmlEdit::Number]);
state = Start;
state = State::Start;
}
else {
++i;
}
break;
case Identifier:
case State::Identifier:
if (ch.isSpace() || !(ch.isDigit() || ch.isLetter() || ch == '_')) {
QString token = text.mid(start, i - start).trimmed();
if (m_keywords.contains(token))
setFormat(start, i - start, m_colors[QmlEdit::Keyword]);
else if (m_knownIds.contains(token))
setFormat(start, i - start, m_colors[QmlEdit::BuiltIn]);
state = Start;
state = State::Start;
}
else {
++i;
}
break;
case String:
case State::String:
if (ch == text.at(start)) {
QChar prev = (i > 0) ? text.at(i - 1) : QChar();
if (prev != '\\') {
++i;
setFormat(start, i - start, m_colors[QmlEdit::String]);
state = Start;
state = State::Start;
}
else {
++i;
@ -201,24 +201,24 @@ void JSHighlighter::highlightBlock(const QString& text)
++i;
}
break;
case Comment:
case State::Comment:
if (ch == '*' && next == '/') {
++i;
++i;
setFormat(start, i - start, m_colors[QmlEdit::Comment]);
state = Start;
state = State::Start;
}
else {
++i;
}
break;
case Regex:
case State::Regex:
if (ch == '/') {
QChar prev = (i > 0) ? text.at(i - 1) : QChar();
if (prev != '\\') {
++i;
setFormat(start, i - start, m_colors[QmlEdit::String]);
state = Start;
state = State::Start;
}
else {
++i;
@ -229,15 +229,15 @@ void JSHighlighter::highlightBlock(const QString& text)
}
break;
default:
state = Start;
state = State::Start;
break;
}
}
if (state == Comment)
if (state == State::Comment)
setFormat(start, text.length(), m_colors[QmlEdit::Comment]);
else
state = Start;
state = State::Start;
if (!m_markString.isEmpty()) {
int pos = 0;
@ -261,7 +261,7 @@ void JSHighlighter::highlightBlock(const QString& text)
}
blockData->bracketPositions = bracketPositions;
}
blockState = (state & 15) | (bracketLevel << 4);
blockState = (int(state) & 15) | (bracketLevel << 4);
setCurrentBlockState(blockState);
}

View file

@ -144,7 +144,7 @@ Seq::Seq()
tickRest = 0;
endTick = 0;
state = TRANSPORT_STOP;
state = Transport::STOP;
oggInit = false;
_driver = 0;
playPos = events.cbegin();
@ -330,7 +330,7 @@ void Seq::start()
void Seq::stop()
{
if (state == TRANSPORT_STOP)
if (state == Transport::STOP)
return;
if (oggInit) {
@ -358,7 +358,7 @@ void Seq::stopWait()
stop();
QWaitCondition sleep;
int idx = 0;
while (state != TRANSPORT_STOP) {
while (state != Transport::STOP) {
qDebug("State %d", state);
mutex.lock();
sleep.wait(&mutex, 100);
@ -514,7 +514,7 @@ void Seq::processMessages()
break;
SeqMsg msg = toSeq.dequeue();
switch(msg.id) {
case SEQ_TEMPO_CHANGE:
case SeqMsgId::TEMPO_CHANGE:
{
if (!cs)
continue;
@ -530,12 +530,14 @@ void Seq::processMessages()
emit tempoChanged();
}
break;
case SEQ_PLAY:
case SeqMsgId::PLAY:
putEvent(msg.event);
break;
case SEQ_SEEK:
case SeqMsgId::SEEK:
setPos(msg.intVal);
break;
default:
break;
}
}
}
@ -661,11 +663,11 @@ void Seq::addCountInClicks()
void Seq::process(unsigned n, float* buffer)
{
unsigned frames = n;
int driverState = _driver->getState();
Transport driverState = _driver->getState();
if (driverState != state) {
// Got a message from JACK Transport panel: Play
if (state == TRANSPORT_STOP && driverState == TRANSPORT_PLAY) {
if (state == Transport::STOP && driverState == Transport::PLAY) {
if((preferences.useJackMidi || preferences.useJackAudio) && !getAction("play")->isChecked()) {
// Do not play while editing elements
@ -680,7 +682,7 @@ void Seq::process(unsigned n, float* buffer)
}
}
// Need to change state after calling collectEvents()
state = TRANSPORT_PLAY;
state = Transport::PLAY;
if (mscore->countIn() && cs->playMode() == PlayMode::SYNTHESIZER) {
countInEvents.clear();
inCountIn = true;
@ -688,8 +690,8 @@ void Seq::process(unsigned n, float* buffer)
emit toGui('1');
}
// Got a message from JACK Transport panel: Stop
else if (state == TRANSPORT_PLAY && driverState == TRANSPORT_STOP) {
state = TRANSPORT_STOP;
else if (state == Transport::PLAY && driverState == Transport::STOP) {
state = Transport::STOP;
// Muting all notes
stopNotes();
if (playPos == events.cend()) {
@ -716,7 +718,7 @@ void Seq::process(unsigned n, float* buffer)
processMessages();
if (state == TRANSPORT_PLAY) {
if (state == Transport::PLAY) {
if(!cs)
return;
EventMap::const_iterator* pPlayPos = &playPos;
@ -899,7 +901,7 @@ void Seq::initInstruments()
void Seq::collectEvents()
{
//do not collect even while playing
if (state == TRANSPORT_PLAY)
if (state == Transport::PLAY)
return;
events.clear();
@ -934,7 +936,7 @@ int Seq::getCurTick()
void Seq::setRelTempo(double relTempo)
{
guiToSeq(SeqMsg(SEQ_TEMPO_CHANGE, relTempo));
guiToSeq(SeqMsg(SeqMsgId::TEMPO_CHANGE, relTempo));
}
//---------------------------------------------------------
@ -999,7 +1001,7 @@ void Seq::seek(int utick, Segment* seg)
ov_pcm_seek(&vf, sp);
}
guiToSeq(SeqMsg(SEQ_SEEK, utick));
guiToSeq(SeqMsg(SeqMsgId::SEEK, utick));
guiPos = events.lower_bound(utick);
mscore->setPos(utick);
unmarkNotes();
@ -1012,7 +1014,7 @@ void Seq::seek(int utick, Segment* seg)
void Seq::startNote(int channel, int pitch, int velo, double nt)
{
if (state != TRANSPORT_STOP)
if (state != Transport::STOP)
return;
NPlayEvent ev(ME_NOTEON, channel, pitch, velo);
ev.setTuning(nt);
@ -1090,7 +1092,7 @@ void Seq::setController(int channel, int ctrl, int data)
void Seq::sendEvent(const NPlayEvent& ev)
{
guiToSeq(SeqMsg(SEQ_PLAY, ev));
guiToSeq(SeqMsg(SeqMsgId::PLAY, ev));
}
//---------------------------------------------------------
@ -1205,7 +1207,7 @@ void Seq::guiToSeq(const SeqMsg& msg)
void Seq::eventToGui(NPlayEvent e)
{
fromSeq.enqueue(SeqMsg(SEQ_MIDI_INPUT_EVENT, e));
fromSeq.enqueue(SeqMsg(SeqMsgId::MIDI_INPUT_EVENT, e));
}
//---------------------------------------------------------
@ -1302,7 +1304,7 @@ void Seq::heartBeatTimeout()
while (!fromSeq.isEmpty()) {
SeqMsg msg = fromSeq.dequeue();
if (msg.id == SEQ_MIDI_INPUT_EVENT) {
if (msg.id == SeqMsgId::MIDI_INPUT_EVENT) {
int type = msg.event.type();
if (type == ME_NOTEON)
mscore->midiNoteReceived(msg.event.channel(), msg.event.pitch(), msg.event.velo());
@ -1313,7 +1315,7 @@ void Seq::heartBeatTimeout()
}
}
if (state != TRANSPORT_PLAY || inCountIn)
if (state != Transport::PLAY || inCountIn)
return;
int endTime = playTime;
@ -1409,7 +1411,7 @@ double Seq::curTempo() const
void Seq::setLoopIn()
{
int tick;
if (state == TRANSPORT_PLAY) { // If in playback mode, set the In position where note is being played
if (state == Transport::PLAY) { // If in playback mode, set the In position where note is being played
auto ppos = playPos;
if (ppos != events.cbegin())
--ppos; // We have to go back one pos to get the correct note that has just been played
@ -1429,7 +1431,7 @@ void Seq::setLoopIn()
void Seq::setLoopOut()
{
int tick;
if (state == TRANSPORT_PLAY) { // If in playback mode, set the Out position where note is being played
if (state == Transport::PLAY) { // If in playback mode, set the Out position where note is being played
tick = cs->repeatList()->utick2tick(playPos->first);
}
else
@ -1437,8 +1439,8 @@ void Seq::setLoopOut()
if (tick <= cs->loopInTick()) // If Out pos <= In pos, reset In pos to beginning of score
cs->setPos(POS::LEFT, 0);
cs->setPos(POS::RIGHT, tick);
if (state == TRANSPORT_PLAY)
guiToSeq(SeqMsg(SEQ_SEEK, tick));
if (state == Transport::PLAY)
guiToSeq(SeqMsg(SeqMsgId::SEEK, tick));
}
void Seq::setPos(POS, unsigned tick)

View file

@ -50,12 +50,12 @@ enum class POS : char;
// message format for gui -> sequencer messages
//---------------------------------------------------------
enum { SEQ_NO_MESSAGE, SEQ_TEMPO_CHANGE, SEQ_PLAY, SEQ_SEEK,
SEQ_MIDI_INPUT_EVENT
enum class SeqMsgId : char { NO_MESSAGE, TEMPO_CHANGE, PLAY, SEEK,
MIDI_INPUT_EVENT
};
struct SeqMsg {
int id;
SeqMsgId id;
union {
int intVal;
qreal realVal;
@ -63,9 +63,9 @@ struct SeqMsg {
NPlayEvent event;
SeqMsg() {}
SeqMsg(int _id, int val) : id(_id), intVal(val) {}
SeqMsg(int _id, qreal val) : id(_id), realVal(val) {}
SeqMsg(int _id, const NPlayEvent& e) : id(_id), event(e) {}
SeqMsg(SeqMsgId _id, int val) : id(_id), intVal(val) {}
SeqMsg(SeqMsgId _id, qreal val) : id(_id), realVal(val) {}
SeqMsg(SeqMsgId _id, const NPlayEvent& e) : id(_id), event(e) {}
};
//---------------------------------------------------------
@ -89,6 +89,10 @@ class SeqMsgFifo : public FifoBase {
// sequencer
//---------------------------------------------------------
// this are also the jack audio transport states:
enum class Transport : char { STOP=0, PLAY=1, STARTING=3,
NET_STARTING=4 };
class Seq : public QObject, public Sequencer {
Q_OBJECT
@ -97,7 +101,7 @@ class Seq : public QObject, public Sequencer {
Score* cs;
ScoreView* cv;
bool running; // true if sequencer is available
int state; // TRANSPORT_STOP, TRANSPORT_PLAY, TRANSPORT_STARTING=3
Transport state; // STOP, PLAY, STARTING=3
bool inCountIn;
Fraction prevTimeSig;
double prevTempo;
@ -168,10 +172,6 @@ class Seq : public QObject, public Sequencer {
void timeSigChanged();
public:
// this are also the jack audio transport states:
enum { TRANSPORT_STOP=0, TRANSPORT_PLAY=1, TRANSPORT_STARTING=3,
TRANSPORT_NET_STARTING=4 };
Seq();
~Seq();
bool canStart();
@ -193,8 +193,8 @@ class Seq : public QObject, public Sequencer {
bool init();
void exit();
bool isRunning() const { return running; }
bool isPlaying() const { return state == TRANSPORT_PLAY; }
bool isStopped() const { return state == TRANSPORT_STOP; }
bool isPlaying() const { return state == Transport::PLAY; }
bool isStopped() const { return state == Transport::STOP; }
void processMessages();
void process(unsigned, float*);

View file

@ -28,7 +28,7 @@ extern QString dataPath;
//---------------------------------------------------------
Shortcut::Shortcut(int s, int f, const char* name, Qt::ShortcutContext cont,
const char* txt, const char* d, const char* h, int i)
const char* txt, const char* d, const char* h, Icons i)
{
_key = name;
_text = txt;
@ -41,7 +41,7 @@ Shortcut::Shortcut(int s, int f, const char* name, Qt::ShortcutContext cont,
}
Shortcut::Shortcut(int s, int f, const char* name,
const char* txt, const char* d, const char* h, int i)
const char* txt, const char* d, const char* h, Icons i)
{
_key = name;
_text = txt;
@ -53,7 +53,7 @@ Shortcut::Shortcut(int s, int f, const char* name,
}
Shortcut::Shortcut(int s, int f, const char* name, const char* txt,
const char* d, int i)
const char* d, Icons i)
{
_key = name;
_text = txt;
@ -65,7 +65,7 @@ Shortcut::Shortcut(int s, int f, const char* name, const char* txt,
}
Shortcut::Shortcut(int s, int f, const char* name, Qt::ShortcutContext cont,
const char* txt, const char* d, int i)
const char* txt, const char* d, Icons i)
{
_key = name;
_text = txt;
@ -77,7 +77,7 @@ Shortcut::Shortcut(int s, int f, const char* name, Qt::ShortcutContext cont,
_icon = i;
}
Shortcut::Shortcut(int s, int f, const char* name, const char* txt, int i)
Shortcut::Shortcut(int s, int f, const char* name, const char* txt, Icons i)
{
_key = name;
_text = txt;
@ -89,7 +89,7 @@ Shortcut::Shortcut(int s, int f, const char* name, const char* txt, int i)
}
Shortcut::Shortcut(int s, int f, const char* name, Qt::ShortcutContext cont,
const char* txt, int i)
const char* txt, Icons i)
{
_key = name;
_text = txt;
@ -236,8 +236,8 @@ QAction* Shortcut::action() const
s += ")";
_action->setToolTip(s);
}
if (_icon != -1)
_action->setIcon(*icons[_icon]);
if (_icon != Icons::Invalid_ICON)
_action->setIcon(*icons[int(_icon)]);
return _action;
}

View file

@ -62,6 +62,8 @@ cases:
Shortcuts marked with the STATE_NEVER state should NEVER used directly as shortcuts!
---------------------------------------------------------*/
#include "icons.h"
namespace Ms {
class Xml;
@ -90,7 +92,7 @@ class Shortcut {
QList<QKeySequence> _keys; //! shortcut list
QKeySequence::StandardKey _standardKey { QKeySequence::UnknownKey };
Qt::ShortcutContext _context { Qt::WindowShortcut };
int _icon { -1 };
Icons _icon { Icons::Invalid_ICON };
mutable QAction* _action { 0 }; //! cached action
static Shortcut sc[];
@ -104,33 +106,33 @@ class Shortcut {
const char* d,
const char* txt = 0,
const char* h = 0,
int i = -1);
Icons i = Icons::Invalid_ICON);
Shortcut(int state, int flags,
const char* name,
const char* d,
const char* txt = 0,
const char* h = 0,
int i = -1);
Icons i = Icons::Invalid_ICON);
Shortcut(int state, int flags,
const char* name,
const char* d,
int i);
Icons i);
Shortcut(int state, int flags,
const char* name,
const char* d,
const char* txt,
int i);
Icons i);
Shortcut(int state, int flags,
const char* name,
Qt::ShortcutContext cont,
const char* d,
int i);
Icons i);
Shortcut(int state, int flags,
const char* name,
Qt::ShortcutContext cont,
const char* d,
const char* txt,
int i);
Icons i);
Shortcut(const Shortcut& c);
~Shortcut() {}
@ -146,7 +148,7 @@ class Shortcut {
void addShortcut(const QKeySequence&);
int state() const { return _state; }
int flags() const { return _flags; }
int icon() const { return _icon; }
Icons icon() const { return _icon; }
const QList<QKeySequence>& keys() const { return _keys; }
QKeySequence::StandardKey standardKey() const { return _standardKey; }
void setKeys(const QList<QKeySequence>& ks);

View file

@ -39,42 +39,42 @@ TextEditor::TextEditor(QWidget* parent)
f->setLayout(hl);
typefaceBold = new QToolButton;
typefaceBold->setIcon(*icons[textBold_ICON]);
typefaceBold->setIcon(*icons[int(Icons::textBold_ICON)]);
typefaceBold->setToolTip(tr("bold"));
typefaceBold->setCheckable(true);
typefaceItalic = new QToolButton;
typefaceItalic->setIcon(*icons[textItalic_ICON]);
typefaceItalic->setIcon(*icons[int(Icons::textItalic_ICON)]);
typefaceItalic->setToolTip(tr("italic"));
typefaceItalic->setCheckable(true);
typefaceUnderline = new QToolButton;
typefaceUnderline->setIcon(*icons[textUnderline_ICON]);
typefaceUnderline->setIcon(*icons[int(Icons::textUnderline_ICON)]);
typefaceUnderline->setToolTip(tr("underline"));
typefaceUnderline->setCheckable(true);
leftAlign = new QToolButton;
leftAlign->setIcon(*icons[textLeft_ICON]);
leftAlign->setIcon(*icons[int(Icons::textLeft_ICON)]);
leftAlign->setToolTip(tr("align left"));
leftAlign->setCheckable(true);
centerAlign = new QToolButton;
centerAlign->setIcon(*icons[textCenter_ICON]);
centerAlign->setIcon(*icons[int(Icons::textCenter_ICON)]);
centerAlign->setToolTip(tr("align center"));
centerAlign->setCheckable(true);
rightAlign = new QToolButton;
rightAlign->setIcon(*icons[textRight_ICON]);
rightAlign->setIcon(*icons[int(Icons::textRight_ICON)]);
rightAlign->setToolTip(tr("align right"));
rightAlign->setCheckable(true);
typefaceSubscript = new QToolButton;
typefaceSubscript->setIcon(*icons[textSub_ICON]);
typefaceSubscript->setIcon(*icons[int(Icons::textSub_ICON)]);
typefaceSubscript->setToolTip(tr("subscript"));
typefaceSubscript->setCheckable(true);
typefaceSuperscript = new QToolButton;
typefaceSuperscript->setIcon(*icons[textSuper_ICON]);
typefaceSuperscript->setIcon(*icons[int(Icons::textSuper_ICON)]);
typefaceSuperscript->setToolTip(tr("superscript"));
typefaceSuperscript->setCheckable(true);

View file

@ -34,16 +34,16 @@ TextProp::TextProp(QWidget* parent)
{
setupUi(this);
//set the icon here or the style can't color them
alignLeft->setIcon(*icons[textLeft_ICON]);
alignHCenter->setIcon(*icons[textCenter_ICON]);
alignRight->setIcon(*icons[textRight_ICON]);
alignTop->setIcon(*icons[textTop_ICON]);
alignVCenter->setIcon(*icons[textVCenter_ICON]);
alignBaseline->setIcon(*icons[textBaseline_ICON]);
alignBottom->setIcon(*icons[textBottom_ICON]);
fontBold->setIcon(*icons[textBold_ICON]);
fontItalic->setIcon(*icons[textItalic_ICON]);
fontUnderline->setIcon(*icons[textUnderline_ICON]);
alignLeft->setIcon(*icons[int(Icons::textLeft_ICON)]);
alignHCenter->setIcon(*icons[int(Icons::textCenter_ICON)]);
alignRight->setIcon(*icons[int(Icons::textRight_ICON)]);
alignTop->setIcon(*icons[int(Icons::textTop_ICON)]);
alignVCenter->setIcon(*icons[int(Icons::textVCenter_ICON)]);
alignBaseline->setIcon(*icons[int(Icons::textBaseline_ICON)]);
alignBottom->setIcon(*icons[int(Icons::textBottom_ICON)]);
fontBold->setIcon(*icons[int(Icons::textBold_ICON)]);
fontItalic->setIcon(*icons[int(Icons::textItalic_ICON)]);
fontUnderline->setIcon(*icons[int(Icons::textUnderline_ICON)]);
QButtonGroup* g1 = new QButtonGroup(this);
g1->addButton(alignLeft);
@ -83,7 +83,7 @@ void TextProp::setScore(bool onlyStyle, Score* score)
int n = scoreStyles.size();
for (int i = 0; i < n; ++i) {
// if style not hidden in this context, add to combo with index in score style list as userData
if ( !(scoreStyles.at(i).hidden() & TextStyle::Hidden::IN_LISTS) )
if ( !(scoreStyles.at(i).hidden() & TextStyleHidden::IN_LISTS) )
styles->addItem(scoreStyles.at(i).name(), i);
}
}
@ -136,19 +136,19 @@ void TextProp::setTextStyle(const TextStyle& s)
color->setColor(s.foregroundColor());
systemFlag->setChecked(s.systemFlag());
int a = s.align();
if (a & ALIGN_HCENTER)
Align a = s.align();
if (a & AlignmentFlags::HCENTER)
alignHCenter->setChecked(true);
else if (a & ALIGN_RIGHT)
else if (a & AlignmentFlags::RIGHT)
alignRight->setChecked(true);
else
alignLeft->setChecked(true);
if (a & ALIGN_VCENTER)
if (a & AlignmentFlags::VCENTER)
alignVCenter->setChecked(true);
else if (a & ALIGN_BOTTOM)
else if (a & AlignmentFlags::BOTTOM)
alignBottom->setChecked(true);
else if (a & ALIGN_BASELINE)
else if (a & AlignmentFlags::BASELINE)
alignBaseline->setChecked(true);
else
alignTop->setChecked(true);
@ -214,16 +214,16 @@ TextStyle TextProp::textStyle() const
Align a = 0;
if (alignHCenter->isChecked())
a |= ALIGN_HCENTER;
a |= AlignmentFlags::HCENTER;
else if (alignRight->isChecked())
a |= ALIGN_RIGHT;
a |= AlignmentFlags::RIGHT;
if (alignVCenter->isChecked())
a |= ALIGN_VCENTER;
a |= AlignmentFlags::VCENTER;
else if (alignBottom->isChecked())
a |= ALIGN_BOTTOM;
a |= AlignmentFlags::BOTTOM;
else if (alignBaseline->isChecked())
a |= ALIGN_BASELINE;
a |= AlignmentFlags::BASELINE;
ts.setAlign(a);
return ts;
}

View file

@ -46,7 +46,7 @@ TextStyleDialog::TextStyleDialog(QWidget* parent, Score* score)
textNames->clear();
for (int i = 0; i < styles.size(); ++i) {
// const TextStyle& s = styles.at(i);
if ( (styles.at(i).hidden()& TextStyle::Hidden::IN_EDITOR) == 0) {
if ( (styles.at(i).hidden()& TextStyleHidden::IN_EDITOR) == 0) {
int count = textNames->count();
textNames->addItem(qApp->translate("MuseScore", styles.at(i).name().toLatin1().data()));
textNames->item(count)->setData(Qt::UserRole, i);

View file

@ -64,25 +64,25 @@ TextTools::TextTools(QWidget* parent)
showKeyboard->setCheckable(true);
tb->addAction(showKeyboard);
typefaceBold = tb->addAction(*icons[textBold_ICON], "");
typefaceBold = tb->addAction(*icons[int(Icons::textBold_ICON)], "");
typefaceBold->setToolTip(tr("bold"));
typefaceBold->setCheckable(true);
typefaceItalic = tb->addAction(*icons[textItalic_ICON], "");
typefaceItalic = tb->addAction(*icons[int(Icons::textItalic_ICON)], "");
typefaceItalic->setToolTip(tr("italic"));
typefaceItalic->setCheckable(true);
typefaceUnderline = tb->addAction(*icons[textUnderline_ICON], "");
typefaceUnderline = tb->addAction(*icons[int(Icons::textUnderline_ICON)], "");
typefaceUnderline->setToolTip(tr("underline"));
typefaceUnderline->setCheckable(true);
tb->addSeparator();
typefaceSubscript = tb->addAction(*icons[textSub_ICON], "");
typefaceSubscript = tb->addAction(*icons[int(Icons::textSub_ICON)], "");
typefaceSubscript->setToolTip(tr("subscript"));
typefaceSubscript->setCheckable(true);
typefaceSuperscript = tb->addAction(*icons[textSuper_ICON], "");
typefaceSuperscript = tb->addAction(*icons[int(Icons::textSuper_ICON)], "");
typefaceSuperscript->setToolTip(tr("superscript"));
typefaceSuperscript->setCheckable(true);