29 August 2014

Directory Opus 11.6

Directory Opus 11.6 is now available as a free update for all Directory Opus 11 users.

Download:

32-bit version:    Universal    Deutsch    简化字
64-bit version:    Universal    Deutsch    简化字

Changes:

This is a stable release containing all the changes from the 11.5.x beta versions:
Additionally, it includes the following fixes:
  • Fix for folder tree not updating to show added or deleted folders if the parent folder is a Favorite folder and Favorites are shown in the tree.
  • Fix for status bar script error icon not showing if the status bar definition ended with a linefeed.
  • Fix for status bar error icon not responding to clicks when flashed "off".

22 August 2014

Directory Opus 11.5.7 (Beta)

Directory Opus 11.5.7 (beta) is now available for all Opus 11 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.

32-bit version:    Universal    Deutsch
64-bit version:    Universal    Deutsch

Changes:

  • Scripting changes:
    • Added new OnAddCommands and OnAddColumns script methods. These provide an alternative way for a script to add commands and columns. These methods have two advantages over the old OnInit way of adding command and columns. Firstly, the script's configuration is available in these methods whereas OnInit is unable to access it. Secondly, a script can modify its own commands and columns dynamically by calling the new Script.InitCommands and Script.InitColumns methods.

      Note that if either of these methods is provided the equivalent method will no longer be available in the OnInit function, and also if a script is disabled via the Preferences page then commands and columns added by these methods will not be available.

    • Added new OnScriptConfigChange method which is called whenever the user modifies a script's configuration. A script could respond to this event by calling, for example, Script.InitColumns to update its columns based on the user's settings.
    • Added Dialog.defid property that allows the default button in a dialog to be changed from the first one.
    • The OnDoubleClick event can abort further processing when multiple files are double-clicked, by setting the DoubleClickData.cont property to False. Also added the DoubleClickData.call property, which lets a script stop the OnDoubleClick method from being called for subsequent files but allows normal processing to continue.
    • The DoubleClickData object now has a multiple property to indicate that multiple files were double-clicked.
    • Scripts launched via a drag and drop event are now able to determine the source tab of the drop if it came from within Opus.
    • Opus will now recognise scripts with a .txt extension (e.g. .js.txt, .vbs.txt). Also, dropping a (for example) .js.txt file on the scripts Preferences page now strips off the .txt suffix when copying it to the scripts folder. These changes are designed to make it easier to install scripts downloaded from the resource centre.
    • When a script error occurs and no log is currently open to display it, an error icon will now appear in the status bar that the user can click to open the log pane.
    • The Script configuration editor dialog, and the multiple-line text editor that can open from that, are now both resizeable.
    • When Prefs LAYOUT=xyz is run from a script, command.results.newlisters is now populated with any new Listers which were opened. Similarly, Prefs LAYOUT=xyz LAYOUTTHISLISTER=paths will populate command.results.newtabs with any new tabs.
    • It's now possible for an OnBeforeFolderChange script event to run its own Go command (the NOSCRIPT argument must be used).
    • If the script config editor was open and the script in question was edited, the names in the script editor could become corrupted.
    • The Command.SetQualifiers method was ignored.
    • Fixed crash with Python enumeration of Opus script collections.
  • Fixed desktop context menu sorting Lister layouts to the end of the list if their names contained non-ascii characters.
  • Lister Styles no longer start with the Toolbar checkbox set when new. Updating a Style now leaves the checkbox as it is.
  • Opening an empty tab (Go NEWTAB) did not update the Lister's title bar.
  • If a Lister style is already using an automatically generated folder tab group, and you update the style, the existing tab group is now overwritten. Previously, a new and unique tab group would be generated, alongside the old one, but this was more clutter than useful.
  • Fixed using Update on a Lister Style where it would only save the tabs on one side of the Lister if there was only a single tab on the other side, and the style had not previously specified a folder on the side with just one tab.
  • Fixed double-clicking a Style in Preferences and changing its name resulting in two copies of the Style.
  • Commands like Set SORTBY=+modified SORTREVERSE=ToggleSmart which mix a generic field name ("modified", which matches any column showing modified dates and/or times) with SORTREVERSE=ToggleSmart, now respect the ToggleSmart request if the column is already present as the sort column.
  • Fixed opening symbolic links to zip files.

