Directory Opus 12.20.8 (Beta)

Directory Opus 12.20.8 (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.


Changes since 12.20.7:

  • Fixed icons in some dialogs getting clipped slightly at 125% DPI scaling.
  • Made some changes to hopefully prevent files sometimes being deselected when they are modified by the Image Conversion command.
  • The GetSizes progress dialog now enables the Skip button, allowing the current folder to be skipped but the rest of the calculation to continue
  • Fixed crash introduced in previous beta if you assigned a shared, stretched image to a docked toolbar.


Listview controls in script dialogs can now have their items displayed in groups:

  • The Control object has new methods for managing groups:
    • AddGroup(name, id, flags) - id must be numeric, 1 or greater. flags "c" - collapsible, "d" - collapsed.
    • RemoveGroup(id) - remove group
    • GetGroupById(id) - returns a DialogListGroup object
    • EnableGroupView(fEnable) - enable/disable group view

  • The DialogListItem object has new group property; returns or sets group ID the item is in.
  • New DialogListGroup object, returned by Control.GetGroupById method.
    • Has properties: id, name, expanded


Other scripting changes:

  • The bg and fg properties for the Control object now work for listview controls as well.
  • Added Control.textbg property for listview controls to set the text background color.
  • The DialogListItem script object now supports fg, bg, and style properties, allowing text and background color, and text styles, to be set on a per-item basis.
  • The DialogListItem object has a new disabled property that lets listview items be individually disabled. When disabled, they're not able to be selected, right-clicked or double-clicked.
  • Added the want_close property for the script Dialog object. If set to true, clicking the close button on a script dialog will generate a close event. It's up to the script to close the dialog using the EndDlg() method.