@coderline/alphatab 1.8.0-alpha.1647 → 1.8.0-alpha.1650

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.
@@ -357,6 +357,7 @@ export declare class AlphaTabApiBase<TSettings> {
357
357
  private _startTime;
358
358
  private _trackIndexes;
359
359
  private _trackIndexLookup;
360
+ private readonly _beatVisibilityChecker;
360
361
  private _isDestroyed;
361
362
  private _score;
362
363
  private _tracks;
@@ -5263,6 +5264,12 @@ declare class BeatTickLookup {
5263
5264
  * @returns The first beat which is visible according to the given tracks or null.
5264
5265
  */
5265
5266
  getVisibleBeatAtStart(visibleTracks: Set<number>): Beat | null;
5267
+ /**
5268
+ * Looks for the first visible beat which starts at this lookup so it can be used for cursor placement.
5269
+ * @param checker The custom checker to see if a beat is visible.
5270
+ * @returns The first beat which is visible according to the given tracks or null.
5271
+ */
5272
+ getVisibleBeatAtStartWithChecker(checker: IBeatVisibilityChecker): Beat | null;
5266
5273
  }
5267
5274
 
5268
5275
  /**
@@ -9017,6 +9024,15 @@ declare interface IBackingTrackSynthOutput extends ISynthOutput {
9017
9024
  loadBackingTrack(backingTrack: BackingTrack): void;
9018
9025
  }
9019
9026
 
9027
+ /**
9028
+ * Classes implementing this interface can help in checking whether beats are currently being
9029
+ * displayed so that they can be considered for a tick-search.
9030
+ * @public
9031
+ */
9032
+ declare interface IBeatVisibilityChecker {
9033
+ isVisible(beat: Beat): boolean;
9034
+ }
9035
+
9020
9036
  /**
9021
9037
  * This is the base public interface for canvas implementations on different plattforms.
9022
9038
  * @public
@@ -11106,6 +11122,14 @@ declare class MidiTickLookup {
11106
11122
  * @returns The information about the current beat or null if no beat could be found.
11107
11123
  */
11108
11124
  findBeat(trackLookup: Set<number>, tick: number, currentBeatHint?: MidiTickLookupFindBeatResult | null): MidiTickLookupFindBeatResult | null;
11125
+ /**
11126
+ * Finds the currently played beat given a list of tracks and the current time.
11127
+ * @param checker The checker to ask whether a beat is visible and should be considered for result.
11128
+ * @param tick The current time in midi ticks.
11129
+ * @param currentBeatHint Used for optimized lookup during playback. By passing in a previous result lookup of the next one can be optimized using heuristics. (optional).
11130
+ * @returns The information about the current beat or null if no beat could be found.
11131
+ */
11132
+ findBeatWithChecker(checker: IBeatVisibilityChecker, tick: number, currentBeatHint?: MidiTickLookupFindBeatResult | null): MidiTickLookupFindBeatResult | null;
11109
11133
  private _findBeatFast;
11110
11134
  private _fillNextBeatMultiBarRest;
11111
11135
  private _fillNextBeat;
@@ -14288,6 +14312,23 @@ declare class RenderStylesheet {
14288
14312
  * Whether barlines should be drawn across staves within the same system.
14289
14313
  */
14290
14314
  extendBarLines: boolean;
14315
+ /**
14316
+ * Whether to hide empty staves.
14317
+ */
14318
+ hideEmptyStaves: boolean;
14319
+ /**
14320
+ * Whether to also hide empty staves in the first system.
14321
+ * @remarks
14322
+ * Only has an effect when activating {@link hideEmptyStaves}.
14323
+ */
14324
+ hideEmptyStavesInFirstSystem: boolean;
14325
+ /**
14326
+ * Whether to show brackets and braces across single staves.
14327
+ * @remarks
14328
+ * This allows a more consistent view for identifying staves when using
14329
+ * {@link hideEmptyStaves}
14330
+ */
14331
+ showSingleStaffBrackets: boolean;
14291
14332
  }
14292
14333
 
14293
14334
  /**