Hey everyone, I got tired of inconvenience of working in a small DOPUS window when I have to use it on the half of the screen and wrote this script, personally I love it, so maybe someone else will find it helpful ![]()
My typical layout is 5 columns: folder tree, tab list left, pane left, tab list right, pane right.
When the window becomes smaller, first we get rid of the folder tree. As it gets even smaller, the lister layout switches to horizontal. For me it makes DOPUS perfectly useable even at 650px width:
here's the script, you can modify the resolutions to fit your needs
// Autoresize
// (c) 2026 rivage
// This is a script for Directory Opus.
// See https://www.gpsoft.com.au/endpoints/redirect.php?page=scripts for development information.
// Called by Directory Opus to initialize the script
function OnInit(initData)
{
initData.name = "ResponsiveLister";
initData.version = "1.0";
initData.copyright = "(c) 2026 rivage";
// initData.url = "https://resource.dopus.com/c/buttons-scripts/16";
initData.desc = "Automatically changes dual-pane orientation and folder tree based on Lister width.";
initData.default_enable = true;
initData.min_version = "13.0";
}
// Called whenever a Lister is resized
function OnListerResize(data) {
if (data.action != "resize" &&
data.action != "maximize" &&
data.action != "restore") return;
var cmd = DOpus.Create().Command();
cmd.SetSourceTab(data.lister.activetab);
var width = data.width;
// Below 1200px: horizontal dual panes
// 1200px and above: vertical dual panes
if (width < 1200) {
cmd.RunCommand("Set DUAL=horiz");
} else {
cmd.RunCommand("Set DUAL=vert");
}
// Below 1400px: hide folder tree
// 1400px and above: show folder tree
if (width < 1400) {
cmd.RunCommand("Set TREE=off");
} else {
cmd.RunCommand("Set TREE=on");
}
}