12 August 2014

Directory Opus 11.5.6 (Beta)

Directory Opus 11.5.6 (beta) is now available for all Opus 11 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.

32-bit version:    Universal    Deutsch
64-bit version:    Universal    Deutsch

Changes:

  • Scripting changes:
    • FSUtil.OpenFile can now take a Blob object to create a file handle allowing file-like read/write access to an existing chunk of memory.
    • The FileSize object can now handle signed as well as unsigned values (signed versions are created using FSUtil.NewFileSize("s")).
    • Added FileSize.Mult and FileSize.Div methods.
    • Added Item.groups property which returns a Vector of all file type groups a file is a member of.
  • The Folder Options system now allows attribute filters to be specified for folders and files separately. The Filters tab in the Folder Options dialog has two new sets of attribute buttons allowing these to be configured, and the new Set SHOWFILTERFOLDERATTR and Set HIDEFILTERFOLDERATTR commands allow the filters to be controlled programmatically.
  • The NEWTAB argument can now be used with Go DRIVEBUTTONS=multifunctabs to control how the tabs are to be opened (e.g. Go DRIVEBUTTONS=multifunctabs NEWTAB=findexisting).
  • More changes to MTP support to improve performance and prevent "freezing".
  • Toolbar menus containing labels (as in Insert New > Label) no longer deactivate the Lister window border while open.
  • Styles edited via Preferences can now specify logs be displayed in the utility panel.
  • Improved placement of breadcrumbs pop-up menus when the menu is too tall to fit above or below the button.
  • Fixed breadcrumbs path field sometimes truncating paths in the middle when the window was too narrow, since it could be misleading.
  • Fixed some cases where breadcrumbs menus did not use ghosted icons or the "system" label color for folders with the H and/or S attributes. (On XP/Vista, some cases still remain, due to old OS limitations.)
  • On Windows 7 and above, the breadcrumbs menus now apply the Show System Folders filter in locations where it was ignored in the past. (Desktop and profile folders, and some network folders.)
  • Fixed font picker which was broken in the previous beta.
  • Fix for location field borders not repainting properly if the window was resized while focus was on the field.
  • Fix for change notifications being processed out of order in special situations. (Fixes possibility of blank results collection, until the window was refreshed, after search that returned results almost instantly.)
  • Fixed renaming a folder via the tree to put a dot on the end of a name, showing the dot in the tree (until refreshed) even though it was really trimmed.
  • Fixed drag & drop on files within libraries which need to invoke external drop handlers.

5 August 2014

Directory Opus 11.5.5 (Beta)

Directory Opus 11.5.5 (beta) is now available for all Opus 11 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.

32-bit version:    Universal    Deutsch
64-bit version:    Universal    Deutsch

Changes:

  • Scripting changes:
    • Added FSUtil.SameDrive method.
    • FSUtil.Resolve now returns a Path object rather than a string.
    • FSUtil.Resolve now accepts an optional "j" argument to resolve junctions/links to their underlying targets.
    • Added Path.disks property.
    • The AudioCoverArt object now has width, height and depth properties.
    • Fixed crash when using the Progress.SetFiles method.
  • Added Copy NOQUEUEWHENSAME and Clipboard CUTNOCOPYQUEUEWHENSAME arguments, to disable queuing when the source and destination paths are on the same drive.
  • The jobs bar auto-resize now restores the window size correctly if the window was being moved at the time it tried to resize.
  • The Create Folder dialog now allows you to create multiple fully qualified paths in one go.
  • Fixed another issue where a disabled three-button button could incorrectly be enabled when non-related qualifier keys were pressed.
  • Fix for short delay (500ms) that could happen in some cases when launching a function, following a change in a previous beta. This bug also resulted in "orphaned" progress indicators being left behind.
  • Folder expansion in the tree is now deferred while inline rename mode is active. This is to prevent a crash which could occur if items are inserted while edit mode is active (e.g. by a folder expanding asynchronously).
  • Fix for unintended sort order change in previous beta.

