No internet connection
  1. Home
  2. Support

ClickButtonAction requires UIElement (input Monitoring: Line 9)

By Tom Mochiach @Tom_Mochiach
    2025-01-28 09:50:49.792Z

    ClickButtonAction requires UIElement (input Monitoring: Line 9)

    System Information

    SoundFlow 5.10.1

    OS: darwin 21.6.0

    ProductName: macOS
    ProductVersion: 12.6
    BuildVersion: 21G115

    Steps to Reproduce

    function toggleInput(trackName) {
    var track = sf.ui.proTools.trackGetByName({
    name: trackName,
    makeVisible: true,
    }).track;

    var inputBtn = track.buttons.whoseTitle.is('TrackInput Monitor').first;
    inputBtn.elementClick();
    

    }

    function toggleInputContaining(partialTrackName) {
    var matchingTrackNames = sf.ui.proTools.trackNames.filter(n => n.toLowerCase().indexOf(partialTrackName.toLowerCase()) >= 0);
    matchingTrackNames.map(toggleInput);
    }

    toggleInputContaining('print');

    Expected Result

    Toggle input monitoring

    Actual Result

    ClickButtonAction requires UIElement (input Monitoring: Line 9)

    Workaround

    Other Notes


    Links

    User UID: tu4hlOCPv5eDTa2SbK2UFIGjsrq1

    Feedback Key: sffeedback:tu4hlOCPv5eDTa2SbK2UFIGjsrq1:-OHgJWhly-he6LBjJ_jQ

    Feedback ZIP: 9RkkMfPYUQrazNPF5K9BAI0ZE4iyoMsjbevkyA7xWxePIeEiMCzOxD6UXjwzTYnWHzhF3YgCwH4Bkj1Qi8aTfHj0u/pLh7Vkyl04GvZRtGHhc0RN6KStaStYXECAm/C3cG6gWT8jmyeiih7HxTKmweIsn+2N69iV2iG9UJtmFK7szTat1XuyGkOVgwdpGCfNDG/rvcvWHRf1qjtiYaHbnGZ71LKopLTisKcQD0jgkOoaj5hKGNRiaDbi1Unfa6amAdh4zAaYDFtmoP3sAg6ICkOopmzGw5qwu9OXXF1f8y41bDc1vkj4LhqO7/Zk6tSxKb3gm6dZcdWrJ4gnEHv0jQ==

    • 4 replies
    1. Raphael Sepulveda @raphaelsepulveda2025-01-28 17:07:05.326Z2025-01-28 17:15:57.072Z

      Hey @Tom_Mochiach, the name of the input monitoring button has changed in recent versions of Pro Tools.
      If you change this line:

          var inputBtn = track.buttons.whoseTitle.is('TrackInput Monitor').first;
      

      to this:

          var inputBtn = track.buttons.whoseTitle.startsWith("Input monitoring ").first;
      

      Should allow the script to interact with the button correctly.

      1. TTom Mochiach @Tom_Mochiach
          2025-01-28 18:47:30.076Z

          could you be so kind to allow me the full script to toggle last track's input monitoring?

        • T
          In reply toTom_Mochiach:
          Tom Mochiach @Tom_Mochiach
            2025-01-28 19:00:18.667Z

            GOT IT
            TNX

            function toggleInput(trackName) {
            var track = sf.ui.proTools.invalidate().trackGetByName({
            name: trackName,
            makeVisible: true,
            }).track;

                var inputBtn = track.buttons.whoseTitle.startsWith("Input monitoring ").first;
            inputBtn.elementClick();
            

            }

            function toggleInputOfLastTrack() {
            var lastTrackName = sf.ui.proTools.trackNames.slice(-1)[0];
            toggleInput(lastTrackName);
            }

            toggleInputOfLastTrack();

            1. Kitch Membery @Kitch2025-01-28 22:19:22.326Z

              Hi @Tom_Mochiach,

              For future reference, here's how to quote code in the forums: