Main Settings

Overview


First of all, this is NO vTray with a 'x' instead of a 'v'!!
So you cannot use your old vTray or Systray(2) Settings and quickly switch over to xTray! You have to start more or less from start.

Why should I switch to xTray?

Main Settings


Key:
INT = Integer or whole number
BOOL = Boolean Value (true or false)
COLOR = Color in Hex (FFFFFF = White, 000000 = Black, ...)
ACTION = Bang Commands, Applications, all Litestep can execute.

Normal Images Setup Solid Image Setup

Exported Variables


(Note that you will need to define dummy variables if you include these in scripts/rc files with standard $evar$ syntax, since when LiteStep reads these files xTray has not yet added them, causing LiteStep to think the variables are undefined.)

Only useful if used in HANDTYPED BANGS (LSXCommand) or if you use it in mzscripts or with "xLabels" special "!ParseEvars" Bang Command!

To use $evars$ in Bangs, which contain the "CURRENT" value, use the escape code %# and prefix the "!ParseEvars" Bang!
$xTrayCurrentWidth$ becomes %#xTrayCurrentWidth%# and so on ...

Overview "Icon Settings"


Bang Commands And Events

Bang Commands


The exact purpose of every bang should be quite obvious.

Tray Events


xTrayAlwaysFireClickEvents BOOL
If defined the Button Click Events are fired, even if a TrayIcon was clicked!

Special Tray Settings

The following "WildcardString" references use the "Standard Wildcard" Syntax!
In the WildcardString:
'*' matches any sequence of characters (zero or more)
'?' matches any character
[SET] matches any character in the specified set,
[!SET] or [^SET] matches any character not in the specified set.

A set is composed of characters or ranges; a range looks like character hyphen character (as in 0-9 or A-Z). [0-9a-zA-Z_] is the minimal set of characters allowed in the [..] pattern construct. Other characters are allowed (ie. 8 bit characters) if your system will support them.

To suppress the special syntactic significance of any of '[]*?!^-\', and match the character exactly, precede it with a '\'.

You can remove the Buttons of specific Applications with the following:

*xTrayHide "SubString from Classname" ["SubString from Windowname"]

The "Classname" is required, the "Windowname" is optional!
Without a specified "Windowname", all Icons which match "Classname" will be hidden.
All Applications, which match the specifications, will not be shown in xTray.

Example:
*xTrayHide "*free*"
All Applications, which have the string "free" somewhere in their Classname, will be ignored from xTray.
You can Show(Hide) them with !xTrayToggleHiddenIcons!

You can deactivate the Manual Positioning of Icons of specific Applications with the following:

*xTrayNoDragnDrop "SubString from Classname" ["SubString from Windowname"]

The "Classname" is required, the "Windowname" is optional!
Without a specified "Windowname", all Icons which match "Classname" won't react on Drag'n'Drop.
All Applications, which match the specifications, will not react on manual repositioning.

You can sort Icons of specific Applications with the following:

*xTrayPosition INT "SubString from Classname" ["SubString from Windowname"]

The INT and "Classname" is required, the "Windowname" is optional!
You can set a fixed (unchangeable!) order of TrayIcons with these lines!
Starting with the lowest INT, all TrayIcons with a matching *xTrayPosition line are sorted ascending. All other TrayIcons are ordered, AFTER those with a *xTrayPosition line, the same way as before, in order of creation or a later drag'n'drop positioning.
Without a specified "Windowname", all Icons which match "Classname" won't react on Drag'n'Drop.

To obtain the correct values for Classname and Windowname, perform a MiddleClick on an Icon while pressing SHIFT key!

Examples

Main Layout Examples


Normal AutoSizing Singleline xTray in the bottomright of the screen growing to the left. Sends a Command to resize an aligned Taskbar!
xTrayX -0
xTrayY -24
xTrayBorders 4
xTrayAutoSize
xTraySolidColors c0c0c0 000000
xTraySolidBevelSize 1
xTrayDirection .left
xTrayOnResize !parseevars !xTaskbarResize %#resolutionx-xtraycurrentwidth$# %#xtaskbarcurrentheight%#