1 August 2014

Directory Opus 11.5.4 (Beta)

Directory Opus 11.5.4 (beta) is now available for all Opus 11 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.

32-bit version:    Universal    Deutsch
64-bit version:    Universal    Deutsch

Changes:

  • Scripting changes:
    • Added coverart property to the AudioMeta object, to provide access to any cover art imagery stored in an audio file.
    • Added the File object which provides a simple interface to allow reading and writing of binary files. It is obtained via the new FSUtil.OpenFile and Item.Open methods.
    • Added the Blob object which provides a simple interface for dealing with binary data. It is obtained from the new DOpus.NewBlob method.
    • The Path object's ext property can now be modified.
    • Script column manual grouping did not work properly if the column's type had not been set.
  • Added the @keydown:any directive (true if any qualifier key is held down).
  • Added the Go TABPOS command, which allows folder tabs to be repositioned by command, for use with hotkeys and scripts.
  • The Advanced Rename's Find & Replace mode wasn't properly case-insensitive for some locales (e.g. Russian "?" and "?" were not considered the same letter).
  • Fixed glitch when copying the MP3 year field from a file set to the current year to a file that had no year set at all, and when copying the genre field if it had a custom value rather than a selection from the drop-down.
  • The Advanced Find's Label clause didn't allow any non-standard labels to be searched for.
  • A three-button button that relies on files being selected could incorrectly appear enabled without files selected if the second or subsequent functions used @keydown conditions that weren't currently met (improved fix to the fix in the previous update).
  • Mouse wheel scrolling didn't work in the CLI's script output window.
  • Fixed not being able to re-open the Preferences dialog if you closed it while the Add Folder Alias dialog was open on top of it.
  • Fixed issue introduced in previous beta where buttons at the top of Lister panels would use high-DPI images when the Align other Lister element headers with the file display border Preferences option was turned on.
  • The Find panel's Refine checkbox was incorrectly shown in Opus Light, where it did not work.
  • Fixed a crash which could occur if inline rename mode in the folder tree was activated while the item was expanding.

25 July 2014

Directory Opus 11.5.3 (Beta)

Directory Opus 11.5.3 (beta) is now available for all Opus 11 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.

32-bit version:    Universal    Deutsch
64-bit version:    Universal    Deutsch

