How to use buttons and scripts from this forum

This post explains how to add buttons to toolbars and menus, and also applies to raw commands for things like standalone hotkeys.

For how to use Script Add-Ins, please scroll down to see the post below this one.


See Also: The manual has more detail in Editing The Toolbar and the Customize section in general.


Buttons and toolbars can be shared in several different ways.

Raw Commands

Posts often contain commands which you can put in a button, hotkey or menu. For example:

Copy INSTALLFONT

To create a toolbar button which runs that command:

  1. Select Settings -> Customize Toolbars (the Customize window will open; keep it open but move it out of the way)
  2. Back in the main window, right-click your toolbar somewhere and (depending on where you clicked) there will be a New or Insert New sub-menu. Click that sub-menu, and then New Button.
  3. Right-click the button that was just added and choose Edit. (Or double-click the button.)
  4. Prior to Opus 13:
    For single-line commands: Paste the command into the Function field.
    For multi-line commands: Click the Advanced button, then paste the command into the big area at the bottom.
  5. Click OK in the button editor, then OK in the Customize window.

For more details, see Editing the Toolbar in the Opus manual.


XML Button Definitions

Some posts contain blocks of XML which define all aspects of a button (or even a menu containing several buttons).

These blocks of XML define not just the command (like in the Raw Commands example above), but also the button's icon, label and other attributes.

Don't worry, you don't need to know anything about XML. You just need to copy the text and paste it to your toolbar to create the button.

Here is an example:

<?xml version="1.0"?>
<button display="both" separate="yes">
	<label>Install Font</label>
	<icon1>#otherplugins</icon1>
	<function type="normal">
		<instruction>Copy INSTALLFONT</instruction>
	</function>
</button>