The same as above without a BG and without Pink IconBorders under XP
xTrayX -0
xTrayY -24
xTrayBorders 4
xTrayAutoSize
IF WINXP
xTrayAlphaMap
xTrayImage transparent.png (a fully Transparent AlphaMap Image!)
ENDIF
xTrayDirection .left
xTrayOnResize !parseevars !xTaskbarResize %#resolutionx-xtraycurrentwidth%# %#xtaskbarcurrentheight%#

Two Lines, vertically filled (top->bottom) with automatically added and removed lines (growing to the left)!
xTrayX -0
xTrayY -40
xTrayAutoSize
xTrayLayout .vertical
xTrayDirection .bottom
xTrayWrapDirection .left
xTrayLines 2
xTrayWrapCount 2
xTraySolidColors c0c0c0 000000
xTraySolidBevelSize 1

No AutoSizing, Two Lines, horizontally filled (left->right) a WrapCount of 3 to the bottom, with automatically added space when more then 6 icons occur (growing to the left)!
xTrayX -56
xTrayY -40
xTrayWidth 56
xTrayHeight 40
xTrayBorders 4
xTrayDirection .left
xTrayLines 2
xTrayWrapCount 3
xTraySolidColors c0c0c0 000000
xTraySolidBevelSize 1
xTrayOnLineAdd !parseevars !execute [!xtrayrepositionby -16 0 16 0][!xTrayRefresh xTrayWrapCount %#xTraywrapcount+1%#]

An so on, i hope you got a little impression. It's basically the same as in xTaskbar, if you can setup xTaskbar, you can easily setup xTray :)

Tips'n'Tricks


You miss the popping up Tray InfoTips from Win2000/XP!

Simply set xTrayShowInfoTip and be happy. Not all features, such as clickable Links in SP2, work, but at least you get the Info!
Attention:
Due to a "missing line" in 0.24.7-RC3 as well as in my xStep-0.24.7 (based on RC3) there is no InfoTip Icon Info sent, therefore i have released a Bugfix xStep Version (0.24.7.1)!
So, if somebody want a more complete feature, update your LS Build with xStep-0.24.7.1 :)

You want an Icon-Only Tray, and all the other Tray Modules gave you Pink Outlines under WinXP!

Case 1:
The xTray is directly on the Desktop (not hooked or AlwaysOnTop)!
It works from alone, cause you have FakeTransparency by Default activated :)
Icons Look Perfect!

Case 2:
The xTray is hooked!
First, you should set xTrayTransparencyMode just to be sure ;)
Without any problem it works now, BUT, the AlphaChannel is simply removed, so some icons will look less good!
AlphaChannel Icons Look Poorer!

Case 3:
The xTray isn't hooked, but AlwaysOnTop!
You must set xTrayAlphaMap AND use a fully transparent Image (100% Transparency) as xTrayImage!!
Icons Look Perfect!
In this case works also the poorer looking solution mentioned in Case 2!

You can reposition the TrayIcons per Drag'n'Drop!

Simply Press the Left Button Down on an Icon and while pressing the Button further Move over another Icon and release the Button.

You can "Hide TrayIcons" automatically or manually!

Either use *xTrayHide "SubString from Classname" ["SubString from Windowname"] or perform a MiddleClick on an Icon while pressing CTRL Key!
In both cases the matching Icon will be hidden from the Tray!
You can Toggle them on again with the Bang !xTrayToggleHiddenIcons (then use the CTRL+MiddleClick to reshow them permanently).
Those icons with the "Hidden" Flag have an Info in the Tooltip, so that you can identify them.

You can move the Tray with the Border and LeftButton!

Simply enable it via xTrayMoveable, make sure you have a Border and you don't have set a LeftClick Tray Action!

You can Scroll through the Icons, in an endless Loop, with the MouseWheel or MiddleClick (not in AutoSize Mode!)

You have also the Bang !xTrayScrollIcons "next" or "prev" [AMOUNT] for that. The optional AMOUNT, specifies how many Icons will be scrolled. If the AMOUNT reaches/exceeds the first or last Icon, the current Scroll will stop there.

You can obtain the neccessary Hiding Informations for "*xTrayHide", "*xTrayNoDragnDrop" or *xTrayPosition automatically!

To obtain the correct values for hiding, perform a MiddleClick on an Icon while pressing SHIFT key!

Contact

Please report bugs, if there should be any, to:
andymon@ls-universe.info

Homepage:
www.LS-Universe.info
Here you find News, Updates, and some more.