Changes:

  • Scripting changes:
    • Script columns can now add "star" columns (like the built-in Rating column) by setting ScriptColumn.type = "stars". The value provided for each file should be "x" or "x/y". The maxstars property can also be used to set the maximum number of stars.
    • When not using auto-grouping with a script column, the group_type field now lets the provided groups be formatted the same way as column values.
    • Script columns can now set themselves to reverse sort by default with the defsort property. Date and size fields get this by default.
    • The FolderEnum script object now has a Close method that lets you free the underlying handle without waiting for garbage collection to clean it up.
  • The date created/date modified fields in the metadata pane (and via the SetAttr META command) can now copy their value from other date fields, like the EXIF date fields already could.
  • Added Delete before copy option to the Synchronize tool.
  • Inline rename now supports Ctrl-' and Ctrl-; to copy the name from the previous/next file in the list. Hold Shift to also copy the extension.
  • Added the Use temporary folder when copying to Zip files on removable drives option to Zip files Preferences.
  • The Create Multiple Folders field now lets you select multiple folders in a file display (including the Windows desktop, Explorer, etc.) and Ctrl-C them into the clipboard, then paste into the dialog to get their names, one per line. The field also now trims quotes and spaces from paths pasted into it, including multi-line text.
  • Improved the recovery on retry for errors resulting from a drive or network becoming temporarily unavailable during file copy (e.g. if you're copying to or from a USB drive, and remove and then reinsert the drive, Opus should now be able to either resume (when copying from) or restart (when copying to) the operation).
  • A Copy HERE command launched via a filetype action would ignore the HERE argument if there was a destination folder.
  • Possible performance improvement for MTP support.
  • The Clipboard PASTE command will now succeed if a full path is specified with the AS argument even if the current folder doesn't support pasting (e.g. a file collection).
  • If a button launched two or more copy commands asynchronously (via dopusrt) that were both set to use the same named queue, Opus would create one queue for each job and run them immediately instead of queuing the second and subsequent ones.
  • If "descript.ion" comments are enabled, Opus will now show those comments for structured-storage files (e.g. MSI files) in preference to comments from the file itself.
  • Made some improvements to try to make the Image Convert function not lose the focus from files it modifies.
  • Fixed error that could prevent the Author/Copyright/Software tags being saved properly in a PNG file (would happen if the PNG file already had those tags provided in a tEXt chunk).
  • A three-button button that relies on files being selected could incorrectly appear enabled without files selected if the second or subsequent functions used @keydown conditions that weren't currently met.
  • When dragging an MP3 file onto another one in the metadata pane, some fields weren't correctly copied over. Also dragging a file from a library onto another file in the metadata pane now works correctly.
  • Fixed a couple of cosmetic issues with transition animations and DPI virtualisation under Windows 8.1.
  • Fix for not showing context menu items added to the registry under a file extension instead of a file class, when there is no file class. (If there is a file class, menu items registered in this way are still ignored, which is what Explorer also does.).
  • When the Resize Lister to display the jobs bar (if possible) option is on and jobs bar closes the Lister was not resized back to its original size if the Lister had been minimized after opening the jobs bar.
  • If the Show command was run in an empty folder the busy cursor would be left visible indefinitely.
  • The Folder Options dialog would use the wrong string for script columns in some cases.
  • Fixed crash triggered by selecting a shortcut to a non-file object (e.g. a control panel) with the viewer pane open and the Show shell icons option enabled.

18 July 2014

Directory Opus 11.5.2 (Beta)

Directory Opus 11.5.2 (beta) is now available for all Opus 11 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.

32-bit version:    Universal    Deutsch
64-bit version:    Universal    Deutsch

Changes:

  • Scripting changes:
    • Added the ScriptColumn.grouporder property to allow scripts to control a column's group order.
    • Script column handlers can now return the data for multiple columns simultaneously if desired, by setting the ScriptColumn.multicol property.
    • Script columns can now specify a different string for the column header to the label shown in column lists (via ScriptColumn.header).
    • Script columns can now set the ScriptColumn.namerefresh flag if they want to be refreshed when the name of a file changes (as opposed to its contents, which is what autorefresh does).
    • Script date/time columns are now properly justified like other date/time columns are, and now group like other date fields.
    • Script date/time columns no longer display a default date if the column is left empty.
    • Script columns would occasionally show a very quick flash of 0 before they were populated.
    • The Dialog object would always include a string field even if the user had not requested it.
    • Script columns can now be added to the Computer view.
    • Added a new Date object that provides an alternate way to handle dates and times. It converts automatically to VT_DATE and so should act as a drop-in replacement. The Item object now returns Date objects for its various date fields rather than VT_DATE. The DOpus.NewDate method can be used to create a new Date object.
    • The FileSize object has new Add, Sub, Compare and Clone methods.
  • Added the Set HIDEEXT and Set AUTOSIZE commands to allow control of the Hide file extensions and Autosize Columns options.
  • Drop-down menus that show lists of columns now divide script columns into sub-menus based on the script they came from (for scripts that add more than one column).
  • The Set SORTBY command now lets you sort on multiple columns where one or more come from a script.
  • Set COLUMNSTOGGLE and similar commands did not support setting the position/width of a script column when adding it to the file display.
  • Fixed crash in brainchild (Advanced Function/Script editor) if you did two sequential "search & replace within selection" operations.