#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases. #Warn ; Enable warnings to assist with detecting common errors. SendMode Input ; Recommended for new scripts due to its superior speed and reliability. SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory. #SingleInstance force ; Replaces script (Reloads). #Persistent ; to make it run indefinitely ; The Include command at the beginning of the F1, F2 etc. macrogroup files causes ; those scripts to behave as if this Coordinates file is present in the macrogroup files ; Result: the data of this Coordinates file are loaded within F1, F2 etc. ; In the F1, F2 etc. macrogroup files some lines are marked with (*change*?) ; These lines are candidates for adaptation. E.g. an InpuBox positioned relative to the mouse position ; Reasons: your screen resolution, user defined shortcuts or personal preferences ; All coordinates work on the testscreen, resolution 1920x1080 at 96 Dots Per Inch ; Replace the values by those found by you. ToggleCopy := 0 ; initialisation for the hotkey #LButton (toggle - copy) ; value needed in Master_stripped.ahk ; ♣============================ COORDINATES - EXAMPLE ============================================= Menu_Add_X := 133 ; the containers act as variables which can contain any number Menu_Add_Y := 41 ; using the lingo we say "The VARIABLE Menu_Add_X has the VALUE 133" ; replace the numbers by your own coordinates ; ♣================================= WINDOW PREFERENCES =========================================== ; Window Preferences MINIMIZED Tab_Sc_X := 470 ; (TAB_SC) Tab Shortcuts Tab_Sc_Y := 55 ; Window Preferences Pref_Search_X := 584 ; (PREF_SEARCH) Search rectangle Pref_Search_Y := 515 ; Window Preferences ; ♣====================================== SELECT ================================================== ; Window Select MINIMIZED (for elements - no notes - six down) (for rests 4 up) -> More WS_01_X := 46 ; (WS_01) Same subtype WS_01 WS_01_Y := 123 ; Window Select WS_02_X := 46 ; (WS_02) Same staff WS_02 WS_02_Y := 152 ; Window Select WS_03_X := 155 ; (WS_03) In selection WS_03 WS_03_Y := 152 ; Window Select WS_04_X := 46 ; (WS_04) Same voice WS_04 WS_04_Y := 180 ; Window Select WS_05_X := 155 ; (WS_05) Same system WS_05 WS_05_Y := 180 ; Window Select ; ♣================================ WINDOW SELECT NOTES =========================================== ; Window Select Notes MINIMIZED - 4 x arrow up -> More WSN_02X := 46 ; (WSN_02) Same pitch WSN_02 WSN_02Y := 120 ; Window Select Notes WSN_05X := 46 ; (WSN_05) Same duration WSN_05 WSN_05Y := 204 ; Window Select Notes WSN_06X := 46 ; (WSN_06) Same note name WSN_06 WSN_06Y := 232 ; Window Select Notes WSN_07X := 46 ; (WSN_07) Same staff WSN_07 WSN_07Y := 260 ; Window Select Notes WSN_08X := 188 ; (WSN_08) In selection WSN_08 WSN_08Y := 260 ; Window Select Notes WSN_09X := 46 ; (WSN_09) Same voice WSN_09 WSN_09Y := 288 ; Window Select Notes ; ♣=================================== SELECT COLOR =============================================== ; Window Select Color MINIMIZED - Hotspot RGB_X := 440 ; Window Select Color HTML: #RGB rectangle RGB_Y := 410 ; ♣===================================== DEFINED STATE ============================================ Min_Pal_Width := 67 Def_Pal_Width := 111 Min_Insp_Width := 1853 Def_Insp_Width := 1640 Pal_Sep_Height := 1000 ; this is the height of the tooltip pal/selfilter separator, chosen low on the screen ; select a text, edit - pal/selfilter separator just above the icons for bold etc. see pdf ; ImageSearch, , , IM_01_X1, IM_01_Y1, IM_01_X2, IM_01_Y2, *40 IM_01_Inspector_Inspector.png IM_01_X1 := 1639 ; Top Left Corner TLC of Search rectangle X IM_01_Y1 := 23 ; idem Y IM_01_X2 := 1697 ; Bottom Right Corner BRC of Search rectangle IM_01_Y2 := 43 ; idem Y ; ImageSearch, X, Y, IM_01_2_X1, IM_01_2_Y1, IM_01_2_X2, IM_01_2_Y2, *40 IM_01_2_Inspector_Displaced_Insp.png IM_01_2_X1 := 198 ; see pdf IM_01_2_Y1 := 23 ; IM_01_2_X2 := 1919 ; IM_01_2_Y2 := 51 ; ; related: Insp_Loc_Dist_X := 2 ; see pdf and the related hotkey Z + F2. Distance to where the Inspector separator becomes active ; ImageSearch, X, Y, Pal_Loc_X1, Pal_Loc_Y1, Pal_Loc_X2, Pal_Loc_Y2, *80 Palette_Locator_Left.png ; ImageSearch, X, Y, Pal_Loc_X1, Pal_Loc_Y1, Pal_Loc_X2, Pal_Loc_Y2, *80 Palette_Locator_Right.png Pal_Loc_X1 := 36 ; see pdf. In full screen, no toolbars, this search area is a small long ribbon Pal_Loc_Y1 := 18 ; in extreme cases the palettes can be shifted in the inspector area Pal_Loc_X2 := 1728 ; also: the full width of canvas can be used when one Pal_Loc_Y2 := 43 ; or more F1,F2 etc. tooltips are absent ; related: Left_Loc_Dist_X := 30 ; see pdf and the related hotkey Z + F1. Measure the distance between the spot hit Right_Loc_Dist_X := 42 ; by the mouse and the spot where the Palette separator becomes active ; Hotkey CapsLock + 8 (2 versions) see pdf. ; ImageSearch, Tick_X, Tick_Y, CTS_X1, CTS_Y1, CTS_X2, CTS_Y2, *40 CTS_Checked_ticked_sign.png ; CTS_Checked_ticked_sign.png. Surface 1a is MAX CANVAS if Full Screen. No toolbars CTS_X1 := 329 ; condition: when mouse clicks on toolbar selection spot CTS_Y1 := 203 ; then these coordinates describe the area of the ticks √ CTS_X2 := 357 ; from □ File Operations to □ Workspaces. CTS_Y2 := 369 ; NB: play panel must be present so 8 rows in upper section ; after the AHK initialisation of the playpanel there will be 8 rows ; utilities command: Z + U and then IPP for initialise play panel (or manual equivalent) ; or manually: after starting MuseScore switch play panel on/off ; ImageSearch, Tick_X, Tick_Y, FoFb_X1, FoFb_Y1, FoFb_X2, FoFb_Y2, *40 CTS_Checked_ticked_sign.png FoFb_X1 := 329 ; (same as CTS_X1) condition: when mouse right-clicks on toolbar selection spot FoFb_Y1 := 203 ; (same as CTS_Y1) then these coordinates describe the area of the ticks √ FoFb_X2 := 357 ; (same as CTS_X2) from □ File Operations to □ Feedback FoFb_Y2 := 322 ; NB: play panel must be present so 8 rows in upper section ; ImageSearch, Tick_X, Tick_Y, NoteInp_X1, NoteInp_Y1, NoteInp_X2, NoteInp_Y2, *40 CTS_Checked_ticked_sign.png NoteInp_X1 := 329 ; (same as CTS_X1) condition: when mouse right-clicks on toolbar selection spot NoteInp_Y1 := 323 ; (same as FoFb_Y2) then these coordinates describe the area of the tick √ NoteInp_X2 := 357 ; (same as CTS_X2) around □ Note Input NoteInp_Y2 := 346 ; NB: play panel must be present so 8 rows in upper section ; ImageSearch, Tick_X, Tick_Y, WorkSp_X1, WorkSp_Y1, WorkSp_X2, WorkSp_Y2, *40 CTS_Checked_ticked_sign.png WorkSp_X1 := 329 ; (same as CTS_X1) condition: when mouse right-clicks on toolbar selection spot WorkSp_Y1 := 347 ; then these coordinates describe the area of the tick √ WorkSp_X2 := 357 ; (same as CTS_X2) around □ Workspaces WorkSp_Y2 := 369 ; (same as CTS_Y2) NB: play panel must be present so 8 rows in upper section ; related: ToolBarSel_X := 330 ToolBarSel_Y := 9 ToolBTickOffset_X := 4 ToolBTickOffset_Y := 4 ; ImageSearch, TrX, TrY, IM_18_X1, IM_18_Y1, IM_18_X2, IM_18_Y2, IM_18_Inspector_Triangle_Closed.png IM_18_X1 := 1639 ; inspector triangle search column IM_18_Y1 := 54 ; see pdf IM_18_X2 := 1663 IM_18_Y2 := 592 ; related TriAngleOffset_X := 10 ; If Inspector section closed (►) these X- and Y-offsets TriAngleOffset_Y := 10 ; relative to the TopLeftCorner of images IM_18 will be added ; these Images share the same X ; click that point to open ▼ the Inspector section ; ♣==================================== OTHER IMAGES ============================================== ; ImageSearch, , , IM_03_X1, IM_03_Y1, IM_03_X2, IM_03_Y2, *40 IM_03_Inspector_Nothing_Selected.png IM_03_X1 := 1730 IM_03_Y1 := 51 IM_03_X2 := 1829 IM_03_Y2 := 73 ; ♣======================= RIGHTCLICK CONTEXTUAL MENU PROTECTIVE IMAGES =========================== ; ♣============================== RIGHTCLICK CONTEXTUAL MENU ====================================== ; when you press a hotkey - a SELECTION COMMAND in group #1 - which is meant for ELEMENTS ; but you have mistakenly a NOTE or REST selected many very undesirable things can happen. ; four images of the rightclick menu protect you against this error ; you make these four images by selecting a note and putting the mouse on the item in the contextual menu ; the item turns blue. Press Printscreen and copy the screenimage in a text editor ; set the page size of the text editor that large that the screenimage is 100% ; next make the png - e.g with the SnippingTool - of the small blue area which interests us ; in the F1-group we have these commands: ; ImageSearch, , , StartX, StartY - RC_CM_Y1, StartX + RC_CM_X2, StartY + RC_CM_Y2, Remove_Selected_Range_Blue.png ; ImageSearch, , , StartX, StartY - RC_CM_Y1, StartX + RC_CM_X2, StartY + RC_CM_Y2, Swap_with_Clipboard_Blue.png ; ImageSearch, , , StartX, StartY - RC_CM_Y1, StartX + RC_CM_X2, StartY + RC_CM_Y2, Paste_Blue.png ; ImageSearch, , , StartX, StartY - RC_CM_Y1, StartX + RC_CM_X2, StartY + RC_CM_Y2, Delete_Blue.png ; so these coordinates are offsets relative to the mousposition which is StartX, StartY ; most of the time the contextual menu will probably be lower on the screen than the element ; but when the selected element is low on the screen the contextual menu is higher than the element ; determine the offset RC_CM_Y1 in the situation that the contextual menu is higher than the element ; determine the offset RC_CM_Y2 in the situation that the contextual menu is lower than the element ; NB: RC_CM_X1 is superfluous because it is the X of the mouseposition (StartX) ; >>>>>>>>>>> Pictures in the pdf on page 56 <<<<<<<<<<<<<<<<<< RC_CM_Y1 := 200 ; contextual menu higher (Paste is highest) RC_CM_X2 := 170 ; determined by the length of the longest word (+ blue right border) RC_CM_Y2 := 250 ; contextual menu lower (Remove Selected Range is lowest) ; ♣============================ INPUTBOX FOR THE HOTKEY Z + A ===================================== ; InputBox in F2_Apply_Palette_Symbols.ahk to input the shortcuts of the symbols ; Note: Almost all InputBoxes, when positioned in the Inspector area have the same coordinates (*change*?) W_IB := 289 ; Width of InputBox in Inspector H_IB := 100 ; Height of InputBox in Inspector IB_X := 1635 ; InputBox in Inspector X IB_Y := 806 ; InputBox in Inspector Y ; ♣============================== SCREEN (excl. Inspector) ======================================= ; Tooltips macrogroups: the Y-coordinate of all tooltips = 0 ToolT_Learn_X := 578 ; ToolTip Learn ToolT_F1_X := 340 ; ToolTip Search and Select ToolT_F2_X := 463 ; ToolTip Palette Symbols ; Canvas Search Area CSA_X1 := 122 ; Canvas Search Area Top Left Corner CSA_Y1 := 55 CSA_X2 := 1639 ; Canvas Search Area Bottom Right Corner CSA_Y2 := 1054 ; Statusbar Search Area ; To determine the search area of the Statusbar create and select an 'articulation tenuto staccato' (Louré) ; See the example Statusbar_Articulation_Tenuto_Staccato.png ; Make SB_X2 a few pixels bigger than the width of this png. ; Now the width of all other Statusbar images will fit in this width. ; NB: 'Statusbar_Articulation_Tenuto_Staccato.png' itself is not used by any macro. SB_X1 := 0 ; Of course: extreme left border SB_Y1 := 1038 ; set the height so that the surface can accomodate 2 stacked statusbars SB_X2 := 237 ; the reason for this: in some situations the statusbar can get an extra line. SB_Y2 := 1079 ; This coordinate is of course the height (Y- resolution) of your screen minus 1 (pixel zero is the first pixel) ; ♣========================================= HOTSPOTS ============================================= IN_002_X := 1848 ; I(002) rectangle Set Color = Reset Color IN_002_Y := 86 ; ELEMENT GROUP IN_007_X := 1688 ; I(007) Select Notes IN_007_Y := 1042 ; ELEMENT GROUP IN_008_X := 1782 ; I(008) Select Grace Notes IN_008_Y := 1042 ; ELEMENT GROUP IN_009_X := 1874 ; I(009) Select Rests IN_009_Y := 1042 ; ELEMENT GROUP IN_012_X := 1848 ; I(012) color picker rectangle (black) IN_012_Y := 86 ; OVERLAP all ELEMENTS ; There are different locations of the Reset Color button. ; WITH a Style Button: Text, Dynamics, Ornaments, Articulations, Lines, Tempo, Fingering and Repeats. ; WITHOUT: Notes, stems, beams, flags (hooks), rests, accidentals, barlines, breaths, arps & gliss. ; Whenever possible: color will be reset via Range Selection - ELEMENT GROUP I(002) IN_013_X := 1905 ; I(013) Reset (012) color elements IN_013_Y := 86 ; WITHOUT a Style button in Inspector ; ♣========================================== COLORS ============================================== ; VOICE COLORS ColorV1 := 0x0065bf ; color selected voice 1 element ColorV2 := 0x007f00 ; color selected voice 2 element ColorV3 := 0xc53f00 ; color selected voice 3 element ColorV4 := 0xc31989 ; color selected voice 4 element (red handles in lines have the same color) /* ~[ & .:: ; edit file Coordinates.ahk (open default text editor e.g. Notepad) If WinExist("Coordinates_stripped.ahk") WinActivate else Edit Return */