by mr_es335 » Sat Nov 01, 2025 7:14 am
Good day,
As I noted, it is now entirely possible for you to configure all of your F-Keys programmatically!!! Here is the completed script:
; -----------------------------------------------
; PositioningViewsF12
; Status: Working
; Date: 7:47 AM 11/1/2025
; -----------------------------------------------
PositioningViews()
; -----------------------------------------------
Func PositioningViews()
ActivateMain()
ZMixer()
Scenes()
FXChoices()
FXPrePatches()
FMixer()
StoreView()
SaveView()
EndFunc ;==>PositioningViews
; -----------------------------------------------
Func ActivateMain()
Local $hSAC_MAIN = WinActivate("[CLASS:SAC_MAIN]")
EndFunc ;==>ActivateMain
; -----------------------------------------------
Func ZMixer()
Local $iTimeOut = 250
Local $hSAC_ZOOMMIXER = "[CLASS:SAC_ZOOMMIXER]"
; -----------------------------------------------
; (1) Display the view
Send("{ALTDOWN}")
Send("{ALTUP}")
Send("V")
Send("Z")
; (2) Position the view
WinMove($hSAC_ZOOMMIXER, "", 5, 80, 103, 970)
EndFunc ;==>ZMixer
; -----------------------------------------------
Func Scenes()
Local $iTimeOut = 100
Local $hSAC_SCENES = "[CLASS:SAC_SCENES]"
; -----------------------------------------------
; (1) Display the view
Send("{ALTDOWN}")
Send("{ALTUP}")
Send("V")
Send("1")
; (2) Position the view
WinMove($hSAC_SCENES, "", 113, 80, 356, 453)
EndFunc ;==>Scenes
; -----------------------------------------------
Func FXChoices()
Local $iTimeOut = 100
Local $hSAC_FXCHOICES = "[CLASS:SAC_FXCHOICES]"
; -----------------------------------------------
; (1) Display the view
Send("{ALTDOWN}")
Send("{ALTUP}")
Send("V")
Send("C")
; (2) Position the view
WinMove($hSAC_FXCHOICES, "", 113, 535, 356, 240)
EndFunc ;==>FXChoices
; -----------------------------------------------
Func FXPrePatches()
Local $iTimeOut = 100
Local $hSAC_FXPREPATCHES = "[CLASS:SAC_FXPREPATCHES]"
; -----------------------------------------------
; (1) Display the view
Send("{ALTDOWN}")
Send("{ALTUP}")
Send("V")
Send("E")
; (2) Position the view
WinMove($hSAC_FXPREPATCHES, "", 113, 780, 356, 150)
EndFunc ;==>FXPrePatches
; -----------------------------------------------
Func FMixer()
Local $iTimeOut = 100
Local $hSAC_FULLMIXER = "[CLASS:SAC_FULLMIXER]"
; -----------------------------------------------
; (1) Display the view
Send("{ALTDOWN}")
Send("{ALTUP}")
Send("V")
Send("F")
; (2) Position the view
WinMove($hSAC_FULLMIXER, "", 474, 80, 240, 648)
EndFunc ;==>FMixer
; -----------------------------------------------
Func StoreView()
Sleep(500)
Send("{LSHIFT}+{F12}")
Send("{ENTER}")
EndFunc ;==>FMixer
; -----------------------------------------------
Func SaveView()
Sleep(500)
Send("{ALTDOWN}")
Send("{ALTUP}")
Send("F+F")
Send("{UP}+{UP}")
Send("{ENTER}+{ENTER}")
EndFunc ;==>FMixer
; -----------------------------------------------
If you are at all interested, email me, and I can send you a compiled version for your own perusal.
At present, I am compiling the data for determining precise placement of all of the various views based on default sizings [x [TOP], y [LEFT], h [HEIGHT], w [WIDTH].
Once such data has been determined and then provided, I can then place these views in the workspace at the given co-ordinates.
Interestingly, the script took me about 2 hours to produce, but now that the script is completed, the above script created the F12 view in under 2 seconds. Thus, 12 views would take a total of 24-30 seconds to complete!
And, by-the-way, we are referring to 0.5 pixel accuracy here!!
Update!!
Completing the "math", I was able to create 9 views [F1] to [F6] , [F10] to [F12] - all without having to launch SAC - with the entire layout being completed on paper!!
* PS: I do hope that "ya'all" realize that this script would also work with SAW!!!
[size=100]Good day,
As I noted, it is now [U][I][B]entirely possible[/B][/I][/U] for you to configure all of your F-Keys programmatically!!! Here is the completed script:
[/size][color=#0000ff]; -----------------------------------------------
; PositioningViewsF12
; Status: Working
; Date: 7:47 AM 11/1/2025
; -----------------------------------------------
PositioningViews()
; -----------------------------------------------
Func PositioningViews()
ActivateMain()
ZMixer()
Scenes()
FXChoices()
FXPrePatches()
FMixer()
StoreView()
SaveView()
EndFunc ;==>PositioningViews
; -----------------------------------------------
Func ActivateMain()
Local $hSAC_MAIN = WinActivate("[CLASS:SAC_MAIN]")
EndFunc ;==>ActivateMain
; -----------------------------------------------
Func ZMixer()
Local $iTimeOut = 250
Local $hSAC_ZOOMMIXER = "[CLASS:SAC_ZOOMMIXER]"
; -----------------------------------------------
; (1) Display the view
Send("{ALTDOWN}")
Send("{ALTUP}")
Send("V")
Send("Z")
; (2) Position the view
WinMove($hSAC_ZOOMMIXER, "", 5, 80, 103, 970)
EndFunc ;==>ZMixer
; -----------------------------------------------
Func Scenes()
Local $iTimeOut = 100
Local $hSAC_SCENES = "[CLASS:SAC_SCENES]"
; -----------------------------------------------
; (1) Display the view
Send("{ALTDOWN}")
Send("{ALTUP}")
Send("V")
Send("1")
; (2) Position the view
WinMove($hSAC_SCENES, "", 113, 80, 356, 453)
EndFunc ;==>Scenes
; -----------------------------------------------
Func FXChoices()
Local $iTimeOut = 100
Local $hSAC_FXCHOICES = "[CLASS:SAC_FXCHOICES]"
; -----------------------------------------------
; (1) Display the view
Send("{ALTDOWN}")
Send("{ALTUP}")
Send("V")
Send("C")
; (2) Position the view
WinMove($hSAC_FXCHOICES, "", 113, 535, 356, 240)
EndFunc ;==>FXChoices
; -----------------------------------------------
Func FXPrePatches()
Local $iTimeOut = 100
Local $hSAC_FXPREPATCHES = "[CLASS:SAC_FXPREPATCHES]"
; -----------------------------------------------
; (1) Display the view
Send("{ALTDOWN}")
Send("{ALTUP}")
Send("V")
Send("E")
; (2) Position the view
WinMove($hSAC_FXPREPATCHES, "", 113, 780, 356, 150)
EndFunc ;==>FXPrePatches
; -----------------------------------------------
Func FMixer()
Local $iTimeOut = 100
Local $hSAC_FULLMIXER = "[CLASS:SAC_FULLMIXER]"
; -----------------------------------------------
; (1) Display the view
Send("{ALTDOWN}")
Send("{ALTUP}")
Send("V")
Send("F")
; (2) Position the view
WinMove($hSAC_FULLMIXER, "", 474, 80, 240, 648)
EndFunc ;==>FMixer
; -----------------------------------------------
Func StoreView()
Sleep(500)
Send("{LSHIFT}+{F12}")
Send("{ENTER}")
EndFunc ;==>FMixer
; -----------------------------------------------
Func SaveView()
Sleep(500)
Send("{ALTDOWN}")
Send("{ALTUP}")
Send("F+F")
Send("{UP}+{UP}")
Send("{ENTER}+{ENTER}")
EndFunc ;==>FMixer
; -----------------------------------------------[/color]
[size=100]If you are at all interested, email me, and I can send you a compiled version for your own perusal.
At present, I am compiling the data for determining precise placement of all of the various views based on default sizings [x [TOP], y [LEFT], h [HEIGHT], w [WIDTH].
Once such data has been determined and then provided, I can then place these views in the workspace at the given co-ordinates.
Interestingly, the script took me about 2 hours to produce, but now that the script is completed, the above [/size][size=100]script [/size][size=100]created the F12 view in under 2 seconds. Thus, 12 views would take a total of 24-30 seconds to complete!
And, by-the-way, we are referring to 0.5 pixel accuracy here!!
[B]Update!![/B]
Completing the "math", I was able to create 9 views [F1] to [F6] , [F10] to [F12] - [U]all without[/U] having to launch SAC - with the entire layout [U]being completed on paper[/U]!!
* PS: I do hope that "ya'all" realize that this script would also work with SAW!!!
[/size]