import { MusicSheet } from "../MusicSheet"; import { SourceMeasure } from "../VoiceData/SourceMeasure"; import { StaffMeasure } from "./StaffMeasure"; import { GraphicalMusicPage } from "./GraphicalMusicPage"; import { VerticalGraphicalStaffEntryContainer } from "./VerticalGraphicalStaffEntryContainer"; import { GraphicalLabel } from "./GraphicalLabel"; import { GraphicalLine } from "./GraphicalLine"; import { MusicSystem } from "./MusicSystem"; import { GraphicalStaffEntry } from "./GraphicalStaffEntry"; import { SourceStaffEntry } from "../VoiceData/SourceStaffEntry"; import { PointF2D } from "../../Common/DataObjects/PointF2D"; import { ClefInstruction } from "../VoiceData/Instructions/ClefInstruction"; import { KeyInstruction } from "../VoiceData/Instructions/KeyInstruction"; import { Fraction } from "../../Common/DataObjects/fraction"; import { GraphicalNote } from "./GraphicalNote"; import { Note } from "../VoiceData/Note"; import { MusicSheetCalculator } from "./MusicSheetCalculator"; import Dictionary from "typescript-collections/dist/lib/Dictionary"; import { SelectionStartSymbol } from "./SelectionStartSymbol"; import { SelectionEndSymbol } from "./SelectionEndSymbol"; import { OutlineAndFillStyleEnum } from "./DrawingEnums"; export declare class GraphicalMusicSheet { constructor(musicSheet: MusicSheet, calculator: MusicSheetCalculator); sourceToGraphicalMeasureLinks: Dictionary; private musicSheet; private calculator; private musicPages; private measureList; private verticalGraphicalStaffEntryContainers; private title; private subtitle; private composer; private lyricist; private cursors; private selectionStartSymbol; private selectionEndSymbol; private minAllowedSystemWidth; private numberOfStaves; private leadSheet; ParentMusicSheet: MusicSheet; GetCalculator: MusicSheetCalculator; MusicPages: GraphicalMusicPage[]; MeasureList: StaffMeasure[][]; VerticalGraphicalStaffEntryContainers: VerticalGraphicalStaffEntryContainer[]; Title: GraphicalLabel; Subtitle: GraphicalLabel; Composer: GraphicalLabel; Lyricist: GraphicalLabel; Cursors: GraphicalLine[]; SelectionStartSymbol: SelectionStartSymbol; SelectionEndSymbol: SelectionEndSymbol; MinAllowedSystemWidth: number; NumberOfStaves: number; LeadSheet: boolean; static transformRelativeToAbsolutePosition(graphicalMusicSheet: GraphicalMusicSheet): void; Initialize(): void; reCalculate(): void; prepare(): void; EnforceRedrawOfMusicSystems(): void; getClickedObject(positionOnMusicSheet: PointF2D): T; findGraphicalStaffEntryFromMeasureList(staffIndex: number, measureIndex: number, sourceStaffEntry: SourceStaffEntry): GraphicalStaffEntry; findNextGraphicalStaffEntry(staffIndex: number, measureIndex: number, graphicalStaffEntry: GraphicalStaffEntry): GraphicalStaffEntry; getFirstVisibleMeasuresListFromIndeces(start: number, end: number): StaffMeasure[]; orderMeasuresByStaffLine(measures: StaffMeasure[]): StaffMeasure[][]; initializeActiveClefs(): ClefInstruction[]; GetMainKey(): KeyInstruction; getOrCreateVerticalContainer(timestamp: Fraction): VerticalGraphicalStaffEntryContainer; GetVerticalContainerFromTimestamp(timestamp: Fraction, startIndex?: number): VerticalGraphicalStaffEntryContainer; GetInterpolatedIndexInVerticalContainers(musicTimestamp: Fraction): number; getVisibleStavesIndecesFromSourceMeasure(visibleMeasures: StaffMeasure[]): number[]; getGraphicalMeasureFromSourceMeasureAndIndex(sourceMeasure: SourceMeasure, index: number): StaffMeasure; getMeasureIndex(graphicalMeasure: StaffMeasure, measureIndex: number, inListIndex: number): boolean; GetNearesNote(clickPosition: PointF2D, maxClickDist: PointF2D): GraphicalNote; GetClickableLabel(clickPosition: PointF2D): GraphicalLabel; GetNearestStaffEntry(clickPosition: PointF2D): GraphicalStaffEntry; GetPossibleCommentAnchor(clickPosition: PointF2D): SourceStaffEntry; getClickedObjectOfType(positionOnMusicSheet: PointF2D): T; tryGetTimestampFromPosition(positionOnMusicSheet: PointF2D): Fraction; tryGetClickableLabel(positionOnMusicSheet: PointF2D): GraphicalLabel; tryGetTimeStampFromPosition(positionOnMusicSheet: PointF2D): Fraction; getStaffEntry(index: number): GraphicalStaffEntry; GetPreviousVisibleContainerIndex(index: number): number; GetNextVisibleContainerIndex(index: number): number; findClosestLeftStaffEntry(fractionalIndex: number, searchOnlyVisibleEntries: boolean): GraphicalStaffEntry; findClosestRightStaffEntry(fractionalIndex: number, returnOnlyVisibleEntries: boolean): GraphicalStaffEntry; calculateCursorLineAtTimestamp(musicTimestamp: Fraction, styleEnum: OutlineAndFillStyleEnum): GraphicalLine; calculateXPositionFromTimestamp(timeStamp: Fraction): [number, MusicSystem]; GetNumberOfVisibleInstruments(): number; GetNumberOfFollowedInstruments(): number; GetGraphicalFromSourceMeasure(sourceMeasure: SourceMeasure): StaffMeasure[]; GetGraphicalFromSourceStaffEntry(sourceStaffEntry: SourceStaffEntry): GraphicalStaffEntry; GetGraphicalNoteFromSourceNote(note: Note, containingGse: GraphicalStaffEntry): GraphicalNote; private CalculateDistance(pt1, pt2); private getLongestStaffEntryDuration(index); } export declare class SystemImageProperties { positionInPixels: PointF2D; systemImageId: number; system: MusicSystem; }