Introduction

MenuApp displays the contents of folders as menus and can also display system folders and the current task list. menuApp menus can be launched via desktop shortcuts, by hotkeys or by clicking on the desktop or on a system tray icon.

It's a small, efficient app and is easy to set up using the configuration tool.

MenuApp is supplied in a zip file. We recommend creating a new folder under "Program Files" to install menuApp into, like this:

"c:\Program Files\MenuApp".

However, if you want to install the files somewhere else, that's fine. MenuApp isn't fussy.

Once you've installed the files click on the "MenuApp - XML" link to launch the app. It will run in the background, ready to display menus initiated from a shortcut, a hotkey or by clicking on the desktop or in the system tray.

To get this working you'll neeed to use the Configuration Editor, which you can launch using the CTRL-ALT-A hotkey or via the right click menu on the tray icon.

The menuApp Server

Before describing the Configuration Editor a word about how menuApp runs.

Normally the app will startup when you login and then run in the background (menuApp server mode). When you launch a menu the business of displaying it is handled by the menuApp server. This enables the server to cache menus as they are displayed, optimising efficiency.

It is possible to disable this. If you do so you lose the hotkey and desktop/tray functionality and will only be able to launch menus from shortcuts, so it's best to keep the server mode enabled.

Configuration Editor

Click CTRL-ALT-A to bring up the Configuration Editor.

The initial screen of the Editor contains options for the application as a whole...

  • Enable Server
    If selected, the first time MenuApp runs the server is launched. Otherwise there is no server and each instance of MenuApp runs independently.
  • Alert On Recycle
    If selected a warning message is displayed when the server is recycled.
  • Alert On Shutdown
    If selected a confirmation message is displayed when the server is about to shut down.
  • Auto-Start
    If selected the menuApp server is configured to start when you logon.
  • Set Default Keys
    When de-selected the standard hotkeys are disabled.
  • Always Display Tray Icon
    If selected the menuApp tray icon is permanently displayed, otherwise it is displayed only when a tray menu is configured.

Adding and removing Hotkeys

Use the bottom left "+" and "-" keys to add and remove hotkeys. Once you've added a new hotkey you need to complete the configuration, save the details and then use the Recycle key to trigger the menuApp server to pick them up.

Hotkey configuration is split into three sections...

Configuration - Hotkey section

In this section you specify how to launch the menu:

  • Name
    Name for the hotkey, which will appear in the list to the left.
  • Modifier
    Combination of CTRL, ALT, SHIFT or WIN.
  • Selector
    Either a predefined action (desktop or tray mouse click) or predefined key (picked from the dropdown menu) or a simple letter/number key (entered in the rightmost box). Use the radio buttons to indicate which item you are using.

Note - hotkeys are case insensitive, so you can use either upper or lower case in the config editor and the result will be the same.

If you are specifying a mouse Selector action (desktop or tray click) the Modifiers are optional. For key based actions you need at least one Modifier.

Configuration - Target section

This defines what you want to launch - either a menu based on a folder in the filesystem or a predefined item like the current tasklist or a list of Control Panel items.

Use the radio buttons to indicate whether you are specifying Path or Menu.

  • Path

    Specify a filesystem location.

    This can point to either a folder, in which case menuApp will render the folder conents as a menu, or a file, in which case menuAp will run it.

    Use the "..." button to launch a file and folder browser.

    You can pass parameters to a file entry by adding them to the end of the path.

    menuApp is able to merge the contents of two folders into a single menu. To set this up put the double quoted paths to the two folders in the Path field like this:

          "Folder Path A" "Folder Path B"

  • Menu

    Select from a menu of predefined items.

Configuration - Options section

Here you can control the appearance and fundtionality of the hotkey item.

  • Filter
    A comma separated list of file types, e.g. 'txt,doc'. Only files with the extensions specified are included in the menu.
  • Position
    Controls where the menu appears.
  • Sort Numeric
    If selected then file names are sorted in numeric order (i.e. 1 before 10), otherwise standard alphabetical sorting is used.
  • Folders First
    If selected then folders (submenus) always precede files (ordinary menu items) when the menu contents are displayed, otherwise folders are sorted by name along with the files.
  • Show Hidden
    If selected then hidden or system files and folders appear on the menus.
  • Secure Click
    If selected this disables right click functionality on each menu item and also prevents Explorer opening when folder items are double clicked.
  • Max Width
    Specifies the maximum width of the menu. If blank the menu auto-sizes.
  • Display Icons
    If not selected then icons do not appear on the menus.
  • Display Subfolders
    If not selected only the contents of the specified folder are displayed and sub folders do not appear.
  • Combine Tasks (applicable to the task list only)
    If selected then similar tasks are displayed under sub-menus (i.e. if you are running 3 copies of notepad then the task list will contain a 'Notepad' submenu which will expand to show the 3 items), otherwise similar tasks appear on the task list individually.
  • Preload
    If selected then the menu is processed and cached (but not displayed) when menuApp starts up. On slower systems or for large menus this can speed up the appearance of the menu the first time it is used.

