@coderline/alphatab 1.3.0-alpha.663 → 1.3.0-alpha.675

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.
@@ -342,6 +342,19 @@ declare enum StaveProfile {
342
342
  TabMixed = 4
343
343
  }
344
344
 
345
+ /**
346
+ * Lists the different modes in which the staves and systems are arranged.
347
+ */
348
+ declare enum SystemsLayoutMode {
349
+ /**
350
+ * Use the automatic alignment system provided by alphaTab (default)
351
+ */
352
+ Automatic = 0,
353
+ /**
354
+ * Use the systems layout and sizing information stored from the score model.
355
+ */
356
+ UseModelLayout = 1
357
+ }
345
358
  /**
346
359
  * The display settings control how the general layout and display of alphaTab is done.
347
360
  * @json
@@ -388,6 +401,10 @@ declare class DisplaySettings {
388
401
  * Gets or sets the padding between the music notation and the border.
389
402
  */
390
403
  padding: number[] | null;
404
+ /**
405
+ * Gets how the systems should be layed out.
406
+ */
407
+ systemsLayoutMode: SystemsLayoutMode;
391
408
  }
392
409
 
393
410
  /**
@@ -1857,6 +1874,16 @@ declare class Track {
1857
1874
  * Gets or sets the short name of this track.
1858
1875
  */
1859
1876
  shortName: string;
1877
+ /**
1878
+ * Defines how many bars are placed into the systems (rows) when displaying
1879
+ * the track unless a value is set in the systemsLayout.
1880
+ */
1881
+ defaultSystemsLayout: number;
1882
+ /**
1883
+ * Defines how many bars are placed into the systems (rows) when displaying
1884
+ * the track.
1885
+ */
1886
+ systemsLayout: number[];
1860
1887
  /**
1861
1888
  * Gets or sets a mapping on which staff liens particular percussion instruments
1862
1889
  * should be shown.
@@ -1937,6 +1964,16 @@ declare class Score {
1937
1964
  * @json_add addTrack
1938
1965
  */
1939
1966
  tracks: Track[];
1967
+ /**
1968
+ * Defines how many bars are placed into the systems (rows) when displaying
1969
+ * multiple tracks unless a value is set in the systemsLayout.
1970
+ */
1971
+ defaultSystemsLayout: number;
1972
+ /**
1973
+ * Defines how many bars are placed into the systems (rows) when displaying
1974
+ * multiple tracks.
1975
+ */
1976
+ systemsLayout: number[];
1940
1977
  /**
1941
1978
  * Gets or sets the rendering stylesheet for this song.
1942
1979
  */
