Edit Context Menu's

From pretentiousname.com/opus/st.html#small
Editable context menus: Opus provides a mechanism that allows you to organise the context menu items added by other programs. Re-order them into logical groups, move the ones you don't use often to a submenu, and completely remove the ones you never use at all. Finally you have some control over the awful mess you probably see whenever you right-click a file.

Shouldn't the box in settings/filetypes/system file types/txt/edit/context menu contain a list of context items for that filetype that can be edited? Every single filetype has no context menu that shows up in that box even though they exist when right clicking a file.

Thanks for your time.

Hey there Predator,

Not sure if I'll touch on the specific things you're concerned with, but I have spent a good bit of time toying with the context menu stuff and here's what I've found:

The system file types have what appear to be standard shell 'native' actions associated with each file type... actions such as open, print, and printto. Such context commands don't show up in Opus' file type editor's 'Context Menu' tab, but should be present in the 'Actions' tab. These actions cannot be 'edited' per se the way Opus allows us to do with whatever may appear on the 'Context Menu' tab... and in truth, not a whole lot does show up there by default. Various third party apps you install which modify the registry keys in the same place the open and print commands are located for each file type SHOULD indeed show there... but many apps have also adopted using their own shell extension handlers, which expose context commands via a dll that gets registered with Windows COM server. These things should NOT show up in the Context Menu tab of the editor.

Having said that, it's usually pretty easy to identify where the different commands you would be interested in keeping are coming from so that if you REALLY wanted to fine tune your context menu, then the most effective way to do that would be to actually hide the Windows context menu items (in Settings->Preferences->Miscellaneous->Windows Integration) and manually add back ONLY the context handlers you want via the Opus file type editor by defining 'New' actions on the Context Mneu tab.

It can take a little bit of time to find out on your own if you're not familiar with the various places in the registry the context handlers can leave their footprints... but I'd be willing to help you find them quickly... and once you have it set up... saving your Opus settings is a snap nowadays so you never have to do it again manually.


Hey steje

Thanks for reply. The shell extension i guess is what's causing the things i expected to see, like winzip's context menu stuff, from not showing up. I'll look into your suggestion of using my own handlers, seems like a good idea.

Thanks again for reply.

Sure thing Predator... and yes WinZip is one of the apps that uses an extension handler rather than simple command keys that actually call an executable. As a head start, here's the Context Menu action that loads up the WinZip extension on my system:

FileType CONTEXTMENU {E0D79304-84BE-11CE-9641-444553540000} CONTEXTFORCE

Most items like this can be found under: HKEY_CLASSES_ROOT*\shellex\ContextMenuHandlers where you should see a key for each app underneath which is the CLSID value that links to the actuall dll and which you must use as shown above (in braces) in order to invoke the extension handler from within Opus. Enjoy... and let us know if you need help with anything weird you might come across.

1 Like

Hey steje,
Icreated under All Files Files Type a Context Menu item of
Action: test
Function: Standard Function and in the box i have
FileType CONTEXTMENU {E0D79304-84BE-11CE-9641-444553540000} CONTEXTFORCE which is the Data Value in the Registry but when i rightclick on a file it doesn't bring up the winzip menu under test. What am i missing? Thanks.

Hi again... it also doesn't work for me under 'All files'. Try removing it from 'All files' and add it under the 'All files and folders' category instead. It should then work fine.

I must be missing something. I can't get it to work under there either. Nothing shows up when i right click.

Hmmphhh... sorry it's giving such a hassle. But I promise once you get used to it, it becomes easier :slight_smile:. At least... easy enough so that if you had to tell someone how to do it, you might skip over a small fine detail :slight_smile::

When you create the action by hitting the 'New' button... try making sure you've selected Run an Opus function (not supported in Explorer) from the Type: drop down box. By default, it's set for Run an application (supported in Opus and Explorer) whereas this 'type' of command cannot be used to invoke an internal Opus function like the FileType command.

Note- once you've created it as a default Run an application type of command, I don't think you can 'edit' it to change it to an Opus function type of action. You'll have to actually click on 'New' again and recreate it...

Well that didn't make it appear either, but, actually checking the box "Hide window items on file context menus" made it appear :slight_smile:
Thanks for your help and patience :slight_smile:

doh... from previous posts, I had foolishly assumed you had that set already. Sorry for all the babbling.