File: globals.h

package info (click to toggle)
musescore 2.0.3%2Bdfsg1-2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 202,532 kB
  • ctags: 58,769
  • sloc: cpp: 257,595; xml: 172,226; ansic: 139,931; python: 6,565; sh: 6,383; perl: 423; makefile: 290; awk: 142; pascal: 67; sed: 3
file content (105 lines) | stat: -rw-r--r-- 3,650 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
//=============================================================================
//  MusE Score
//  Linux Music Score Editor
//  $Id: globals.h 5576 2012-04-24 19:15:22Z wschweer $
//
//  Copyright (C) 2002-2011 Werner Schweer and others
//
//  This program is free software; you can redistribute it and/or modify
//  it under the terms of the GNU General Public License version 2.
//
//  This program is distributed in the hope that it will be useful,
//  but WITHOUT ANY WARRANTY; without even the implied warranty of
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//  GNU General Public License for more details.
//
//  You should have received a copy of the GNU General Public License
//  along with this program; if not, write to the Free Software
//  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//=============================================================================

#ifndef __GLOBALS_H__
#define __GLOBALS_H__

namespace Ms {

extern bool enableExperimental;
extern bool enableTestMode;
extern bool noSeq;            ///< Dont use sequencer; cmd line option.
extern bool noMidi;           ///< Dont use midi; cmd line option.
extern bool midiInputTrace;   ///< debug option: dump midi input
extern bool midiOutputTrace;  ///< debug option: dump midi output
extern bool converterMode;
extern bool pluginMode;
extern double converterDpi;
extern double guiScaling;
extern int trimMargin;
extern bool noWebView;

//---------------------------------------------------------
// MsWidget
// used to assign actions (shortcuts) to the apropriate
// widget (actions.cpp, shortcuts.cpp)
//---------------------------------------------------------

enum MsWidget {
      MAIN_WINDOW = 0,
      SCORE_TAB   = 1 << 0
      };

//---------------------------------------------------------
//    ScoreState
//    used also to mask out shortcuts (actions.cpp)
//---------------------------------------------------------

enum ScoreState {
      STATE_INIT                 = 0,
      STATE_DISABLED             = 1 <<  0,
      STATE_NORMAL               = 1 <<  1,
      STATE_NOTE_ENTRY_PITCHED   = 1 <<  2,
      STATE_NOTE_ENTRY_DRUM      = 1 <<  3,
      STATE_NOTE_ENTRY_TAB       = 1 <<  4,
      STATE_EDIT                 = 1 <<  5,
      STATE_TEXT_EDIT            = 1 <<  6,
      STATE_LYRICS_EDIT          = 1 <<  7,
      STATE_HARMONY_FIGBASS_EDIT = 1 <<  8,
      STATE_PLAY                 = 1 <<  9,
      STATE_FOTO                 = 1 << 10,
      STATE_LOCK                 = 1 << 11,

      STATE_NEVER                = 1 << 31,

      STATE_NOTE_ENTRY 		= STATE_NOTE_ENTRY_PITCHED | STATE_NOTE_ENTRY_DRUM | STATE_NOTE_ENTRY_TAB,
      STATE_ALLTEXTUAL_EDIT	= STATE_TEXT_EDIT | STATE_LYRICS_EDIT | STATE_HARMONY_FIGBASS_EDIT,
      STATE_ALL        		= -1
      };

//---------------------------------------------------------
//   MidiRemoteType
//---------------------------------------------------------

enum MidiRemoteType {
      MIDI_REMOTE_TYPE_INACTIVE = -1,
      MIDI_REMOTE_TYPE_NOTEON = 0, MIDI_REMOTE_TYPE_CTRL
      };

//---------------------------------------------------------
//   MidiRemote
//---------------------------------------------------------

struct MidiRemote {
      int channel;
      MidiRemoteType type;
      int data;         // pitch or controller number
      };

extern const char* stateName(ScoreState);

static constexpr qreal DPI_DISPLAY     = 96.0;  // 96 DPI nominal resolution
static constexpr qreal DPMM_DISPLAY    = DPI_DISPLAY / 25.4;
static constexpr qreal PALETTE_SPATIUM = 1.764 * DPMM_DISPLAY;

extern QPaintDevice* pdev;

} // namespace Ms
#endif