1 2 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ 3 4 /* 5 Rosegarden 6 A MIDI and audio sequencer and musical notation editor. 7 Copyright 2000-2021 the Rosegarden development team. 8 9 Other copyrights also apply to some parts of this work. Please 10 see the AUTHORS file and individual file headers for details. 11 12 This program is free software; you can redistribute it and/or 13 modify it under the terms of the GNU General Public License as 14 published by the Free Software Foundation; either version 2 of the 15 License, or (at your option) any later version. See the file 16 COPYING included with this distribution for more information. 17 */ 18 19 #ifndef RG_NOTATIONPROPERTIES_H 20 #define RG_NOTATIONPROPERTIES_H 21 22 #include "base/PropertyName.h" 23 #include <string> 24 25 26 namespace Rosegarden 27 { 28 29 30 /** 31 * Property names for properties that are computed and cached within 32 * the notation module, but that need not necessarily be saved with 33 * the file. 34 * 35 * If you add something here, remember to add the definition to 36 * NotationProperties.cpp as well... 37 */ 38 39 class NotationProperties 40 { 41 public: 42 NotationProperties(const std::string &prefix); 43 44 // These are only of interest to notation views, but are the 45 // same across all notation views. 46 47 static const PropertyName HEIGHT_ON_STAFF; 48 static const PropertyName NOTE_STYLE; 49 static const PropertyName BEAMED; 50 static const PropertyName BEAM_ABOVE; 51 static const PropertyName SLASHES; 52 static const PropertyName STEM_UP; 53 static const PropertyName USE_CAUTIONARY_ACCIDENTAL; 54 static const PropertyName OTTAVA_SHIFT; 55 static const PropertyName SLUR_ABOVE; 56 57 // The rest are, or may be, view-local 58 59 const PropertyName VIEW_LOCAL_STEM_UP; 60 const PropertyName MIN_WIDTH; 61 const PropertyName CALCULATED_ACCIDENTAL; 62 const PropertyName DISPLAY_ACCIDENTAL; 63 const PropertyName DISPLAY_ACCIDENTAL_IS_CAUTIONARY; 64 const PropertyName ACCIDENTAL_SHIFT; 65 const PropertyName ACCIDENTAL_EXTRA_SHIFT; 66 const PropertyName UNBEAMED_STEM_LENGTH; 67 const PropertyName DRAW_FLAG; 68 const PropertyName NOTE_HEAD_SHIFTED; 69 const PropertyName NEEDS_EXTRA_SHIFT_SPACE; 70 const PropertyName NOTE_DOT_SHIFTED; 71 const PropertyName CHORD_PRIMARY_NOTE; 72 const PropertyName CHORD_MARK_COUNT; 73 const PropertyName TIE_LENGTH; 74 const PropertyName SLUR_Y_DELTA; 75 const PropertyName SLUR_LENGTH; 76 const PropertyName LYRIC_EXTRA_WIDTH; 77 const PropertyName REST_TOO_SHORT; 78 const PropertyName REST_OUTSIDE_STAVE; 79 80 // Set in applyBeam in NotationSets.cpp: 81 82 const PropertyName BEAM_GRADIENT; 83 const PropertyName BEAM_SECTION_WIDTH; 84 const PropertyName BEAM_NEXT_BEAM_COUNT; 85 const PropertyName BEAM_NEXT_PART_BEAMS; 86 const PropertyName BEAM_THIS_PART_BEAMS; 87 const PropertyName BEAM_MY_Y; 88 const PropertyName TUPLING_LINE_MY_Y; 89 const PropertyName TUPLING_LINE_WIDTH; 90 const PropertyName TUPLING_LINE_GRADIENT; 91 const PropertyName TUPLING_LINE_FOLLOWS_BEAM; 92 93 }; 94 95 96 } 97 98 #endif 99