smoosic 1.0.25 → 1.0.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. package/build/smoosic.js +1 -1
  2. package/package.json +1 -1
  3. package/release/smoosic.js +1 -1
  4. package/src/application/exports.ts +1 -0
  5. package/types/src/application/application.d.ts +102 -102
  6. package/types/src/application/common.d.ts +74 -74
  7. package/types/src/application/configuration.d.ts +74 -74
  8. package/types/src/application/dom.d.ts +8 -8
  9. package/types/src/application/dynamicInit.d.ts +1 -1
  10. package/types/src/application/eventHandler.d.ts +78 -78
  11. package/types/src/application/exports.d.ts +494 -493
  12. package/types/src/application/generateVexTests.d.ts +10 -10
  13. package/types/src/application/keyCommands.d.ts +90 -90
  14. package/types/src/common/bootstrap.bundle.d.ts +1138 -1138
  15. package/types/src/common/htmlHelpers.d.ts +105 -105
  16. package/types/src/common/jszip.d.ts +2 -2
  17. package/types/src/common/midi-parser.d.ts +38 -38
  18. package/types/src/common/promiseHelpers.d.ts +30 -30
  19. package/types/src/common/serializationHelpers.d.ts +29 -29
  20. package/types/src/common/textformatter.d.ts +140 -140
  21. package/types/src/common/vex.d.ts +222 -222
  22. package/types/src/render/audio/musicCursor.d.ts +25 -25
  23. package/types/src/render/audio/oscillator.d.ts +98 -98
  24. package/types/src/render/audio/player.d.ts +141 -141
  25. package/types/src/render/audio/samples.d.ts +56 -56
  26. package/types/src/render/sui/configuration.d.ts +12 -12
  27. package/types/src/render/sui/formatter.d.ts +151 -151
  28. package/types/src/render/sui/layoutDebug.d.ts +43 -43
  29. package/types/src/render/sui/mapper.d.ts +116 -116
  30. package/types/src/render/sui/piano.d.ts +46 -46
  31. package/types/src/render/sui/renderState.d.ts +88 -88
  32. package/types/src/render/sui/scoreRender.d.ts +93 -93
  33. package/types/src/render/sui/scoreView.d.ts +267 -267
  34. package/types/src/render/sui/scoreViewOperations.d.ts +594 -594
  35. package/types/src/render/sui/scroller.d.ts +34 -34
  36. package/types/src/render/sui/svgHelpers.d.ts +85 -85
  37. package/types/src/render/sui/svgPageMap.d.ts +318 -318
  38. package/types/src/render/sui/textEdit.d.ts +310 -310
  39. package/types/src/render/sui/textRender.d.ts +189 -189
  40. package/types/src/render/sui/tracker.d.ts +90 -90
  41. package/types/src/render/vex/glyphDimensions.d.ts +23 -23
  42. package/types/src/render/vex/smoAdapter.d.ts +46 -46
  43. package/types/src/render/vex/toVex.d.ts +13 -13
  44. package/types/src/render/vex/vxMeasure.d.ts +95 -95
  45. package/types/src/render/vex/vxNote.d.ts +55 -55
  46. package/types/src/render/vex/vxSystem.d.ts +64 -64
  47. package/types/src/smo/data/common.d.ts +220 -220
  48. package/types/src/smo/data/measure.d.ts +510 -510
  49. package/types/src/smo/data/measureModifiers.d.ts +506 -506
  50. package/types/src/smo/data/music.d.ts +438 -438
  51. package/types/src/smo/data/note.d.ts +485 -485
  52. package/types/src/smo/data/noteModifiers.d.ts +590 -590
  53. package/types/src/smo/data/partInfo.d.ts +162 -162
  54. package/types/src/smo/data/score.d.ts +395 -395
  55. package/types/src/smo/data/scoreModifiers.d.ts +433 -433
  56. package/types/src/smo/data/scoreText.d.ts +277 -277
  57. package/types/src/smo/data/staffModifiers.d.ts +767 -767
  58. package/types/src/smo/data/systemStaff.d.ts +238 -238
  59. package/types/src/smo/data/tuplet.d.ts +146 -146
  60. package/types/src/smo/midi/midiToSmo.d.ts +198 -198
  61. package/types/src/smo/midi/smoToMidi.d.ts +23 -23
  62. package/types/src/smo/mxml/smoToXml.d.ts +165 -165
  63. package/types/src/smo/mxml/xmlHelpers.d.ts +140 -140
  64. package/types/src/smo/mxml/xmlState.d.ts +257 -257
  65. package/types/src/smo/mxml/xmlToSmo.d.ts +92 -92
  66. package/types/src/smo/xform/beamers.d.ts +46 -46
  67. package/types/src/smo/xform/copypaste.d.ts +99 -99
  68. package/types/src/smo/xform/operations.d.ts +127 -127
  69. package/types/src/smo/xform/roadmap.d.ts +70 -70
  70. package/types/src/smo/xform/selections.d.ts +153 -153
  71. package/types/src/smo/xform/tickDuration.d.ts +155 -155
  72. package/types/src/smo/xform/tickMap.d.ts +34 -34
  73. package/types/src/smo/xform/undo.d.ts +142 -142
  74. package/types/src/smo/xform/updateAudio.d.ts +9 -9
  75. package/types/src/styles/font_metrics/Commissioner-Medium-Metrics.d.ts +871 -871
  76. package/types/src/styles/font_metrics/ConcertOne-Regular.d.ts +871 -871
  77. package/types/src/styles/font_metrics/Merriweather-Regular.d.ts +871 -871
  78. package/types/src/styles/font_metrics/arial_metrics.d.ts +870 -870
  79. package/types/src/styles/font_metrics/ssp-sans-metrics.d.ts +871 -871
  80. package/types/src/styles/font_metrics/ssp-serif-metrics.d.ts +871 -871
  81. package/types/src/styles/font_metrics/times_metrics.d.ts +870 -870
  82. package/types/src/ui/buttons/button.d.ts +95 -95
  83. package/types/src/ui/buttons/collapsable.d.ts +42 -42
  84. package/types/src/ui/buttons/display.d.ts +23 -23
  85. package/types/src/ui/buttons/ribbon.d.ts +76 -76
  86. package/types/src/ui/common.d.ts +45 -45
  87. package/types/src/ui/composable/draggable.d.ts +12 -12
  88. package/types/src/ui/configuration.d.ts +31 -31
  89. package/types/src/ui/dialogs/adapter.d.ts +107 -107
  90. package/types/src/ui/dialogs/addMeasure.d.ts +20 -20
  91. package/types/src/ui/dialogs/arpeggio.d.ts +2 -2
  92. package/types/src/ui/dialogs/articulation.d.ts +2 -2
  93. package/types/src/ui/dialogs/audioSettings.d.ts +32 -32
  94. package/types/src/ui/dialogs/chordChange.d.ts +35 -35
  95. package/types/src/ui/dialogs/clefChange.d.ts +2 -2
  96. package/types/src/ui/dialogs/components/baseComponent.d.ts +158 -158
  97. package/types/src/ui/dialogs/components/button.d.ts +54 -54
  98. package/types/src/ui/dialogs/components/buttonArray.d.ts +101 -101
  99. package/types/src/ui/dialogs/components/checkdrop.d.ts +27 -27
  100. package/types/src/ui/dialogs/components/dragText.d.ts +27 -27
  101. package/types/src/ui/dialogs/components/dropdown.d.ts +78 -78
  102. package/types/src/ui/dialogs/components/fileDownload.d.ts +28 -28
  103. package/types/src/ui/dialogs/components/fontComponent.d.ts +32 -32
  104. package/types/src/ui/dialogs/components/noteText.d.ts +98 -98
  105. package/types/src/ui/dialogs/components/pitch.d.ts +95 -95
  106. package/types/src/ui/dialogs/components/rocker.d.ts +66 -66
  107. package/types/src/ui/dialogs/components/staffComponents.d.ts +77 -77
  108. package/types/src/ui/dialogs/components/textCheck.d.ts +38 -38
  109. package/types/src/ui/dialogs/components/textInPlace.d.ts +90 -90
  110. package/types/src/ui/dialogs/components/textInput.d.ts +58 -58
  111. package/types/src/ui/dialogs/components/tie.d.ts +41 -41
  112. package/types/src/ui/dialogs/components/toggle.d.ts +53 -53
  113. package/types/src/ui/dialogs/components/tree.d.ts +46 -46
  114. package/types/src/ui/dialogs/customTuplets.d.ts +25 -25
  115. package/types/src/ui/dialogs/dialog.d.ts +201 -201
  116. package/types/src/ui/dialogs/durations.d.ts +2 -2
  117. package/types/src/ui/dialogs/dynamics.d.ts +37 -37
  118. package/types/src/ui/dialogs/endings.d.ts +61 -61
  119. package/types/src/ui/dialogs/factory.d.ts +15 -15
  120. package/types/src/ui/dialogs/fileDialogs.d.ts +4 -4
  121. package/types/src/ui/dialogs/fonts.d.ts +2 -2
  122. package/types/src/ui/dialogs/globalLayout.d.ts +2 -2
  123. package/types/src/ui/dialogs/gracenote.d.ts +2 -2
  124. package/types/src/ui/dialogs/hairpin.d.ts +35 -35
  125. package/types/src/ui/dialogs/instrument.d.ts +3 -3
  126. package/types/src/ui/dialogs/keySignature.d.ts +33 -33
  127. package/types/src/ui/dialogs/library.d.ts +70 -70
  128. package/types/src/ui/dialogs/lyric.d.ts +39 -39
  129. package/types/src/ui/dialogs/measureFormat.d.ts +52 -52
  130. package/types/src/ui/dialogs/microtones.d.ts +2 -2
  131. package/types/src/ui/dialogs/noteHead.d.ts +2 -2
  132. package/types/src/ui/dialogs/ornament.d.ts +2 -2
  133. package/types/src/ui/dialogs/pageLayout.d.ts +2 -2
  134. package/types/src/ui/dialogs/partInfo.d.ts +2 -2
  135. package/types/src/ui/dialogs/pedalMarking.d.ts +35 -35
  136. package/types/src/ui/dialogs/pitch.d.ts +2 -2
  137. package/types/src/ui/dialogs/preferences.d.ts +2 -2
  138. package/types/src/ui/dialogs/scoreId.d.ts +2 -2
  139. package/types/src/ui/dialogs/scoreView.d.ts +2 -2
  140. package/types/src/ui/dialogs/slur.d.ts +57 -57
  141. package/types/src/ui/dialogs/staffGroup.d.ts +2 -2
  142. package/types/src/ui/dialogs/tabNote.d.ts +32 -32
  143. package/types/src/ui/dialogs/tabStave.d.ts +43 -43
  144. package/types/src/ui/dialogs/tempo.d.ts +50 -50
  145. package/types/src/ui/dialogs/textBlock.d.ts +61 -61
  146. package/types/src/ui/dialogs/textBracket.d.ts +35 -35
  147. package/types/src/ui/dialogs/tie.d.ts +41 -41
  148. package/types/src/ui/dialogs/timeSignature.d.ts +34 -34
  149. package/types/src/ui/dialogs/transposeScore.d.ts +2 -2
  150. package/types/src/ui/dialogs/volta.d.ts +40 -40
  151. package/types/src/ui/eventSource.d.ts +63 -63
  152. package/types/src/ui/exceptions.d.ts +12 -12
  153. package/types/src/ui/fileio/fileInput.d.ts +12 -12
  154. package/types/src/ui/fileio/library.d.ts +40 -40
  155. package/types/src/ui/fileio/xhrLoader.d.ts +18 -18
  156. package/types/src/ui/help.d.ts +22 -22
  157. package/types/src/ui/i18n/language.d.ts +37 -37
  158. package/types/src/ui/i18n/language_ar.d.ts +5 -5
  159. package/types/src/ui/i18n/language_de.d.ts +1 -1
  160. package/types/src/ui/i18n/language_en.d.ts +18 -18
  161. package/types/src/ui/i18n/translationEditor.d.ts +14 -14
  162. package/types/src/ui/keyBindings/default/editorKeys.d.ts +7 -7
  163. package/types/src/ui/keyBindings/default/trackerKeys.d.ts +7 -7
  164. package/types/src/ui/menus/beams.d.ts +13 -13
  165. package/types/src/ui/menus/edit.d.ts +8 -8
  166. package/types/src/ui/menus/file.d.ts +26 -26
  167. package/types/src/ui/menus/help.d.ts +8 -8
  168. package/types/src/ui/menus/keySignature.d.ts +13 -13
  169. package/types/src/ui/menus/language.d.ts +12 -12
  170. package/types/src/ui/menus/manager.d.ts +57 -57
  171. package/types/src/ui/menus/measure.d.ts +8 -8
  172. package/types/src/ui/menus/menu.d.ts +136 -136
  173. package/types/src/ui/menus/note.d.ts +8 -8
  174. package/types/src/ui/menus/partSelection.d.ts +19 -19
  175. package/types/src/ui/menus/parts.d.ts +50 -50
  176. package/types/src/ui/menus/score.d.ts +20 -20
  177. package/types/src/ui/menus/staffModifier.d.ts +21 -21
  178. package/types/src/ui/menus/text.d.ts +8 -8
  179. package/types/src/ui/menus/timeSignature.d.ts +12 -12
  180. package/types/src/ui/menus/tuplets.d.ts +13 -13
  181. package/types/src/ui/menus/voices.d.ts +8 -8
  182. package/types/src/ui/modalDialogs.d.ts +1 -1
  183. package/types/src/ui/navigation.d.ts +15 -15
  184. package/types/src/ui/qwerty.d.ts +41 -41
  185. package/types/src/ui/ribbonLayout/default/defaultRibbon.d.ts +15 -15
  186. package/types/src/ui/ribbonLayout/default/tabletRibbon.d.ts +22 -22
  187. package/types/typedoc.d.ts +158 -158
