Page 1 of 2

### Sticky Tree

Posted: 25 Feb 2019 11:45
Sticky Tree: A plugin for XYplorer
Makes the tree panel follow the active pane -- an alternative to dual trees.

(better screencaps coming)

INSTALL

This is a combination of an external script written in AutoIt3, and a launcher script written in XYscript.
* stickytree.exe: the stickytree executable.        

* stickytree.au3: The source autoit3 script.        

* stickytree.xys: the xyscript loader.              

* stickytree.ico: an icon that can be used in a ctb.

* stickytree.onyx.ico: an alternative icon.         

* stickytree.readme.txt: a readme text file.        

* LICENSE: License of the project (MIT License).    
• extract the archive contents to <xyscripts>\stickytree\. (See Notes below if you want to use a different location.)
• make sure Dual Pane view is enabled.
• that's it, all set! now you can just execute the XYScript to start sticky tree.
• rerun the xyscript or disable Dual Pane view to stop.

INSTALL CTB
• the XYScript is fully perpared to be used as a ctb. Just set the following command as both left- and right-click scripts of a ctb:
::load "<xyscripts>\stickytree\stickytree.xys",,'f'; // adjust path if necessary.
• and done! the script will take care of ctb icon and caption as well.
• left-click will toggle sticky tree. Right-click will show a config menu.

NOTES
• The preferred independent method of stopping is to run this command in XY:
::copydata $P_STICKYTREE_HWND, "QUIT", 0; The script also quits when XY quits, and, depending on config, when DP is disabled. • the permavar$P_STICKYTREE_EXEC can define the command for running the executable script.
this allows for running the source au3 script with the autoit interpreter. AutoIt3 version must be >= v3.3.15.1.
::perm $P_STICKYTREE_EXEC = 'path\to\autoit\beta\autoit.exe path\to\stickytree.au3'; • the perm variable$P_STICKYTREE_PATH can control the path to the exe and the ini config.
(In fact, if the files are in a non-default location, this permavar should be defined for the ctb config to find the correct ini file.)
• both permavars can contain single-quoted variable path for portable path-keeping. Eg,

Thanks again.

### Re: Sticky Tree

Posted: 11 Mar 2019 07:43
Thanks for trying this out!

Please try the latest v0.9.9.9 in the first post. That warning should go away.

### Re: Sticky Tree

Posted: 13 Mar 2019 07:00
Thanks a ton. It works.

### Re: Sticky Tree

Posted: 13 Mar 2019 13:42
This "nightly" version can let infotips shine through! But there's a precondition:
Configuration > Information > File Info Tips > Initial delay in milliseconds has to be something around or less than 300 ms.
The script's main loop frequency now is 0.5s (2Hz). Infotip "displayability" is not exactly 100% though.
No luck with hoverboxes yet.

### Re: Sticky Tree

Posted: 16 Mar 2019 17:07
Hi Sammay, I hate to give anything but positive comments especially on scripts because I know how much time and effort goes into them, but I've noticed that the latest version v0.9.10.0 is noticeably less responsive than version 0.9.9.9. when switching from pane to pane. Is v0.9.10.0 still a work in progress? I ask because you referred to it as a "nightly" build.

### Re: Sticky Tree

Posted: 16 Mar 2019 18:30
yep, exactly. It should feel slower because the main loop now runs once every 500ms, earlier it was just 10 ms. Additionally on pane change each tooltips under XYplorer are checked for visibility, this might contribute to lag. Admittedly I only tested on my own machine, so the speed cost for this step could very well vary wildly among different systems.

### Re: Sticky Tree

Posted: 16 Mar 2019 19:36
OK thanks Sammay. I assume you had to increase the main loop frequency (from 10 ms to 500 ms) to accommodate InfoTip display or at least they are tied in? I may have to sacrifice InfoTips for speed while in StickyTree. Though I like the fact that your v0.9.10.0 is only looping when XY is active.

### Re: Sticky Tree

Posted: 16 Mar 2019 20:58
Actually the loop frequency was always directly dependent on Configuration > Information > File Info Tips > Initial delay in milliseconds. for showing infotips. If that option's value is larger than loop freqeuncy, infotips will never show no matter how long it takes.

Right now I'm making a basic GUI to accomodate a few configurable settings. I'll try to add a couple options to control the tradeoff between infotip awareness and responsiveness. The "official" and "nightly" versions will be merged then.

### Re: Sticky Tree

Posted: 17 Mar 2019 17:36
SammaySarkar wrote:
16 Mar 2019 20:58
Actually the loop frequency was always directly dependent on Configuration > Information > File Info Tips > Initial delay in milliseconds. for showing infotips. If that option's value is larger than loop freqeuncy, infotips will never show no matter how long it takes.
OK, I figured that was the case based on your previous comments.
SammaySarkar wrote:
16 Mar 2019 20:58
making a basic GUI to accomodate a few configurable settings
Configurable is always nice option.

### Re: Sticky Tree

Posted: 23 Apr 2019 11:13

This version has extensive modifications throughout the codebase. I'd recommend a "clean install", ie, remove all earlier stickytree files and associated scripts.

* The tooltip battle is finally over, means the script doesn't block infotips or hoverboxes any more.
Many thanks to klownboy for testing the new mechanism!
* A handful of configurable options are added, along with a user-friendly config menu in the ctb script.
The script can now:
* auto-toggle dualpane if needed.
* restore last layout after stopping.
* start passively, then autoactivate when dualpane is enabled, and drop to background when its disabled.

See the first post for details.

### Re: Sticky Tree

Posted: 24 Apr 2019 08:02
v1.1.1.0: a bug fix: nav panels were not following horizontal pane split resizes. (AutoIt has a weird way of comparing strings.)