@@ -2100,6 +2137,14 @@ declare class MasterBar {
2100
2137
  * Gets or sets a value indicating whether the master bar is an anacrusis (aka. pickup bar)
2101
2138
  */
2102
2139
  isAnacrusis: boolean;
2140
+ /**
2141
+ * Gets a percentual scale for the size of the bars when displayed in a multi-track layout.
2142
+ */
2143
+ displayScale: number;
2144
+ /**
2145
+ * An absolute width of the bar to use when displaying in a multi-track layout.
2146
+ */
2147
+ displayWidth: number;
2103
2148
  /**
2104
2149
  * Calculates the time spent in this bar. (unit: midi ticks)
2105
2150
  */
@@ -2262,6 +2307,16 @@ declare class Bar {
2262
2307
  * @json_ignore
2263
2308
  */
2264
2309
  isMultiVoice: boolean;
2310
+ /**
2311
+ * A relative scale for the size of the bar when displayed. The scale is relative
2312
+ * within a single line (system/stave group). The sum of all scales in one line make the total width,
2313
+ * and then this individual scale gives the relative size.
2314
+ */
2315
+ displayScale: number;
2316
+ /**
2317
+ * An absolute width of the bar to use when displaying in single track display scenarios.
2318
+ */
2319
+ displayWidth: number;
2265
2320
  get masterBar(): MasterBar;
2266
2321
  get isEmpty(): boolean;
2267
2322
  addVoice(voice: Voice): void;
@@ -6250,6 +6305,8 @@ declare class StaveGroup {
6250
6305
  * The width that the content bars actually need
6251
6306
  */
6252
6307
  width: number;
6308
+ computedWidth: number;
6309
+ totalBarDisplayScale: number;
6253
6310
  isLast: boolean;
6254
6311
  masterBarsRenderers: MasterBarsRenderers[];
6255
6312
  staves: StaveTrackGroup[];
@@ -6259,7 +6316,7 @@ declare class StaveGroup {
6259
6316
  addMasterBarRenderers(tracks: Track[], renderers: MasterBarsRenderers): MasterBarsRenderers | null;
6260
6317
  addBars(tracks: Track[], barIndex: number): MasterBarsRenderers | null;
6261
6318
  revertLastBar(): MasterBarsRenderers | null;
6262
- updateWidth(): number;
6319
+ private updateWidthFromLastBar;
6263
6320
  private calculateAccoladeSpacing;
6264
6321
  private getStaveTrackGroup;
6265
6322
  addStaff(track: Track, staff: RenderStaff): void;
@@ -6425,6 +6482,7 @@ declare class BarRendererBase {
6425
6482
  x: number;
6426
6483
  y: number;
6427
6484
  width: number;
6485
+ computedWidth: number;
6428
6486
  height: number;
6429
6487
  index: number;
6430
6488
  topOverflow: number;
@@ -6450,6 +6508,16 @@ declare class BarRendererBase {
6450
6508
  get resources(): RenderingResources;
6451
6509
  get settings(): Settings;
6452
6510
  get scale(): number;
6511
+ /**
6512
+ * Gets the scale with which the bar should be displayed in case the model
6513
+ * scale should be respected.
6514
+ */
6515
+ get barDisplayScale(): number;
6516
+ /**
6517
+ * Gets the absolute width in which the bar should be displayed in case the model
6518
+ * scale should be respected.
6519
+ */
6520
+ get barDisplayWidth(): number;
6453
6521
  private _wasFirstOfLine;
6454
6522
  get isFirstOfLine(): boolean;
6455
6523
  get isLast(): boolean;
@@ -6546,6 +6614,23 @@ declare class TuningContainerGlyph extends RowContainerGlyph {
6546
6614
  addTuning(tuning: Tuning, trackLabel: string): void;
6547
6615
  }
6548
6616
 
6617
+ /**
6618
+ * Lists the different modes in which the staves and systems are arranged.
6619
+ */
6620
+ declare enum InternalSystemsLayoutMode {
6621
+ /**
6622
+ * Use the automatic alignment system provided by alphaTab (default)
6623
+ */
6624
+ Automatic = 0,
6625
+ /**
6626
+ * Use the relative scaling information stored in the score model.
6627
+ */
6628
+ FromModelWithScale = 1,
6629
+ /**
6630
+ * Use the absolute size information stored in the score model.
6631
+ */
6632
+ FromModelWithWidths = 2
6633
+ }
6549
6634
  /**
6550
6635
  * This is the base class for creating new layouting engines for the score renderer.
6551
6636
  */
@@ -6558,6 +6643,7 @@ declare abstract class ScoreLayout {
6558
6643
  protected scoreInfoGlyphs: Map<NotationElement, TextGlyph>;
6559
6644
  protected chordDiagrams: ChordDiagramContainerGlyph | null;
6560
6645
  protected tuningGlyph: TuningContainerGlyph | null;
6646
+ systemsLayoutMode: InternalSystemsLayoutMode;
6561
6647
  protected constructor(renderer: ScoreRenderer);
6562
6648
  abstract get firstBarX(): number;
6563
6649
  abstract get supportsResize(): boolean;
@@ -7027,4 +7113,4 @@ declare namespace index_d {
7027
7113
  };
7028
7114
  }
7029
7115
 
7030
- export { AlphaTabApi, AlphaTabError, AlphaTabErrorType, CoreSettings, DisplaySettings, FileLoadError, FingeringMode, FormatError, ImporterSettings, LayoutMode, LogLevel, Logger, NotationMode, NotationSettings, PlayerSettings, ProgressEventArgs, RenderingResources, ResizeEventArgs, ScrollMode, Settings, StaveProfile, TabRhythmMode, VibratoPlaybackSettings, index_d$4 as exporter, index_d$5 as importer, VersionInfo as meta, index_d$3 as midi, index_d$2 as model, index_d$1 as rendering, index_d as synth };
7116
+ export { AlphaTabApi, AlphaTabError, AlphaTabErrorType, CoreSettings, DisplaySettings, FileLoadError, FingeringMode, FormatError, ImporterSettings, LayoutMode, LogLevel, Logger, NotationMode, NotationSettings, PlayerSettings, ProgressEventArgs, RenderingResources, ResizeEventArgs, ScrollMode, Settings, StaveProfile, SystemsLayoutMode, TabRhythmMode, VibratoPlaybackSettings, index_d$4 as exporter, index_d$5 as importer, VersionInfo as meta, index_d$3 as midi, index_d$2 as model, index_d$1 as rendering, index_d as synth };