# Main Menu

*Workflower*'s main menu offers access to all functions of the script. You access it either as a [dialog](#main-menu-as-dialog) or - since version 2.0 - as a [ScriptUI Panel](#main-menu-as-scriptui-panel).

On the panel, hold down *Shift*, *Ctrl/Cmd*, or *Alt/Option* to execute additional functions. New icons will be revealed for the additional functions.

When right-clicking on each of the buttons, you get [quick links to the function's user guide chapter and tutorial](#2.-help-menu).

## Main Menu as Dialog

Hit the shortcut for the *Main Menu* dialog to come up (Win: Ctrl+Alt+X, Mac: macControl+X).

![Workflower's Main Menu as Dialog](/files/31h9s2byEQe0IjWVNTNI)

Click anywhere in the menu but the buttons or hit *Escape* to close it. (Closing it by clicking outside of the menu unfortunately won't work.)

{% hint style="info" %}
If you encounter performance issues with the main menu (or another panel) coming up, this might be due to calculating the current mouse position. If this is bothering you, go to *Settings > System > Position of Borderless Dialogs* and set it to *At Last Position* or *Always Centered* to disable calculating the mouse position.

On Windows, you may also try to change the *Mouse Position Calculation* to External *File (Advanced)*.
{% endhint %}

#### Main Menu Panel Shortcuts (Windows only)

| Function         | Shortcut (Win)       | Shortcut (Mac) |
| ---------------- | -------------------- | -------------- |
| Move Panel left  | Ctrl+Alt+Left        | -              |
| Move Panel right | Ctrl+Alt+Right       | -              |
| Move Panel up    | Ctrl+Alt+Up          | -              |
| Move Panel down  | Ctrl+Alt+Down        | -              |
| Center Panel     | Ctrl+Alt+Shift+Left  | -              |
|                  | Ctrl+Alt+Shift+Right | -              |
|                  | Ctrl+Alt+Shift+Up    | -              |
|                  | Ctrl+Alt+Shift+Down  | -              |

## Main Menu as ScriptUI Panel

**(Added in** [**version 2.0**](/releases.md#2-0)**)**

<figure><img src="/files/Fs5PZG5Hl3mcFqL4RwfG" alt=""><figcaption><p>Configurations of Workflower's Main Menu as ScriptUI Panel</p></figcaption></figure>

To install the ScriptUI Panel, please follow the [instructions](/installation.md#step-1-installing-the-script).

{% hint style="warning" %}
Please note that is **optional** to have the ScriptUI panel *Workflower ScriptUI Panel.jsxbin* installed while it is **mandatory** to have the main script file *--- Workflower ---.jsxbin* installed.
{% endhint %}

After installation, open the ScriptUI Panel by going to *Window > Workflower ScriptUI Panel.jsxbin*.

The ScriptUI panel has a responsive layout. Change the panel size for it to adjust to the four possible configurations:

1. Row layout, 1 line
2. Row layout, 2 lines
3. Column layout, 1 column
4. Column layout, 2 columns

{% hint style="info" %}
If you want to use *Workflower's Main Menu* **without** modifier keys and you own KBar, you can easily [batch-create all buttons for KBar](/installation.md#batch-create-all-buttons) which, as of [version 2.0](/releases.md#2-0), will be added without modifier keys.
{% endhint %}

{% hint style="warning" %}
Did you encounter that a button sometimes does not execute a function? Please read the following page on some [known bugs and workarounds](/known-bugs.md#scriptui-panel-bugs) of *Workflower's* ScriptUI Panel.

*Tip:* If you want to restart the ScriptUI Panel, right-click on empty space of the panel and click on *Restart ScriptUI Panel*. You might want to do this if you encounter any issues relating to the panel and you want to quickly see whether a restart helps.
{% endhint %}

Tip: When you center-click on empty space on the ScriptUI panel, [Refresh Layout](/main-functions/layout.md#refresh-layout) will be executed.

### Customize ScriptUI Buttons

<figure><img src="/files/Uw8EpmhKAKfw6gqr6Jrf" alt=""><figcaption><p>Custom ScriptUI Buttons Dialog</p></figcaption></figure>

If you want to save on space in your AE interface, you can also customize which buttons you want to appear in *Workflower's* ScriptUI Panel.

To make use of this, go to *Settings > Miscellaneous > Customize ScriptUI Buttons*. Now choose which buttons you want to deselect.

Please note that these settings only apply to the ScriptUI Panel. The [Main Menu via shortcut](#main-menu-as-dialog) will still feature all available buttons.

### Button Size

As of [version 2.0.1](/releases.md#2-0-1), *Workflower's* ScriptUI Panel displays smaller buttons than the [Main Menu as Dialog](#main-menu-as-dialog).

In case you rather like larger buttons to be displayed, right-click on any button and select *Use Large Buttons*.

### ScriptUI Panel Caching

#### The Caching Problem

It does seem that a ScriptUI Panel only has limited access to AE's cache, and when executing a function that relies heavily on caches, performance will not be as good as compared to executing the function from within a regular script.

#### Default Caching Solution

That's why, for certain functions that rely heavily on caching (e.g. [Refresh Connections](/main-functions/connections.md#refresh-connections)), the ScriptUI panel will not execute the function itself but it will call the main *Workflower* file within which the function will be executed, hence accessing more of AE's cache and increasing the performance. Nevertheless, there will be a bit of a lag between pressing the button and the execution of the function.

However, since most functions don't rely so much on caching, they will be executed directly from the ScriptUI Panel itself, hence reducing the lag and interacting with the ScriptUI Panel feels more responsive.

#### Choosing a Manual Solution

<figure><img src="/files/QCrr5bJQL6KbEIXMuW7i" alt=""><figcaption><p>ScriptUI Panel Execution Method Dropdown</p></figcaption></figure>

But there's also a way to manually choose the method to be used. Go to the *System Settings* and choose between these options:

1. *Better Responsiveness* (= executing from ScriptUI Panel)
2. *Better Caching* (= executing from main *Workflower* file)
3. *Mix between Methods* (= mix as described above)

Now, this choice can come in handy when you're working on a comp and you might notice a slowdown when executing *Workflower* functions. You might want to try to set the method to *Better Caching* and see whether it helps when more of AE's cache can be taken into account.

## Learning Tools built into the Main Menu

**(Added in** [**version 2.0**](/releases.md#2-0)**)**

The *Main Menu* provides two ways that help with learning *Workflower:*

### **1.) Extended Tooltips**

<figure><img src="/files/vIosd0CMRkvGj0pe4ojU" alt=""><figcaption><p>Extended tooltip for 'Ceate Group'</p></figcaption></figure>

Hover over the functions on the *Main Menu* to get information on the function.

When pressing a modifier key, the *Extended Tooltip* of the modifier function will be displayed.

You can also turn off *Extended Tooltips* and only use simple tooltips (displaying solely the function name and shortcut), or disable tooltips altogether by going to the *Miscellaneous Settings* or by right-clicking on a button and disabling it from the [Help Menu](#2.-help-menu).

### 2.) Help Menu

<figure><img src="/files/YZ1UOktDoJ5qskXJYI8B" alt=""><figcaption><p>Help Menu for 'Create Matte'</p></figcaption></figure>

When right-clicking on a function button, *Workflower* will open up a dropdown where you can click on links to the user guide and tutorial chapter about the specific function.

Press one of the modifier keys and right-click on the button to open up the links for the modifier functions.

You may also change your tooltips preferences from this menu.

## Other Main Menu Features

### Reveal Project File

**(Added in** [**version 2.5**](/releases.md#id-2-5)**)**

Reveals the current project file in the file explorer/finder (via *Main Menu*: right-click on empty space, then click on *Reveal Project File*).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://workflower.constantin-maier.com/main-functions/main-menu.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
