15 October 2016

Directory Opus 12.2.3 (Beta)

Directory Opus 12.2.3 (beta) is now available for all Opus 12 users.

This is a preliminary, beta release. Translations may not be fully up-to-date and some English text may appear in non-English versions.

This is an Opus 12 update. If you are using Opus 11 or earlier then you should not install this beta unless you want to upgrade to Opus 12.



  • Reduced overhead of the Copy progress dialog when copying thousands of tiny files.
  • Fixed incorrect icons showing in the rename preview list (bug introduced in 12.2.1 Beta).
  • Fixed Preferences ignoring the "show built-in aliases" checkbox when first opening the Aliases page if no user-defined aliases exist.
  • Fixed problem with script dialogs that could lead to a script still processing messages in its message loop after a dialog had closed (which depending on the script and the exact timing, could lead to a script error).
  • A button-menu with "always enable drop-down" set would change the spacing between its label and drop-down arrow when the main button part became disabled. The spacing now stays the same in both states.
  • Added rename_default_focus option to Preferences / Miscellaneous / Advanced, to control which field in the Rename dialog gets input focus by default (scripts can override this).
  • Added Assume UTF-8 without BOM option to text viewer configuration.
  • Inline rename in the Folder Tree now supports the same case-changing hotkeys as most other rename fields in the program. (Ctrl+L for lowercase, Ctrl+U for uppercase, Ctrl+W to capitalize words and Ctrl+P to capitalize just the first letter).
  • The recently added @hideif and @disableif modifiers can now test for set variables like @if can (e.g. @disableif:$MyVar).
  • Scripting:
    • Added opacity property to the Dialog object (and also the dialog editor), allowing a dialog's opacity level to be controlled.
    • Added Dialog.SetTimer and KillTimer methods, which allow scripts to create recurring timer events.
    • Added Dialog.AddHotkey and DelHotkey methods so script dialogs can implement hotkeys (keyboard accelerators).
    • Added List View control type to script dialogs - this is like a List Box except it supports multiple columns and different display modes. To support this, the Control object has new columns and mode properties and the DialogListItem has new subitems and icon properties.
    • Added Lister.state property to report the source/destination/off state of a non-dual display Lister.
    • Static Text controls in script dialogs can now display images, by setting the Image property to true in the dialog template (the control's label then becomes the image filename).
    • Script dialogs can now accept files via drag & drop if the Accept Drops property is set in the dialog template. Dropped files will generate a drop event and the new Msg.object property provides a Vector of Item objects representing the files that were dropped. If the drop was over a control the Msg.control property will identify the target control.
    • Added Control.MoveItem method to move an existing item in a List Box, Combo Box or List View control.
    • Added the FSUtil.Drives method which returns a Vector of Drive objects, providing information about the drives present in the system.
    • The scripting File.Read method did not correctly read the entire file if not passed a size.
    • The scripting DOpus.Language property now always returns a lowercase version of the language name, to simplify testing against it.