(What the button does isn't important for this explanation but, if you are wondering, it installs any selected font files into your system.)

Here's how to take the code box above and turn it into a button in a toolbar or menu:

  1. In your web browser, copy the contents of the code box to your clipboard.

    The easiest way is to use the button in the top-right corner of the code box: Copy_Icon
    Alternatively, select everything in the code box and right-click to copy it to your clipboard.

  2. Switch to Opus and enter Customize mode via the menu: Settings -> Customize Toolbars

    The Customize dialog will open and your toolbars and menus may change appearance slightly.

  3. Find where you want to put the new button in your toolbars or menus, then right-click that place and select Paste.

    (The screenshot shows the menu you get if you right-click an empty part of the toolbar. You'll get a slightly different menu if you right-click one of the buttons on the toolbar. In either case, you still want the same Paste item.)

    The button will have been added to your toolbar or menu.

  4. (Optional)

    While in Customize mode you can move and edit your buttons and menus:

    • To move buttons simply drag them around.
    • To create a separator bar between two buttons, drag one slightly away from the other until a marker appears.
    • To change the appearance of a button, for example to remove the label or put the label in a different place, right-click the button and select Edit (or double-click it).
  5. Click OK in the Customize dialog to exit Customize mode and save your changes.

    The new button is now ready to use.

(See also: Sharing functions with others, in the Opus manual.)


Toolbar .dop Files

A few posts contain entire toolbars, in .dop files. To load one, simply double-click it and Opus will import it.


Button .dcf Files

Individual buttons can be stored as .dcf files by dragging them to your desktop while in Customize mode.

:warning: If you double-click a .dcf file it will run the commands inside it. :warning:

(If you open a .dcf file in a text editor, you'll see it is similar to the XML codes shared on the forum. It's really just another way of storing the same data.)

To add a button from a .dcf file to your toolbar:

  1. Download the .dcf file and navigate to where it is. (If it is inside a zip, extract it first.)
  2. Select Settings -> Customize Toolbars.
  3. Drag the .dcf file to your toolbar.
  4. Click OK in the Customize window.

Scripts: Continue to the post below...

5 Likes

Scripts

Scripts are usually written in JScript (a version of Javascript) or VBScript.

Scripts may be shared on the forum in a few different ways.


Script Buttons

These are like regular toolbar buttons, except they contain script code.

If they are shared as XML code or .dcf files then you can add them to your toolbars the same as you would a button containing non-script commands. See the XML Button Definitions and Button .dcf Files sections of the post above for how do that.

If someone posts some raw script code which starts with an OnClick method, that is usually intended to be placed in a button.

For example, here is some simple JScript that goes in a button:

function OnClick(clickData)
{
	DOpus.Output("Hello World");
}

Creating a new button to run that script is exactly the same as the Raw Commands part of the post above, with two extra steps:

  1. When you edit the empty button, set the Function drop-down to Script Function.
  2. Change the Script Type drop-down to JScript or VBScript as appropriate.

Before Opus 12, instead of the Script Type drop-down, scripts in buttons would begin with a line like:

@script jscript

That served the same purpose as the drop-down. (In fact, that line is still there behind the scenes, and you'll see it if you look at the button's XML code. The button editor UI just turns the line into a nicer drop-down.)


Rename Scripts and Presets

Rename scripts will typically be provided as part of a Rename Preset (.orp file), which can be imported into the Rename dialog.

See the separate topic, How to use Rename Presets from this forum.


Script Add-Ins

Script Add-Ins are like extensions or plug-ins for Opus, written in a scripting language. They can add custom commands to use in buttons, and custom columns to show in the file display. They can be triggered on events (e.g. changing folders) and alter the way Opus behaves. And various other things.

Script Add-Ins are managed under Preferences / Toolbars / Scripts.

If you look at the code for a Script Add-In, it will almost always have an OnInit function, usually near the top.

There are three ways someone might share a Script Add-In on the forum:

  1. As a downloadable script file, usually with a .js.txt or .vbs.txt extension.

    To install these, simply download them, then drag & drop the file to the list of scripts in Preferences / Toolbars / Scripts.

    You might want to open the script in a text editor first, to get an idea of what it does.

    Remember, scripts can do absolutely anything to your computer. Buttons can as well, but it's a lot easier to hide something in a script. It is worth looking at what you are about to run.

    If you install the script using drag & drop, you'll notice that Opus removes the .txt extension. Opus doesn't care if the extension is .js.txt or just .js but will remove the .txt part to tidy things up.

    The reason the .txt part is added is that most web browsers and anti-virus won't let you download files with script extensions, and it also prevents you from accidentally double-clicking the script and running it outside of Opus, which would not work.

  2. As a downloadable script package, with a .osp extension:

    These are pretty rare, but may be used when a script needs to come packaged with icons or other resources in addition to the script itself.

    Installation is the same as above. Just drag the .osp file to the list of scripts in Preferences / Toolbars / Scripts.

    If you want to look inside the .osp file before installing it, simply rename it to .zip and then open it like a normal archive.

  3. As script code pasted into a message:

    Some posts include both a downloadable version of the script, and the script code in the post itself.

    If you have both options, the downloadable version is easiest to use, and the other version is there because it's easiest to read. (Sometimes people browse the forum for scripting techniques, not for scripts to install and use.)

    If a post has no downloadable version of a script add-in, and just contains the script code in the post itself, then you should do the following:

    • Copy the script code to the clipboard.

    • Go to Opus and push Ctrl-V to paste the clipboard contents into a new file.

      (The file will be called Clipboard Text.txt, at least in English versions of Opus.)

    • Rename the new file to something unique that matches what the script is about.

    • Give the new file a .js.txt or .vbs.txt extension as appropriate.

      (If the poster hasn't said which language the script is in, the forum often works it out for you and puts a "js" or "vbs" watermark at the top-right of the code box. If the poster has not used a code box, js scripts typically contain the word "var" in a few places and lots of { } brackets, while vbs scripts typically contain the word "dim" in a few places and lots of "begin" and "end".)

    You can then drag the script file to the list of scripts in Preferences / Toolbars / Scripts.

    You might also want to complain to the person who posted it for not providing an easier to use version. :slight_smile:

6 Likes