Help: Setting focus to Browser column on button press?

Post Reply New Topic
RELATED
PRODUCTS

Post

AUTO-ADMIN: Non-MP3, WAV, OGG, SoundCloud, YouTube, Vimeo, Twitter and Facebook links in this post have been protected automatically. Once the member reaches 5 posts the links will function as normal.
Hello,

i am currently writing my first script for Arturia KeyLab Essential and i got everything working as labeled except the PRESET and CATEGORY buttons.

These act as "mode-buttons" and while active define which CC is send when pushing the preset-browser dial. Regardless which one is currently active, i then start the browsing session like so:

Code: Select all (#)

            deviceBrowser.startBrowsing();
            deviceBrowser.getPresetSession().activate();
            application.arrowKeyDown();
That works fine, but i am always in the last column (Presets). I would like to start in the Category column if category-mode is active but i don't know what to call. I am using API version 6.

Also the mode buttons can be used while the browser is open. It would be great if i could switch focus in the current browser session too.

So it's 2 things:
- start browsing session with the correct column
- switch to a specific preset-window column on button press

my guess is it has something to do with "getResults", but there are no examples.

Post

cellrok wrote: - start browsing session with the correct column
- switch to a specific preset-window column on button press
There is no control over the focus of the browser window. But you can control the columns. Use:

BrowserFilterColumnBank createFilterBank (int numColumns)
(found in the BrowserSession)

In the bank you get, check for the column you want to control and call up/down functions.

Post

AUTO-ADMIN: Non-MP3, WAV, OGG, SoundCloud, YouTube, Vimeo, Twitter and Facebook links in this post have been protected automatically. Once the member reaches 5 posts the links will function as normal.
Thanks. I am getting closer.

I have an observer for Column and Item and can print the Filter-Name and Item-Name to the display. I mapped the "scrollUp" and "scrollDown" to the left and right arrow buttons.

Through the observers i see that the columns are actually paged the display shows me the first (wildcard) item name of each filter. Good!

But it doesn't actually "highlight" the wildcard item in the column.
The focus doesn't change.

Do i have to do something with the BrowserFilterItem, like "select()" or something?

There are very little methods on the object and most inherited methods seem to be deprecated.

Code: Select all (#)

        case InputMIDI.CC_JOG_PRESS_CATEGORY: // open browser and focus "Category" column
          if (BROWSER_IS_OPEN) {
            deviceBrowser.commitSelectedResult();
          } else {
            deviceBrowser.startBrowsing();
            presetBrowser.activate();

            host.scheduleTask(function(){ // delay or otherwise it wont select the first item on open
              application.arrowKeyDown();
            },null,100);
          }
          break;

        case InputMIDI.CC_BTN_ARROW_LEFT:  // move between filter columns
          browserFilterBank.scrollDown(); // works, but no focus switch
          break;

        case InputMIDI.CC_BTN_ARROW_RIGHT:  // move between filter columns
          browserFilterBank.scrollUp();
          break;

Post

You do not scroll on the column bank but on the individual columns!

Another comment: The delay of the selection should instead monitor the active state of the session.

Post

AUTO-ADMIN: Non-MP3, WAV, OGG, SoundCloud, YouTube, Vimeo, Twitter and Facebook links in this post have been protected automatically. Once the member reaches 5 posts the links will function as normal.
I've gotten to the point where i shows me all the items in each column that is currently selected, but scrolling didn't work.

The api is really confusing. I open-sourced the project so maybe someone with more skills can bring it to the next level.

https://github.com/cellrok/arturia-esse ... or-bitwig2 (https://github.com/cellrok/arturia-essential-for-bitwig2)

Post Reply

Return to “Controller Scripting”