Configuration - Buttons

  • Close
    Close the editor application.
  • Save
    Save configuration data to the config file.
  • Reload
    Reload configuration data from the config file.
  • Recycle
    Trigger menuApp to re-read its configuration data from the config file, picking up any recent changes.
  • Location
    Open the folder containing the configuration xml file.
  • Shortcut
    It's possible to run menuApp from a shortcut on the desktop or elsewhere. The easiest way to set this up is to configure and test the menu in the Editor, and then click the shortcut button which will copy the correct command line to the clipboard. All you need to do then is paste it into the Target field of your shortcut and it should be ready to use.

Navigation

Once you have a menu displayed you can use the mouse and keyboard to select menu items in the normal way, but you can also go directly to an item by keying the first character of it's name.

If there are multiple items starting with the same character then repeatedly keying that character will select each item in turn.

If you hold down the shift key while keying the character then items will be selected in reverse order.

The "!MA" menu item naming scheme

Item Ordering

A good way of using menuApp is to set up a folder full of of your favourite shortcuts and then hook it up to appear as menuApp menu. If you do this it is useful to be able to order and group the menu items.

menuApp supports a simple mechanism for doing this, which works as follows:

Any item whose name begins with the characters !MAxxxx_ where x is a digit (0-9) will have those characters removed when the menu is constructed.

For example, a file called "!MA0010_Photoshop" will appear on the menu as "Photoshop".

Using this mechanism you can put together a folder of shortcuts all with names using the "!MA" start codes. The numeric part of the codes can then be used to control the display order of the items.

So, the links and files shown in the Explorer screenshot on the left are rendered by menuApp as the menu on the right:

Explorer screenshot Menu example

Note that when you use item ordering, folders (submenus) are always sorted by name, regardless of the Folders First config setting.

Special items

menuApp recognises some special name formats when you are using !MAxxxx_ items.

Any file called "!MAxxxx_bar" will appear as a grey separator bar on the menu and if you create a file called "!MAxxxx_bar_blah" then the separator bar will appear with the text "blah" in the middle.

(Note: this text on bar option is not supported on Vista/Win7/Win8 because it looks terrible).

A file called "!MAxxxx_ignore_TheActualFileName" will not appear on the menu at all.

Finally, a file called "!MAxxxx_space" will put an empty item on the menu, while one called "!MAxxxx_space_yyy" where yyy is a number will be rendered as an empty space on the menu yyy times the height of a standard entry.

Using special codes in menus

The "!MA" syntax is also used to add the menuApp special codes into custom menus.

For example, to create a task list as a submenu you would first create a new text file and then change it's name to:

!MA0000_-T_Current Tasks

(NB: without the '.txt' file-type suffix)

menuApp then renders this as a submenu item with the title 'Current Tasks', containing the current task list.

The special codes for use in this format are:

AAdmin Tools          LMy Profile
CControls          NPrinters
DDesktop          OMy Documents
ENetwork          PPrograms
FFavorites          QQuick Launch
HHistory          RRecent
IMy Pictures          SStart Menu
KDrives          TTask List

If you want to be able to change the icon which is displayed for an embedded special folder you can. Instead of creating a text file and renaming it, create a shortcut (doesn't matter what to) and rename that using the above format. menuApp will ignore the fact that it is a shortcut and create the embedded folder but will use the icon associated with the shortcut. You can set this to whatever you like using the standard shortcut properties dialogs.

Running from a USB drive

menuApp can be run from removable media like a USB drive.

To get this to work you need to create an empty file called menuAppConfig.xml in the same folder on the USB drive as the menuApp.exe file. menuApp will use this rather than the xml file in the LOCAL_APP folder.

When you run menuApp for the first time it will populate the xml file.

To start menuApp create a shortcut on the USB drive to the the menuApp.exe file and change the command line to add the following parameters: "-u -XML".

If you setup menuApp to display folders on the USB drive then these should work if you then plug the same drive into a different computer.

If you set up menus based on folders on a drive on the host computer itself then these wont work on other machines unless exactly the same drives exist on those machines as well.

In general, other features of menuApp should be unchanged.

Miscellaneous

Opening folders

If you have a menu with submenus, you can double click (with the left mouse button) on the submen item, which represents a folder in the file system, and Explorer will be launched, opening on the submenu folder.

Deleting items

If you display a menu using menuApp then right click on an item, selecting the "Delete" option will delete the item from the menu and from the underlying folder. Careful...