@@ -1,34 +1,34 @@
1
- import { TickMappable } from '../data/measure';
2
- import { TickAccidental } from '../data/common';
3
- import { SmoNote } from '../data/note';
4
- /**
5
- * create a map note durations at each index into the voice, including the accidentals at each duration.
6
- * return format:
7
- * ```
8
- tickmap = {
9
- totalDuration: 16384,
10
- durationMap:[2048,4096,..], // A running total per tick
11
- deltaMap:[2048,2048...], a map of deltas
12
- ```
13
- * @category SmoTransform
14
- */
15
- export declare class TickMap {
16
- keySignature: string;
17
- voice: number;
18
- notes: SmoNote[];
19
- priorAccidentals: TickAccidental[];
20
- index: number;
21
- startIndex: number;
22
- endIndex: number;
23
- totalDuration: number;
24
- delta: number;
25
- durationMap: number[];
26
- deltaMap: number[];
27
- accidentalMap: Record<string, TickAccidental>[];
28
- durationAccidentalMap: Record<string | number, Record<string, TickAccidental>>;
29
- constructor(measure: TickMappable, voiceIndex: number);
30
- _getAccidentalsForKey(map: Record<string, TickAccidental>): void;
31
- updateAccidentalMap(note: SmoNote): void;
32
- get duration(): number;
33
- createMap(): void;
34
- }
1
+ import { TickMappable } from '../data/measure';
2
+ import { TickAccidental } from '../data/common';
3
+ import { SmoNote } from '../data/note';
4
+ /**
5
+ * create a map note durations at each index into the voice, including the accidentals at each duration.
6
+ * return format:
7
+ * ```
8
+ tickmap = {
9
+ totalDuration: 16384,
10
+ durationMap:[2048,4096,..], // A running total per tick
11
+ deltaMap:[2048,2048...], a map of deltas
12
+ ```
13
+ * @category SmoTransform
14
+ */
15
+ export declare class TickMap {
16
+ keySignature: string;
17
+ voice: number;
18
+ notes: SmoNote[];
19
+ priorAccidentals: TickAccidental[];
20
+ index: number;
21
+ startIndex: number;
22
+ endIndex: number;
23
+ totalDuration: number;
24
+ delta: number;
25
+ durationMap: number[];
26
+ deltaMap: number[];
27
+ accidentalMap: Record<string, TickAccidental>[];
28
+ durationAccidentalMap: Record<string | number, Record<string, TickAccidental>>;
29
+ constructor(measure: TickMappable, voiceIndex: number);
30
+ _getAccidentalsForKey(map: Record<string, TickAccidental>): void;
31
+ updateAccidentalMap(note: SmoNote): void;
32
+ get duration(): number;
33
+ createMap(): void;
34
+ }
@@ -1,142 +1,142 @@
1
- import { SmoScore } from '../data/score';
2
- import { SmoMeasure, SmoMeasureParamsSer } from '../data/measure';
3
- import { SmoTextGroupContainer } from '../data/scoreText';
4
- import { SmoSelector } from './selections';
5
- /**
6
- * @category SmoTransform
7
- */
8
- export interface UndoEntry {
9
- title: string;
10
- type: number;
11
- selector: SmoSelector;
12
- subtype: number;
13
- grouped: boolean;
14
- json?: any;
15
- }
16
- export declare function copyUndo(entry: UndoEntry): UndoEntry;
17
- /**
18
- * A grouped set of undo actions, can be undone at once
19
- * @category SmoTransform
20
- */
21
- export declare class UndoSet {
22
- buffers: UndoEntry[];
23
- constructor();
24
- get isEmpty(): boolean;
25
- push(entry: UndoEntry): void;
26
- pop(): UndoEntry | undefined;
27
- get length(): number;
28
- }
29
- /**
30
- * manage a set of undo or redo operations on a score. The objects passed into
31
- * undo must implement serialize()/deserialize().
32
- * Only one undo buffer is kept for the score. Undo is always done on the stored
33
- * score and translated to the display score.
34
- * UndoBuffer contains an undoEntry array. An undoEntry might contain several
35
- * undo operations, if the were done together as a block. This happens often when
36
- * several changes are made while a dialog box is open.
37
- * an undoEntry is one of 7 things:
38
- * * A single measure,
39
- * * A single staff
40
- * * the whole score
41
- * * a score modifier (text)
42
- * * score attributes (layout, etc)
43
- * * column - all the measures at one index
44
- * * rectangle - a rectangle of measures
45
- * @category SmoTransform
46
- * */
47
- export declare class UndoBuffer {
48
- static groupCount: number;
49
- static get bufferMax(): number;
50
- static get bufferTypes(): {
51
- FIRST: number;
52
- MEASURE: number;
53
- STAFF: number;
54
- SCORE: number;
55
- SCORE_MODIFIER: number;
56
- COLUMN: number;
57
- RECTANGLE: number;
58
- SCORE_ATTRIBUTES: number;
59
- STAFF_MODIFIER: number;
60
- PART_MODIFIER: number;
61
- LAST: number;
62
- };
63
- static get bufferSubtypes(): {
64
- NONE: number;
65
- ADD: number;
66
- REMOVE: number;
67
- UPDATE: number;
68
- };
69
- static get bufferTypeLabel(): string[];
70
- static serializeMeasure(measure: SmoMeasure): SmoMeasureParamsSer;
71
- buffer: UndoSet[];
72
- reconcile: number;
73
- opCount: number;
74
- _grouping: boolean;
75
- constructor();
76
- get grouping(): boolean;
77
- set grouping(val: boolean);
78
- reset(): void;
79
- /**
80
- * return true if any of the last 2 buffers have undo operations.
81
- * @returns
82
- */
83
- buffersAvailable(): boolean;
84
- /**
85
- * Add the current state of the score required to undo the next operation we
86
- * are about to perform. For instance, if we are adding a crescendo, we back up the
87
- * staff the crescendo will go on.
88
- * @param title
89
- * @param type
90
- * @param selector
91
- * @param obj
92
- * @param subtype
93
- */
94
- addBuffer(title: string, type: number, selector: SmoSelector, obj: any, subtype: number): void;
95
- /**
96
- * Make sure we always have a buffer to record undoable operations
97
- */
98
- checkNull(): void;
99
- /**
100
- * Internal method to pop the top buffer off the stack.
101
- * @returns
102
- */
103
- popUndoSet(): UndoSet | null;
104
- /**
105
- * non-destructively get the top undo buffer.
106
- * @returns
107
- */
108
- peekUndoSet(): UndoSet | null;
109
- /**
110
- * return the type of the undo operation, so the view can know which
111
- * parts of the score are affected.
112
- * @param func
113
- * @returns
114
- */
115
- undoTypePeek(func: (buf: UndoEntry) => boolean): boolean;
116
- undoScorePeek(): boolean;
117
- undoScoreTextGroupPeek(): boolean;
118
- undoPartTextGroupPeek(): boolean;
119
- /**
120
- * Get the range of measures affected by the next undo operation. Only
121
- * makes sense to call this if the undo type is MEASURE or COLUMN
122
- * @returns
123
- */
124
- getMeasureRange(): number[];
125
- /**
126
- * Undo for text is different since text is not associated with a specific part of the
127
- * score (usually)
128
- * @param score
129
- * @param staffMap
130
- * @param buf
131
- */
132
- undoTextGroup(score: SmoTextGroupContainer, staffMap: Record<number, number>, buf: UndoEntry): void;
133
- /**
134
- * Undo the operation at the top of the undo stack. This is done by replacing
135
- * the music as it existed before the change was made.
136
- * @param score
137
- * @param staffMap
138
- * @param pop
139
- * @returns
140
- */
141
- undo(score: SmoScore, staffMap: Record<number, number>, pop: boolean): SmoScore;
142
- }
1
+ import { SmoScore } from '../data/score';
2
+ import { SmoMeasure, SmoMeasureParamsSer } from '../data/measure';
3
+ import { SmoTextGroupContainer } from '../data/scoreText';
4
+ import { SmoSelector } from './selections';
5
+ /**
6
+ * @category SmoTransform
7
+ */
8
+ export interface UndoEntry {
9
+ title: string;
10
+ type: number;
11
+ selector: SmoSelector;
12
+ subtype: number;
13
+ grouped: boolean;
14
+ json?: any;
15
+ }
16
+ export declare function copyUndo(entry: UndoEntry): UndoEntry;
17
+ /**
18
+ * A grouped set of undo actions, can be undone at once
19
+ * @category SmoTransform
20
+ */
21
+ export declare class UndoSet {
22
+ buffers: UndoEntry[];
23
+ constructor();
24
+ get isEmpty(): boolean;
25
+ push(entry: UndoEntry): void;
26
+ pop(): UndoEntry | undefined;
27
+ get length(): number;
28
+ }
29
+ /**
30
+ * manage a set of undo or redo operations on a score. The objects passed into
31
+ * undo must implement serialize()/deserialize().
32
+ * Only one undo buffer is kept for the score. Undo is always done on the stored
33
+ * score and translated to the display score.
34
+ * UndoBuffer contains an undoEntry array. An undoEntry might contain several
35
+ * undo operations, if the were done together as a block. This happens often when
36
+ * several changes are made while a dialog box is open.
37
+ * an undoEntry is one of 7 things:
38
+ * * A single measure,
39
+ * * A single staff
40
+ * * the whole score
41
+ * * a score modifier (text)
42
+ * * score attributes (layout, etc)
43
+ * * column - all the measures at one index
44
+ * * rectangle - a rectangle of measures
45
+ * @category SmoTransform
46
+ * */
47
+ export declare class UndoBuffer {
48
+ static groupCount: number;
49
+ static get bufferMax(): number;
50
+ static get bufferTypes(): {
51
+ FIRST: number;
52
+ MEASURE: number;
53
+ STAFF: number;
54
+ SCORE: number;
55
+ SCORE_MODIFIER: number;
56
+ COLUMN: number;
57
+ RECTANGLE: number;
58
+ SCORE_ATTRIBUTES: number;
59
+ STAFF_MODIFIER: number;
60
+ PART_MODIFIER: number;
61
+ LAST: number;
62
+ };
63
+ static get bufferSubtypes(): {
64
+ NONE: number;
65
+ ADD: number;
66
+ REMOVE: number;
67
+ UPDATE: number;
68
+ };
69
+ static get bufferTypeLabel(): string[];
70
+ static serializeMeasure(measure: SmoMeasure): SmoMeasureParamsSer;
71
+ buffer: UndoSet[];
72
+ reconcile: number;
73
+ opCount: number;
74
+ _grouping: boolean;
75
+ constructor();
76
+ get grouping(): boolean;
77
+ set grouping(val: boolean);
78
+ reset(): void;
79
+ /**
80
+ * return true if any of the last 2 buffers have undo operations.
81
+ * @returns
82
+ */
83
+ buffersAvailable(): boolean;
84
+ /**
85
+ * Add the current state of the score required to undo the next operation we
86
+ * are about to perform. For instance, if we are adding a crescendo, we back up the
87
+ * staff the crescendo will go on.
88
+ * @param title
89
+ * @param type
90
+ * @param selector
91
+ * @param obj
92
+ * @param subtype
93
+ */
94
+ addBuffer(title: string, type: number, selector: SmoSelector, obj: any, subtype: number): void;
95
+ /**
96
+ * Make sure we always have a buffer to record undoable operations
97
+ */
98
+ checkNull(): void;
99
+ /**
100
+ * Internal method to pop the top buffer off the stack.
101
+ * @returns
102
+ */
103
+ popUndoSet(): UndoSet | null;
104
+ /**
105
+ * non-destructively get the top undo buffer.
106
+ * @returns
107
+ */
108
+ peekUndoSet(): UndoSet | null;
109
+ /**
110
+ * return the type of the undo operation, so the view can know which
111
+ * parts of the score are affected.
112
+ * @param func
113
+ * @returns
114
+ */
115
+ undoTypePeek(func: (buf: UndoEntry) => boolean): boolean;
116
+ undoScorePeek(): boolean;
117
+ undoScoreTextGroupPeek(): boolean;
118
+ undoPartTextGroupPeek(): boolean;
119
+ /**
120
+ * Get the range of measures affected by the next undo operation. Only
121
+ * makes sense to call this if the undo type is MEASURE or COLUMN
122
+ * @returns
123
+ */
124
+ getMeasureRange(): number[];
125
+ /**
126
+ * Undo for text is different since text is not associated with a specific part of the
127
+ * score (usually)
128
+ * @param score
129
+ * @param staffMap
130
+ * @param buf
131
+ */
132
+ undoTextGroup(score: SmoTextGroupContainer, staffMap: Record<number, number>, buf: UndoEntry): void;
133
+ /**
134
+ * Undo the operation at the top of the undo stack. This is done by replacing
135
+ * the music as it existed before the change was made.
136
+ * @param score
137
+ * @param staffMap
138
+ * @param pop
139
+ * @returns
140
+ */
141
+ undo(score: SmoScore, staffMap: Record<number, number>, pop: boolean): SmoScore;
142
+ }
@@ -1,9 +1,9 @@
1
- import { SmoScore } from '../data/score';
2
- import { ScoreRoadMapBuilder } from './roadmap';
3
- /**
4
- * Set the note duration to account for ties. Tied notes have greater duration,
5
- * notes tied to don't sound.
6
- * @param score
7
- * @param roadMap
8
- */
9
- export declare const PopulateAudioData: (score: SmoScore, roadMap: ScoreRoadMapBuilder) => void;
1
+ import { SmoScore } from '../data/score';
2
+ import { ScoreRoadMapBuilder } from './roadmap';
3
+ /**
4
+ * Set the note duration to account for ties. Tied notes have greater duration,
5
+ * notes tied to don't sound.
6
+ * @param score
7
+ * @param roadMap
8
+ */
9
+ export declare const PopulateAudioData: (score: SmoScore, roadMap: ScoreRoadMapBuilder) => void;