So at first I wasn't too excited or even sure I'd use this MiniTree feature, but it turns out to be a really awesome little thing!
---------------------------------------------------------------------------------------------------
UPDATE: Latest info on February 9, 2009 :

The latest version of the script is
0.01.0013 and can be
downloaded from here. Requires XY 7.90.0075 and
common-jacky 0.01.0006

Adding a new MT when there was already one (or more) saved could mess up the first ones' names, fixed.

expanding nodes: when a location wasn't available, and if you continue script execution of course, others weren't expanded, fixed.

Opening "submenu" "Load A Mini Tree" then going back, and showing all mini trees would have, afterwards, the last mini trees in list to be loaded, fixed.

Like for loading MTs, you can load SaveMiniTree to save the current MT. You can preset some options through global variables: $MT_name for the name of the MT, $MT_expand_active to 1 or 0 whether or not expand active location, and $MT_lock_state to the new lock state (0, 1, or "r")
You can also set $MT_overwrite to 1 to overwrite an existing MT without confirmation. (Example below)

added Configuration screen: now you can very easily add/remove MT, add/remove nodes, rename MT, change lock state, and set which nodes to be expanded just by clicking a checkbox!
---------------------------------------------------------------------------------------------------
UPDATE: Latest info on January 20, 2009 :

The latest version of the script is
0.01.0010 and can be
downloaded from here. Requires XY 7.90.0021 and
common-jacky 0.01.0004

"Edit Configuration File" now done directly inside XY

When saving a MT for the first time, it wasn't added to the list of saved minitrees (!), fixed.
---------------------------------------------------------------------------------------------------
UPDATE: Latest info on January 18, 2009 :

The latest version of the script is
0.01.0009 and can be
downloaded from here. Requires XY 7.90.0021 and
common-jacky 0.01.0004

Mostly internal changes. Note that to load MiniTrees from a script of yours, the global variable ($tmp_gbl) is now called $MT_name !
---------------------------------------------------------------------------------------------------
UPDATE: Latest info on January 9, 2009 :

The latest version of the script is
0.01.0007 and can be
downloaded from here. Requires XY 7.90.0021 and CJ 0.01.0002

Reorganized the menu (moved items, hide some as well)

Added option to "Show All Mini Trees" -- will use HTML by default, it's cool

and I liked it better to see which nodes were to be expanded. To be honest though, I added that by the end of last year I think (just failed to share yet

) and it was text then, so the HTML can be turned off by adding under [Settings] inside the INI file: NoHTML=1
---------------------------------------------------------------------------------------------------
UPDATE: Latest info on December 26, 2008 :

The latest version of the script is
0.01.0006 and can be
downloaded from here. Requires XY 7.80.0032

There's a
new dependency, in form of an additional script file (common-jacky.xys) that you can
download from here. This new script will allow different scripts to use the same "features" without having to pack all the same codes, etc It's a "library", can't be loaded on its own (I mean it can be, but it won't do nothing

).

Now updates are done through XYplorer Automatic Updater -- meaning it is required to have it to check for updates, but you can have it check for updates automatically (and download the new version) when it checks for updates of XY!

Added "Remove Nodes For Subfolders Of Current Location"

Added an option so you define whether the Tree should be locked or not when loading a MT

Also, if you manually edit the INI file, prefixing a path with a plus sign ( + ) will mean that it will be fully expanded on the loaded MiniTree ! Additionally, you can set the option to whether or not Lock the Tree to "r" so it remains unaffected (It's used directly to command setting, so "r" means "restore user value" - i.e. does nothing).

Added "hidden" items, so you need to click on "Show Full Menu" to see them. In there have been put the changelog and items relating to updates, as well as a new one "Edit Configuration File..." (opens the INI file)
---------------------------------------------------------------------------------------------------
UPDATE: Latest info on December 5, 2008 :

New version of the script, available
from here. Requires XY 7.80.0032

Removing node now done using command loadtree

Expand folders (on loading MT) didn't work if folders were hidden on List, fixed.

And a few internal changes...
Original post below:
---------------------------------------------------------------------------------------------------
I've been using it about all the time now, and here's a little script I came up with that maybe some might find useful as well. It allows to
- Add a node for current location
- Remove the node of current location (will need to rebuild MiniTree)
- Save current minitree
- Load a saved minitree
When saving, you can also define whether or not the active location will be (fully) expanded or not.
Examples: Save/Load your mini trees in one click/KS
Here's a little example of how to write a quick script to load a previously saved MiniTree directly -- a script you can put on your Catalog, UDC with KS to it, etc
Code: Select all
"Load &Test MiniTree"
// Set the name of the MT in global var $MT_name
global $MT_name;
$MT_name = "Test";
// and just load the right script, obvious if you didn't call the file above "MiniTrees.xys" you'll need to adjust it:
load "MiniTrees", "LoadMiniTree";
And the same, but to save a mini tree this time :
Code: Select all
"&Save Current MiniTree"
global $MT_name, $MT_expand_active, $MT_lock_state, $MT_overwrite;
// You can set the name of the mini tree -- otherwise you will be prompted to enter a name
$MT_name = "Test";
// You can define whether or not to expand the active/first node -- otherwise a popup asking will be shown
$MT_expand_active = 0;
// You can define the lock state (0=unlocked, 1=locked, r=unchanged) -- otherwise a popup asking will be shown
$MT_lock_state = 'r';
// You can force overwriting an existing mini tree without confirmation
$MT_overwrite = 1;
// and now we save it!
load "MiniTrees", "SaveMiniTree";