xPopup Docs Version 1.2.5
General Settings:
Main Settings - Quicklauch Mode - Background Settings - Title/Bottom Settings
Entry State Settings:
Image Settings - Icon Settings - Font Settings
Bangs And Events :
Bangs - Events
Dynamic xPopup Content:
Dynamic Evars - Dynamic Popup Loading
*Popup SubFolder Configuration
Exported Variables
Special Folders
Info Entry(xLabel)
Module Hooking
Special Features
Contact
xPopupCacheAllPopupsAtStartup BOOL
If set, ALL PopupMenus AND ALL SubPopupMenus are loaded at Startup!
Positive: You will never have to wait for the first creation.
Negative: All max needed Resources are always used.
xPopupNoLoadingPopup BOOL
Disables the Loading Popups.
You can now set your specific MultiMonitor Settings and override the internals.
xPopupScreenX INT
"Minimum x-Coordinate based on your MultiMonitor Layout"
xPopupScreenY INT
"Minimum y-Coordinate based on your MultiMonitor Layout"
xPopupScreenWidth INT
"Virtual ScreenWidth (all Monitors together)"
xPopupScreenHeight INT
"Virtual ScreenHeight (all Monitors together)"
One major addition to the Default *Popup PopupMenu definitions is the ability to setup different PopupStyles (Settings) for each defined PopupMenu!
Currently you define a new PopupMenu with the following:
*Popup "Caption/Title" !New !PopupBang
This makes PopupMenu based on xPopup... Settings (xPopupEntryImage entry.png and so on).
Now you can add another Option to make PopupMenu's which are based on QuickPopup... Settings for instance (QuickPopupEntryImage entry.png and so on).
Example:
*Popup "Caption/Title" !New !PopupBang quickpopup
Not so hard to understand, or? As always the LS-Universe.info Forum is open for questions :)
Short Default Settings:
xpopupusesolidcolors xpopupuseentrysolidcolors xpopupentryfontleftborder 20 xpopuptopborder 20
With these 5 Settings you have a simple, but useable xPopup to start with.
Key: [@ ] = PlaceHolder, must be replaced with the xPopup Configname. Default is "xPopup". 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.
The Quicklaunch Mode is very simple, because there are better modules for that purpose!
You can only use a PopupMenu with the following mentioned lines for the "Quicklaunch Mode":
*Popup "Quicklaunch" !new !popupquicklaunch quicklaunch *Popup "!insertFolder:$quicklaunch$" *Popup "q1" "!PopupDynamicFolder:$quicklaunch$" *Popup "q2" "!PopupFolder:$quicklaunch$" *Popup "Folder" folder *Popup "Normal" !alert "my quicklaunch" *Popup ~folder *Popup "Normal Entry" !alert "my quicklaunch entry" *popup ~new
A short explanation of the lines:
Just the start of a new Popup, important is quicklaunch (or any other name you want) at the end. Since your Quicklaunch menu shall probably have another look as your normal xPopup Popupmenus.
*Popup "Quicklaunch" !new !popupquicklaunch quicklaunch
One more multiple lines of the above kind, like in normal PopupMenus!
The end of the PopupMenu.
*popup ~new
Now the needed (my opinion) settings for a very basic Horizontal Quicklaunch Menu:
quicklaunchAddToGroup "" quicklaunchQuicklaunchMode .horizontal quicklaunchQuicklaunchItemSize 32 quicklaunchEntryUseBigIcon quicklaunchEntryIconSize 32 quicklaunchxSpacing 4 quicklaunchySpacing 4 quicklaunchLeftBorder 4 quicklaunchRightBorder 4 quicklaunchTopBorder 4 quicklaunchBottomBorder 4 quicklaunchUseSolidColors quicklaunchSolidColors c0c0c0 000000 quicklaunchSolidBevelSize 1
The Colors, Images, Icon Settings, Spacings, ... can naturally be adapted to your personal taste ;)
Hope this short explanations are enough to show you how to make use of the "QuicklaunchMode" ;)
QuicklaunchMode ".horizontal", ".vertical" or ".none"
If set to ".horizontal", the Popup gets a horizontal ICON only Layout with Tooltips.
If set to ".vertical", the Popup gets a vertical ICON only Layout with Tooltips.
Icon Direction is always left->right / top->bottom and cannot be changed.
WrapDirection is always right / bottom and cannot be changed.
Default is naturally ".none"!
QuicklaunchItemSize INT
Defines the Square Size of one QuicklaunchItem, Default is 32 -> 32x32
QuicklaunchOpenTo ".right", ".left" in Horizontal or ".top", ".bottom" in Vertical Mode
Defines the Direction to which the Quicklaunch show open SubFolders, Default is ".top", ".right"!
QuicklaunchWrapCount INT
Defines the Count of Items till a Wrap is performed, Default is unlimited (100).
TooltipMode ".none", ".defined" or ".all"
If set, the PopupEntries have Tooltips, either use ".all" for all entries, or ".defined" for only those which are explict defined (recommended). Linebreak is possible with "\n"
You assign a tooltip to an entry, by adding it after a "|" in the caption:
*popup "Trashcan|Click here to open Trashcan!" explorer.exe $bitbucket$
BalloonTooltip [TITLE(string)] [ICON(int)]
Gives you a big BalloonTooltip with optional Info/Warning/Error Icon with Bold Title and "Normal" Tooltip Info.
You can use:
xPopupBalloonTooltip --> BallonTooltip without Title and Icon xPopupBalloonTooltip true --> BallonTooltip without Title and Icon xPopupBalloonTooltip "Info:" 1 --> BallonTooltip with Title "Info:" and Info Icon xPopupBalloonTooltip "Entry Info:" --> BallonTooltip with Title "Entry Info:" and No Icon xPopupBalloonTooltip "Entry Info:" 0 --> BallonTooltip with Title "Entry Info:" and No Icon ...
TITLE is a plain title text.
ICON is an INT value:
0 = No Icon 1 = Info Icon 2 = Warning Icon 3 = Error Icon
TooltipDurations INT INT
The first INT value specifies in ms, how long the mouse must remain stationary within an entry for the tooltip to show up.
The second INT value specifies in ms, how long the toolwindow is shown. ( Minimum: 1000(ms) )
TooltipColor COLOR
Color of the Tooltip and BalloonTooltip background.
TooltipTextColor COLOR
Color of the the Tooltip and BalloonTooltip Text.
AutoHide BOOL
If set, the Popup hides as soon as the HideDelay Timer checks and the cursor doesn't hover over a Popup! You might need bigger values for "xPopupHideDelay", if you really want to use this feature.
HideDelay INT
Popuphide Delay (Checking Interval), if PopupMenu must be hidden.
Default is 250(ms), if this is too long for someone, set this maybe to 100.
FolderOpenDelay INT
FolderOpen Delay, specifies how long must the mouse be over the Folderentry till the SubFolder is opened.
Default is 1(ms)
TasksUpdateInterval INT
UpdateInterval for Pinned TasksPopup Menus.
Default is 5000(ms)
AddToGroup POPUPGROUP
By default ALL Popups are in the "xPopup" Group, so most of the time you don't need to add this setting!
If you have another xPopupCfg with the Prefix "work" it looks exactly like the "xPopup" PopupMenu as long as you don't add other specific settings for your "Work" Cfg.
AutoMenuBreak BOOL
If set, the PopupMenu automatically makes a new Column instead of the MultiPart implementation.
MaxEntryWidth INT
Sets the maximum horizontal size of a single PopupMenu Entry. This must be an absolute value.
MinEntryWidth INT
Sets the minimum horizontal size of a single PopupMenu Entry. This must be an absolute value.
MinWidth INT
Sets the minimum horizontal size of the Popup. This must be an absolute value.
MinHeight INT
Sets the minimum vertical size of the Popup. This must be an absolute value. Default is bigger one of "TopBorder+BottomBorder" or "ImageTopEdge+ImageBottomEdge".
MaxWidth INT
Sets the maximum horizontal size of the Popup. This must be an absolute value.
MaxHeight INT
Sets the maximum vertical size of the Popup. This must be an absolute value.
WorkArea LEFT RIGHT TOP BOTTOM
Can be used to set a Custom WorkArea for the SnapFeature, all Coordinate Helpers work ('-', '~', 'c')
Default is the Normal Desktop as before.
RestrictToWorkArea BOOL
If set, the Popup is shown only inside the WorkArea (see above) and cannot be moved, sized or repositioned outside!
OpenToLeft BOOL
If set, all Folders open by Default to the Left instead of to the Right.
PinnedPopupNotOnTop BOOL
If this command is present, then the Pinned Popup's won't be AlwaysOnTop.
ManualUnPin BOOL
Default TRUE, if set to FALSE, you cannot close PopupMenus with LeftDoubleClick,....
Means, you cannot remove Pinned Popups, without calling it again or use !(PopupName)Unpin.
EnableDragnDrop BOOL
Simple Explorer-Style Drag'n'Drop Support inside xPopups :)
You can Drag'n'Drop Files and Folders inside xPopups.
(Only single plain existing Files and Folders and no joined folders or such which use *.mp3!!)
They are moved! to their new position like in Explorer Startmenu.
Usage:
Choose a File or a complete Folder, press the LeftButton DOWN, HOLD it down and navigate to the Popup/Folder/... to which you want to move it. As long as you hold the button pressed you can do whatever you want, you can even use a totally different (pinned) xPopup.
If you're over the desired (Sub)Folder! release the button.
Done.
If the Source was a valid File/Folder and the Destination was a valid Folder, the File(s) are moved after a confirmation.
(Since this "Moves Real Files" on your HardDisk you should check it!).
Moveable BOOL
Default TRUE, if set to FALSE, you cannot move PopupMenus with TopBorder or BottomBorder.
PinOnMove BOOL
Default TRUE, if set to FALSE, SubFolders, which are Dragged away from their Parent aren't automatically Pinned.
Shadeable BOOL
Default TRUE, if set to FALSE, you cannot shade PopupMenus with RightClick on TopBorder.
DropShadow BOOL
If this command is present then the Popup will have the "DropShadow" invented with WinXP.
Caution: This works only under WinXP!
AlphaMap BOOL
If this command is present then the Popup uses a given AlphaChannel in the PNG images for painting per-pixel alphatransparency.
Caution:
This won't work on WinME or Win9x!
Using AlphaMap doesn't support:
!Hook (does not hook other modules!)
AlphaTransparency INT
The command makes the Popup really alphatransparent (eg. you will see the background or a window shine through).
Caution:
This won't work on WinME or Win9x!
Valid values are 0-255, where 0 is totally transparent and 255 is opaque.
Default is 255.
AlphaFade ".mainpopups", ".allpopups" or BOOL
If this command is present then the Popup will be fade in/out on Show/Hide.
TRUE or ".allpopups" would fade all Popups.
".mainpopups" would only fade the TopLevel Popup
Caution:
This won't work on WinME or Win9x!
CustomAlphaFade (stepsize) (delay)
If this command is present then the Popup will be fade in/out on Show/Hide with the given settings.
Caution:
This won't work on WinME or Win9x!
AutoSeparator BOOL or INT
Show a automatically added !Separator in !PopupDynamicFolder, !PopupFolder, ... Entry's.
o "0" or "false":
No AutoSeparator Feature. Default!
o "1" or "true":
AutoSeparator between Folders and Files in !popup(Dynamic)Folder (and subfolders)
o "2" :
AutoSeparator between Title and Folders/Files and
AutoSeparator between Folders and Files in !popup(Dynamic)Folder (and subfolders)
o "3" :
AutoSeparator between Title and Folders/Files and
AutoSeparator between Folders and Files in !popup(Dynamic)Folder (and subfolders) and
AutoSeparator at the end of a Popup.
OverlapX INT
Determines how much a sub-menu will overlap its parent menu in horizontal direction.
If no value is provided then the default is 0.
OverlapY INT
Determines how much a sub-menu will overlap its parent menu in vertical direction.
If no value is provided then the default is "-TOPBORDER".
EntryHeight INT
This will set the Height of each Popup Entry (Entry and ActiveEntry).
If no value is provided then the default is the Height of the used Image.
If SolidColors are used the default is 20.
FolderHeight INT
This will set the Height of each Popup Entry (Folder and ActiveFolder).
If no value is provided then the default is the Height of the used Image.
If SolidColors are used the default is "EntryHeight".
InfoHeight INT
This will set the Height of each !Info Entry.
If no value is provided then the default is "EntryHeight".
SeparatorHeight INT
This will set the Height of each Separator Entry.
If no value is provided then the default is the Height of the used Image.
If SolidColors are used the default is 2.
EntryShowText BOOL
ActiveEntryShowText BOOL
FolderShowText BOOL
ActiveFolderShowText BOOL
Show Text in Popup Entrys, optional per State setup. Default is TRUE.
EntryShowIcon BOOL
ActiveEntryShowIcon BOOL
FolderShowIcon BOOL
ActiveFolderShowIcon BOOL
Show Icons in Popup Entrys, optional per State setup. Default is TRUE.
EntryUseBigIcon BOOL
ActiveEntryUseBigIcon BOOL
FolderUseBigIcon BOOL
ActiveFolderUseBigIcon BOOL
Use 32x32 Icons in Popup Entrys instead of the 16x16 Icons, optional per State setup. Default is FALSE.
DefaultIcon ICON
Use this Icon in Popup Entrys, if no Icon is found.
FolderIcon ICON
Use this Icon in Popup Folder Entrys, which havn't set a custom (.icon=) Icon.
ShowExtensions BOOL or "ExclusionList"
Shows Extension of Popup Entrys. If the ExclusionList is set, the specified Extensions will never be shown, all others will be displayed!
ExclusionList Syntax:
".lnk|.bat|.pif"
ShowCaption ".none", ".top" and ".bottom"
Shows Title/Caption either at TOP or BOTTOM or none at all.
FolderOpenOnClick BOOL
If set, SubFolders open only on definite "Click" no longer on "Hover".
CloseAfterAction BOOL
Default is TRUE, same behaviour as before!
If set to FALSE, Popups stay open after clicking an Entry to allow multiple actions at once without Pinning or the need to open the Popup again.
If you Press CTRL during the Click you can change the Default temporary to the opposite!
So, if you want quickly open 3 programs in a PopupFolder simply Press CTRL during the Clicks and the popup stays open.
If you have set xPopupCloseAfterAction FALSE and want the Popup to close after the Click Press CTRL as above.
TopBorder INT
Sets the number of pixels on the top edge to reserve as a border to Popup Entrys. If no value is provided then the default is 0.
Attention:
This is also used for the "Title" (if "ShowCaption" is set to ".top") and for Moving! If you want to move the Popup or want a "Top"Title, you should set your "TitleHeight" here.
BottomBorder INT
Sets the number of pixels on the bottom edge to reserve as a border to Popup Entrys. If no value is provided then the default is 0.
Attention:
This is also used for the "Title" (if "ShowCaption" is set to ".bottom") and for Moving! If you want to move the Popup or want a "Bottom", you should set your "BottomHeight" here.
LeftBorder INT
Sets the number of pixels on the left edge to reserve as a border to Popup Entrys.
If no value is provided then the default is 0.
RightBorder INT
Sets the number of pixels on the right edge to reserve as a border to Popup Entrys.
If no value is provided then the default is 0.
XSpacing INT
X Space between Popup Entrys, after a "Menubreak".
If no value is provided then the default is 0.
YSpacing INT
Y Space between Popup Entrys.
If no value is provided then the default is 0.
SeparatorySpacing INT
You can specify a different ySpacing between Entrys and Separators, with this setting.
The minimum value is -xPopupySpacing, so you can "remove" the spacing.
The SeparatorySpacing is always ADDED to the ySpacing!
The default is 0 (same space as between every other entry).
BorderMethod ".none", "raised", "etched", "sunken", "bump"
Draws a rectangular border with the specified style around the Popup. Best for SolidColors, and only for rectangular BG Images.
Image IMAGE
Sets the name of the continuous Popup BG Image. This file must be in BMP or PNG format format.
If no value is provided then the Popup is displayed True Transparent.
ImageMode "stretch", "tile", "tile-horizontal", "tile-vertical"
Sets the method used to scale the continuous Popup BG Image.
If no value is provided then the default is "stretch".
ImageLeftEdge INT
Sets the number of pixels on the left edge of the continuous Popup BG Image that will not be stretched or tiled.
If no value is provided then the default is 0.
ImageRightEdge INT
Sets the number of pixels on the right edge of the continuous Popup BG Image that will not be stretched or tiled.
If no value is provided then the default is 0.
ImageTopEdge INT
Sets the number of pixels on the top edge of the continuous Popup BG Image that will not be stretched or tiled.
If no value is provided then the default is "xPopupTopBorder".
ImageBottomEdge INT
Sets the number of pixels on the bottom edge of the continuous Popup BG Image that will not be stretched or tiled.
If no value is provided then the default is "xPopupBottomBorder".
SaturationIntensity INT
This command specifies the color saturation of the continuous Popup BG Image (ONLY THE MAIN POPUP BG).
Minimum: 0 -> Grayscale
Maximum: 255 -> Full Colored (Default)
HueIntensity INT
This command specifies the amount of the, in the continuous Popup BG Image, blended in color (ONLY THE MAIN POPUP BG).
Minimum: 0 -> Nothing (Default)
Maximum: 255
HueColor COLOR
This command specifies the blended in color.
Default: FFFFFF
Attention: Only valid, if "UseSolidColors" is set!
UseSolidColors BOOL
If set, the SolidColor Settings are enabled.
SolidColors (bgcolor) [(lightbevelcolor)] [(darkbevelcolor)]
Sets the colors of the Popup BG, first the BGColor, then optional Light and Dark BevelColors
SolidBevelSize LEFT RIGHT TOP BOTTOM or (LEFT/RIGHT) (TOP/BOTTOM) or (LEFT/RIGHT/TOP/BOTTOM)
Accepts 4, 2 or 1 INT Value(s), which define the size of the different bevel sides.
Sets the size of the painted Bevels in pixels.
!xPopupSolidBevelSize 1 sets all borders to 1px !xPopupSolidBevelSize 1 0 sets left/right borders to 1px and top/bottom borders to 0px !xPopupSolidBevelSize 1 0 2 1 sets left/right/top/bottom border to the defined values
If no value is provided then the default is 0.
SolidGradientColors (color) [(color)] [(color)] ...
If defined, a Gradient is Painted with the BackgroundColor and the specified Gradient Colors.
(NO GRADIENT PAINTED ON BORDER!).
SolidGradientVertical BOOL
If set, the Gradient is painted vertical instead of horizontal.
SolidGradientRepeated INT
The Gradient colors are repeated in an endless loop over the whole xPopup size.
INT specifies how big (in pixels) each plain color of the gradient shall be.
You define the TitleHeight with "xPopupTopBorder" and the BottomHeight with "xPopupBottomBorder"!
("Title"/"Bottom")TrueTransparent BOOL
If set "Magic Pink" in IMAGES will be considered as TRUE TRANSPARENT
-> You see the the "Desktop", instead of the MainPopupBG (if used!)
So you can make better mixtures between Real Transparency and MainPopupBG. Till now, only "Magic Pink" in MainPopupBG was Real Transparent all others usages only showed the MainPopupBG (if used!).
xPopup("Title"/"Bottom")TrueTransparent has with ALPHAMAP ENABLED, a different function as with normal images!
If set, the EntryImageAlphaMap REPLACES the MainPopup BG and it's AlphaMap completely.
If not set (Default), the EntryImageAlphaMap IS PAINTED WITH THEIR AlphaMap ONTO the MainPopup BG.
This is a quite important difference, as some people already have discovered, so check out which method is better to achieve your goals.
("Title"/"Bottom")BorderMethod ".none", "raised", "etched", "sunken", "bump"
Draws a rectangular border with the specified style around the specified EntryType. Best for SolidColors, and only for rectangular Entry Images.
("Title"/"Bottom")Image IMAGE
Sets the name of the Popup Entry Image. This file must be in BMP or PNG format format.
If no value is provided then the Popup is displayed with the Popup background.
("Title"/"Bottom")ImageLeftEdge INT
Sets the number of pixels on the left edge of the Popup Entry Image that will not be stretched or tiled.
If no value is provided then the default is 0.
("Title"/"Bottom")ImageTopEdge INT
Sets the number of pixels on the top edge of the Popup Entry Image that will not be stretched or tiled.
If no value is provided then the default is 0.
("Title"/"Bottom")ImageRightEdge INT
Sets the number of pixels on the right edge of the Popup Entry Image that will not be stretched or tiled.
If no value is provided then the default is 0.
("Title"/"Bottom")ImageBottomEdge INT
Sets the number of pixels on the bottom edge of the Popup Entry Image that will not be stretched or tiled.
If no value is provided then the default is 0.
("Title"/"Bottom")ImageMode "stretch", "tile", "tile-horizontal" or "tile-vertical"
Sets the method used to scale the Popup Entry Image.
If no value is provided then the default is "stretch".
("Title"/"Bottom")SaturationIntensity INT
This command specifies the color saturation of the Popup Entry.
Minimum: 0 -> Grayscale
Maximum: 255 -> Full Colored (Default)
("Title"/"Bottom")HueIntensity INT
This command specifies the amount of the, in the Popup Entry, blended in color.
Minimum: 0 -> Nothing (Default)
Maximum: 255
("Title"/"Bottom")HueColor COLOR
This command specifies the blended in color.
Default: FFFFFF
Attention: Only valid, if "xPopupUse("Title"/"Bottom")SolidColors" is set!
Use("Title"/"Bottom")SolidColors BOOL
If set, the SolidColor Settings for this State are enabled.
Example: "xPopupUseTitleEntrySolidColors"
("Title"/"Bottom")SolidColors (bgcolor) [(lightbevelcolor)] [(darkbevelcolor)]
Sets the colors of the Popup Entry, first the BGColor, then optional Light and Dark BevelColors
("Title"/"Bottom")SolidBevelSize LEFT RIGHT TOP BOTTOM or (LEFT/RIGHT) (TOP/BOTTOM) or (LEFT/RIGHT/TOP/BOTTOM)
Accepts 4, 2 or 1 INT Value(s), which define the size of the different bevel sides.
Sets the size of the painted Bevels in pixels.
xPopup("Title"/"Bottom")SolidBevelSize 1 sets all borders to 1px xPopup("Title"/"Bottom")SolidBevelSize 1 0 sets left/right borders to 1px and top/bottom borders to 0px xPopup("Title"/"Bottom")SolidBevelSize 1 0 2 1 sets left/right/top/bottom border to the defined values
If no value is provided then the default is 0.
("Title"/"Bottom")SolidGradientColors (color) [(color)] [(color)] ...
If defined, a Gradient is Painted with the BackgroundColor and the specified Gradient Colors.
(NO GRADIENT PAINTED ON BORDER!).
("Title"/"Bottom")SolidGradientVertical BOOL
If set, the Gradient is painted vertical instead of horizontal.
("Title"/"Bottom")SolidGradientRepeated INT
The Gradient colors are repeated in an endless loop over the whole entry size.
INT specifies how big (in pixels) each plain color of the gradient shall be.
ActiveFolderUseFolderDefault BOOL
If set, the Default for "ActiveFolder" Settings are "Folder" Settings instead od "ActiveEntry" Settings.
This setting affects "ActiveFolder" Default for ALL specific settings (Texture, Font and Icon!)
The "(Entry Type)" in front of each setting means, that every setting can be:
Entry, ActiveEntry, Folder, ActiveFolder or Info
If you set a setting with "Entry", then, THIS becomes Default for all other States except "Info"! If you set a setting with "ActiveEntry" then, THIS becomes Default for "ActiveFolder", if you specify "xPopupActiveFolderUseFolderDefault", "Folder" is used as default for "ActiveFolder"!
Example:
xPopupEntrySaturationIntensity 70
All Popup Entry States have a SaturationIntensity of 70!
xPopupActiveEntrySaturationIntensity 70
Only Active Popup Entrys have a SaturationIntensity of 70!
"Separator" and "Arrow", "ActiveArrow" are special!
The "Separator" Prefix allows you to setup a Separator Image, which is painted at !separator lines.
The "Arrow" and "ActiveArrow" Prefixes are limited to (Entry Type)Image IMAGE and are for Custom Folder Indicators and are only painted on Folder Entry's ("Arrow" is Default for "ActiveArrow"!)
You can use Magic Pink in all Images!
ArrowImage IMAGE
Sets the name of the Folder Arrow Image. This file must be in BMP or PNG format format.
If no value is provided, then no Arrow is painted.
ArrowOffset INT
Specifies the distance between the Entry Border and the ArrowImage.
If no value is provided, then the default is 4.
ArrowOnLeft BOOL
If set, the Arrow is painted on the left Side of the Entry instead of the right Side.
ActiveArrowImage IMAGE
Sets the name of the Active Folder Arrow Image. This file must be in BMP or PNG format format.
If no value is provided, then no ActiveArrow is painted.
ActiveArrowOffset INT
Specifies the distance between the Entry Border and the ActiveArrowImage.
If no value is provided, then the default is "ArrowOffset".
ActiveArrowOnLeft BOOL
If set, the ActiveArrow is painted on the left Side of the Entry instead of the right Side.
If no value is provided, then the default is "ArrowOnLeft".
(Entry Type)TrueTransparent BOOL
If set "Magic Pink" in IMAGES will be considered as TRUE TRANSPARENT
-> You see the the "Desktop", instead of the MainPopupBG (if used!)
So you can make better mixtures between Real Transparency and MainPopupBG. Till now, only "Magic Pink" in MainPopupBG was Real Transparent all others usages only showed the MainPopupBG (if used!).
xPopup(EntryType)TrueTransparent has with ALPHAMAP ENABLED, a different function as with normal images!
If set, the EntryImageAlphaMap REPLACES the MainPopup BG and it's AlphaMap completely.
If not set (Default), the EntryImageAlphaMap IS PAINTED WITH THEIR AlphaMap ONTO the MainPopup BG.
This is a quite important difference, as some people already have discovered, so check out which method is better to achieve your goals.
(EntryType)BorderMethod ".none", "raised", "etched", "sunken", "bump"
Draws a rectangular border with the specified style around the specified EntryType. Best for SolidColors, and only for rectangular Entry Images.
(Entry Type)Image IMAGE
Sets the name of the Popup Entry Image. This file must be in BMP or PNG format format.
If no value is provided then the Popup is displayed with the Popup background.
(Entry Type)ImageLeftEdge INT
Sets the number of pixels on the left edge of the Popup Entry Image that will not be stretched or tiled.
If no value is provided then the default is 0.
(Entry Type)ImageTopEdge INT
Sets the number of pixels on the top edge of the Popup Entry Image that will not be stretched or tiled.
If no value is provided then the default is 0.
(Entry Type)ImageRightEdge INT
Sets the number of pixels on the right edge of the Popup Entry Image that will not be stretched or tiled.
If no value is provided then the default is 0.
(Entry Type)ImageBottomEdge INT
Sets the number of pixels on the bottom edge of the Popup Entry Image that will not be stretched or tiled.
If no value is provided then the default is 0.
(Entry Type)ImageMode "stretch", "tile", "tile-horizontal" or "tile-vertical"
Sets the method used to scale the Popup Entry Image.
If no value is provided then the default is "stretch".
(Entry Type)SaturationIntensity INT
This command specifies the color saturation of the Popup Entry.
Minimum: 0 -> Grayscale
Maximum: 255 -> Full Colored (Default)
(Entry Type)HueIntensity INT
This command specifies the amount of the, in the Popup Entry, blended in color.
Minimum: 0 -> Nothing (Default)
Maximum: 255
(Entry Type)HueColor COLOR
This command specifies the blended in color.
Default: FFFFFF
Attention: Only valid, if "xPopupUse(Entry Type)SolidColors" is set!
Use(Entry Type)SolidColors BOOL
If set, the SolidColor Settings for this State are enabled.
Example: "xPopupUseActiveEntrySolidColors"
(Entry Type)SolidColors (bgcolor) [(lightbevelcolor)] [(darkbevelcolor)]
Sets the colors of the Popup Entry, first the BGColor, then optional Light and Dark BevelColors
(Entry Type)SolidBevelSize LEFT RIGHT TOP BOTTOM or (LEFT/RIGHT) (TOP/BOTTOM) or (LEFT/RIGHT/TOP/BOTTOM)
Accepts 4, 2 or 1 INT Value(s), which define the size of the different bevel sides.
Sets the size of the painted Bevels in pixels.
xPopup(Entry Type)SolidBevelSize 1 sets all borders to 1px xPopup(Entry Type)SolidBevelSize 1 0 sets left/right borders to 1px and top/bottom borders to 0px xPopup(Entry Type)SolidBevelSize 1 0 2 1 sets left/right/top/bottom border to the defined values
If no value is provided then the default is 0.
(Entry Type)SolidGradientColors (color) [(color)] [(color)] ...
If defined, a Gradient is Painted with the BackgroundColor and the specified Gradient Colors.
(NO GRADIENT PAINTED ON BORDER!).
(Entry Type)SolidGradientVertical BOOL
If set, the Gradient is painted vertical instead of horizontal.
(Entry Type)SolidGradientRepeated INT
The Gradient colors are repeated in an endless loop over the whole entry size.
INT specifies how big (in pixels) each plain color of the gradient shall be.
ActiveFolderUseFolderDefault BOOL
If set, the Default for "ActiveFolder" Settings are "Folder" Settings instead od "ActiveEntry" Settings.
This setting affects "ActiveFolder" Default for ALL specific settings (Texture, Font and Icon!)
The "(Entry Type)" in front of each setting means that every setting can be:
Entry, ActiveEntry, Folder or ActiveFolder
If you set a setting with "Entry", then, THIS becomes Default for all other States! If you set a setting with "ActiveEntry" then, THIS becomes Default for "ActiveFolder", if you specify "xPopupActiveFolderUseFolderDefault", "Folder" is used as default for "ActiveFolder"!
Example:
xPopupEntryIconX 5
All Popup Entry States have a IconX Position of 5!
xPopupActiveEntryIconX 5
Active Popup Entrys have a IconX Position of 5!
You have additionally two extra Settings for "(Entry Type)" in front of each setting:
"Title" and "Pinned"
"Title":
All following Icon Settings are valid for an Icon which indicates the ParentPopupEntry Icon in the "Caption"
Must be enabled with:
xPopupTitleShowIcon
"Pinned":
All following Icon Settings are valid for an Icon which indicates the Pinned State in the "Caption".
Must be enabled with:
xPopupPinnedShowIcon
and requires a valid IconResource in:
xPopupPinnedIconPath "$ThemeDir$mypinnedicon.ico"
PinnedIconPath "ICO, EXE, DLL, ..."
Defines the Icon which should be used for the "Pinned" Icon.
(Entry Type)IconX INT
Sets the horizontal position of the icon in the Popup Entry. If the value is positive then it is relative to the left side of the Popup Entry, if negative then to the right side. Additionally you can make the position relative to the center of the Popup Entry by appending the character 'c' after the number ("32c", "-128c").
(Entry Type)IconY INT
Sets the vertical position of the icon in the Popup Entry. If the value is positive then it is relative to the top side of the Popup Entry, if negative then to the bottom side. Additionally you can make the position relative to the center of the Popup Entry by appending the character 'c' after the number ("32c", "-128c").
(Entry Type)IconSize INT
This command specifies the Size (Width/Height) of the displayed Icon.
Minimum: 8
Maximum: 32
If no value is provided then the default is 16.
(Entry Type)IconSaturationIntensity INT
This command specifies the color saturation of the icon.
Minimum: 0 -> Grayscale
Maximum: 255 -> Full Colored (Default)
(Entry Type)IconHueIntensity INT
This command specifies the amount of the, in the icon, blended in color.
Minimum: 0 -> Nothing (Default)
Maximum: 255
(Entry Type)IconHueColor COLOR
This command specifies the blended in color.
Default: FFFFFF
ActiveFolderUseFolderDefault BOOL
If set, the Default for "ActiveFolder" Settings are "Folder" Settings instead od "ActiveEntry" Settings.
This setting affects "ActiveFolder" Default for ALL specific settings (Texture, Font and Icon!)
The "(Entry Type)" in front of each setting means that every setting can be:
Title, Info, Entry, ActiveEntry, Folder or ActiveFolder
If you set a setting with "Entry", then, THIS becomes Default for all other States except "Title" and "Info"! If you set a setting with "ActiveEntry" then, THIS becomes Default for "ActiveFolder", if you specify "xPopupActiveFolderUseFolderDefault", "Folder" is used as default for "ActiveFolder"!
Example:
xPopupEntryFontHeight 20
All Popup Entry States have a FontHeight of 20!
xPopupActiveEntryFontHeight 20
Active Popup Entrys have a Text FontHeight of 20!
"Arrow" and "ActiveArrow" are special!
The "Arrow" and "ActiveArrow" Prefixes are for Custom Folder Text Indicators and are only painted on Folder Entry's ("Arrow" is Default for "ActiveArrow"!)
You can setup the Arrow and ActiveArrow Font with all normal Font settings. Simply set at (Entrytype) the Prefixes "Arrow" and "ActiveArrow"!
UseTextArrow BOOL
If set, the TextArrows are enabled.
ArrowText STRING
The String which is painted as the Normal Folder TextArrow.
ActiveArrowText STRING
The String which is painted as the Active Folder TextArrow.
(Entry Type)Font FONT
Sets the name of the font used to display text. If no value is provided then the default is "Arial".
(EntryType)FontCharSet CHARSET
Sets the used CharSet of the font.
ANSI_CHARSET
BALTIC_CHARSET
CHINESEBIG5_CHARSET
DEFAULT_CHARSET
EASTEUROPE_CHARSET
GB2312_CHARSET
GREEK_CHARSET
HANGUL_CHARSET
MAC_CHARSET
RUSSIAN_CHARSET
SHIFTJIS_CHARSET
SYMBOL_CHARSET
TURKISH_CHARSET
VIETNAMESE_CHARSET
JOHAB_CHARSET
ARABIC_CHARSET
HEBREW_CHARSET
THAI_CHARSET
OEM_CHARSET
If no value is provided then the default is DEFAULT_CHARSET.
(EntryType)FontSmoothing BOOL
If set to "FALSE", you can use Text without ANY Background (MainPopupBG and EntryBG) and don't have PinkOutlines (from Smoothing).
Default is "TRUE".
(EntryType)FontCleartype BOOL
"ClearType" Font Rendering (just better AntiAliasing, only for WinXP).
If no value is provided then the default is TRUE.
(Entry Type)FontHeight INT
Sets the height of the font used to display the text in pixels.
If no value is provided then the default is 15.
(Entry Type)FontLeftBorder INT
Sets the number of pixels on the left edge of the Popup Entry to reserve as a border.
If no value is provided then the default is 0.
(Entry Type)FontRightBorder INT
Sets the number of pixels on the right edge of the Popup Entry to reserve as a border.
If no value is provided then the default is 0.
(Entry Type)FontTopBorder INT
Sets the number of pixels on the top edge of the Popup Entry to reserve as a border.
If no value is provided then the default is 0.
(Entry Type)FontBottomBorder INT
Sets the number of pixels on the bottom edge of the Popup Entry to reserve as a border.
If no value is provided then the default is 0.
(Entry Type)FontColor COLOR
If no value is provided then the default is 000000.
(Entry Type)FontBold BOOL
If this command is present then the font will be bold.
(Entry Type)FontItalic BOOL
If this command is present then the font will be italic.
(Entry Type)FontUnderline BOOL
If this command is present then the font will be underlined.
(Entry Type)FontAlign "left", "right" or "center"
Sets the horizontal text alignment.
If no value is provided then the default is "left".
(Entry Type)FontVertAlign "top", "bottom" or "center"
Sets the vertical text alignment.
If no value is provided then the default is "center".
(Entry Type)FontShadow BOOL
If this command is present then the font will be shadowed.
You can either use Shadow or OutLine, not both at the same time! Outline overrides Shadow.
(Entry Type)FontShadowColor COLOR
Sets the color used to display the text shadow.
If no value is provided then the default is dark gray (808080).
(Entry Type)FontShadowX INT
Sets the number of pixels in the horizontal direction that the shadow is offset from the rest of the text; this can be negative.
If no value is provided then the default is 1.
(Entry Type)FontShadowY INT
Sets the number of pixels in the vertical direction that the shadow is offset from the rest of the text; this can be negative.
If no value is provided then the default is 1.
(Entry Type)FontOutline BOOL
If this command is present then the text will be Outlined.
You can either use Shadow or OutLine, not both at the same time! Outline overrides Shadow.
(EntryType)FontOutLineExtra BOOL
If set, the Outline is painted fully around the text, otherwise it's painted only at the 4 sides. That's just a minor visual difference, but now you can choose, which one is more your taste.
(Entry Type)FontOutlineColor COLOR
Sets the color used to display the text Outline.
If no value is provided then the default is dark gray (808080).
You can call every Popup Bang instead of:
!Popupname x y anchor
with the anchor directly after the Bang:
!Popupname anchor
!Popup [x] [y] ["anchor"]
Calls the first defined Popup menu on the Screen (at Current Mouse Pos or manually at the defined Position [x] and [y].
"anchor" is the Cursor, relative to the displayed Popup, it can be:
topleft DEFAULT
topcenter
topright
centerleft
centercenter
centerright
bottomleft
bottomcenter
bottomright
!PopupLoadCFG "*Prefix" "FilePath"
This would create/replace all defined Popups starting with "*Prefix" in the rc-File "FilePath"
See Dynamic Popup Loading for details.
!PopupRescan
This Bang completely Resets xPopup and Reloads ALL settings from Step.
Purpose:
You don't need to UnLoad <-> Reload xPopup, if you want to make changes to the *Popup lines or major settings in general.
Attention:
The Bang automatically calls a !reload, so "Manually Set Evars" get lost!! But this happens always. if you try to reload saved settings :)
!PopupDynamicFolder "Full Path" [x] [y] ["anchor"]
Calls a Popup menu with the specified RootFolder on the Screen without the need to define *Popup CFG (at Current Mouse Pos or manually at the defined Position [x] and [y].
"anchor" is the Cursor, relative to the displayed Popup, it can be:
topleft DEFAULT
topcenter
topright
centerleft
centercenter
centerright
bottomleft
bottomcenter
bottomright
!PopupTasks [x] [y] ["anchor"]
Calls a PopupMenu with the current running Tasks on the Screen without the need to define *Popup CFG (at Current Mouse Pos or manually at the defined Position [x] and [y].
"anchor" is the Cursor, relative to the displayed Popup, it can be:
topleft DEFAULT
topcenter
topright
centerleft
centercenter
centerright
bottomleft
bottomcenter
bottomright
!PopupControlPanel [x] [y] ["anchor"]
!PopupMyComputer [x] [y] ["anchor"]
!PopupNetwork [x] [y] ["anchor"]
!PopupPrinters [x] [y] ["anchor"]
!PopupRecentDocuments [x] [y] ["anchor"]
!PopupRecycleBin [x] [y] ["anchor"]
Calls a Shell Folder PopupMenu on the Screen without the need to define *Popup CFG (at Current Mouse Pos or manually at the defined Position [x] and [y].
"anchor" is the Cursor, relative to the displayed Popup, it can be:
topleft DEFAULT
topcenter
topright
centerleft
centercenter
centerright
bottomleft
bottomcenter
bottomright
There are only the Bangs available you have defined Popup Menu's for.
The following Bangs are only defined for TopLevel Popups, such you have defined with "!new" - "~new"!
!(PopupMenuName) [x] [y] ["anchor"]
Calls the Popup menu on the Screen (at Current Mouse Pos or manually at the defined Position [x] and [y].
"anchor" is the Cursor, relative to the displayed Popup, it can be:
topleft DEFAULT
topcenter
topright
centerleft
centercenter
centerright
bottomleft
bottomcenter
bottomright
!(PopupMenuName)Reposition (x-coordinate) (y-coordinate) [width] [height] [anchor]
Repositions (Moves and/or Resizes) the PopupMenu.
Accepts now an additional anchor "topleft", "topcenter", "topright", "centerleft", "centercenter", "centerright", "bottomleft", "bottomcenter", "bottomright", which sets where the new position is relative to the Popup.
You need either 2 (x,y), 3 (x,y,anchor), 4(x,y,w,h) or 5(x,y,w,h,anchor) values!
!(PopupMenuName)Reposition accepts for x and y values "CurrentX" and "CurrentY", which will be replaced with the actual Position, so you don't need to use xLabel(light)'s !ParseEvars to get/keep the current position!
!(PopupMenuName)Pin
Pins & Shows the Popup at the current position. Call a !(popupname)Reposition before!
!(PopupMenuName)UnPin
UnPins & Hides the Popup.
!(PopupMenuName)Toggle
Toggles the Popup between visible and not visible.
!(PopupMenuName)TogglePin
Toggles (Pins/UnPins - Shows/Hides) the Popup.
!(PopupMenuName)ToggleShade
Shades/UnShades the Popup.
Title Mouse Actions:
Title is only the "TopBorder"!
"Action" in the following can be:
".none" -> Does nothing
".pin" -> Pins the Popup
".unpin" -> UnPins (and Closing) the Popup
".togglepin" -> Pin and UnPins (and Closing) the Popup
".toggleshade" -> Toggles the ShadeMode
".toggleontop" -> IF PINNED, changes the OnTop State of the Pinned Popup On-The-Fly.
".move" -> Defines the MoveButton
".close" -> Closes the PopupMenu (and UnPins it)
".pageup" -> Display the previous Part in MultiPart Popups.
".pagedown" -> Display the next Part in MultiPart Popups.
OnTitleLeftClick "Action"
Default is ".move"
OnTitleMiddleClick "Action"
Default is ".none" (Scroll is still possible)
OnTitleRightClick "Action"
Default is ".toggleshade"
Bottom Mouse Actions:
Bottom is only the "BottomBorder"!
"Action" in the following can be:
".none" -> Does nothing
".pin" -> Pins the Popup
".unpin" -> UnPins (and Closing) the Popup
".togglepin" -> Pin and UnPins (and Closing) the Popup
".toggleshade" -> Toggles the ShadeMode
".toggleontop" -> IF PINNED, changes the OnTop State of the Pinned Popup On-The-Fly.
".move" -> Defines the MoveButton
".close" -> Closes the PopupMenu (and UnPins it)
".pageup" -> Display the previous Part in MultiPart Popups.
".pagedown" -> Display the next Part in MultiPart Popups.
OnBottomLeftClick "Action"
Default is ".none"
OnBottomMiddleClick "Action"
Default is ".none" (Scroll is still possible)
OnBottomRightClick "Action"
Default is ".none"
OnDrop "MOVE", "COPY", or "SHORTCUT"
Move: Moves the dropped File to the Folder on which it was dropped.
Copy: Copies the dropped File to the Folder on which it was dropped.
Shortcut: Makes a shortcut to the dropped File in the Folder on which it was dropped. This one is normally the best solution for a PopupMenu/Quicklaunch
OnOpen ACTION
The ACTION is executed, if a TOPLEVEL Popup is shown.
Inside of the ACTION "%[popupname]% or "%{popupname}%" ( due to possible interactions with xLabels !ParseEvars ) is replaced with the "PopupName" (The Bang without "!").
OnClose ACTION
The ACTION is executed, if a TOPLEVEL Popup is closed.
Inside of the ACTION "%[popupname]% or "%{popupname}%" ( due to possible interactions with xLabels !ParseEvars ) is replaced with the "PopupName" (The Bang without "!").
OnShade ACTION
The ACTION is executed, if a TOPLEVEL Popup is shaded.
Inside of the ACTION "%[popupname]% or "%{popupname}%" ( due to possible interactions with xLabels !ParseEvars ) is replaced with the "PopupName" (The Bang without "!").
OnUnShade ACTION
The ACTION is executed, if a TOPLEVEL Popup is unshaded.
Inside of the ACTION "%[popupname]% or "%{popupname}%" ( due to possible interactions with xLabels !ParseEvars ) is replaced with the "PopupName" (The Bang without "!").
The following SoundEvents ("OpenSound" / "CloseSound") are only defined for TopLevel Popups, such you have defined with "!new" - "~new"!
xLabel or xLabel(Light) >= v3.0 must have been loaded!
OpenSound "SoundFile"
Played, if a Main Popup menu has been opened.
CloseSound "SoundFile"
Played, if a Main Popup menu has been closed.
SwitchSound "SoundFile"
Played, if a different Entry has been selected.
ActionSound "SoundFile"
Played after a Action (LeftClick) on an Entry has been performed and the Popup closes.
"Dynamic Evars" are possible in all *Popup definition lines.
What are "Dynamic Evars"?
A dynamic Evar is an Evar, which can change during runtime, without the need to !reload or !recycle Litestep!
Therefore the content of a Popup can react directly on changed settings.
Do i need "Dynamic Evars"?
Probably not, it's a special feature for themers, which want to create "interactive" Theme Popups.
How do i use them?
If you want to use "dynamic evars" you enclose them in "%#" instead of "$"! If they change, the xPopup updates it's content automatically.
You can use as many as you want, in the *Popup line or the complete Popup definition.
You can change evars with xLabel's "!setevar"
Restrictions:
If a real change occurs (and only then), xPopup must rescan all existing subfolders of this Popup.
Pinned (visible) Popups don't update automatically! Hide and Show them!
You cannot make the ".icon=" part "dynamic" only the part after the ".icon="
*popup .icon=%#myicon%# "BlaBla" !action <- This works *popup %#myicon%# "BlaBla" !action <- This works NOT! *popup %#mycontent%# <- If a custom icon is wanted, this works NOT!
Example Popup Defintion:
*Popup "My Dynamic Popup" !new !mydynamicpopup *Popup .icon=%#popupentrycontent%# <- ".icon=" is needed if you want to customize the icon! See Restrictions! *Popup "Dynamic Action" %#actionevar%# <- The Click Action can be change be changing $actionevar$ with !setevar *Popup .icon="%#iconevar%#" "%#captionevar%#" %#actionevar%# *Popup ~new
Just try it out, and if you find a good example add it at http://www.xdocs.ls-universe.info/.
!PopupLoadCFG "*Prefix" "FilePath"
This would create/replace all defined Popups starting with "*Prefix" in the rc-File "FilePath"
Dynamic loading of "*Popup" definitions only if they are really needed, no permanent "include" needed!.
You can also partly load different Popup Definitions then "*Popup" out of the same file.
Loaded lines aren't saved in the internal LS Evar table (Less RAM needed with many Popups).
Changes in a newly (re)loaded Popup update/replace existing Popups (with the same Bang Command)
The following lines are in a file myPopup.rc, which IS NOT "included":
*fruit "TestPopup" !new !testpopup *fruit !info test *fruit "Apple" !apple *fruit "Grape" !grape *fruit ~new *xpopup "TestPopup" !new!testpopup *xpopup !info test *xpopup ~new *vegetable "TestPopup" !new !testpopup *vegetable !info test *vegetable "Carrot" !carrot *vegetable "Peas" !peas *vegetable ~new
Now you can load the PopupCfg for the Popup !testpopup with the following Bangs for "*fruit", "*xpopup" or "*vegetable".
!PopupLoadCFG "*fruit" "$configdir$myPopup.rc" or !PopupLoadCFG "*xpopup" "$configdir$myPopup.rc" or !PopupLoadCFG "*vegetable" "$configdir$myPopup.rc"
Just try it out, and if you find a good example add it at http://www.xdocs.ls-universe.info/.
!PopupFolder:FOLDER
This creates a static subfolder that displays the contents of the specified drive or directory.
The contents of the directory are loaded at startup, and can only be updated by !Recycling LiteStep.
!PopupDynamicFolder:FOLDER
!DynamicFolder:FOLDER
This creates a dynamic subfolder with the contents of the specified drive or directory.
Dynamic folders differ from static folders in that the Popup folder will automatically update when the directory is updated, meaning that a !Recycle is not necessary to see changes.
Note:
You can limit the content for a PopupFolder by using pattern matching.
If the PopupFolder contains another folder, that folder must match your pattern in order to be displayed.
Example:
*Popup "My Documents" !PopupFolder:"C:\My Documents\*.doc" *Popup "My Documents" !PopupDynamicFolder:"C:\My Documents\*.doc"
Multiple directories can be placed in the same PopupFolder by using the pipe character, "|", to separate them.
Subfolders with the same name will be merged as well.
Example:
*Popup "LiteStep" !PopupFolder:"C:\LiteStep"|$ModuleDir$ *Popup "LiteStep" !PopupDynamicFolder:"C:\LiteStep"|$ModuleDir$
Note:
By right-clicking on the folder, or any sub-menu, you can open the context menu for the directory. This is similar to the functionality in the Start Menu of Windows Explorer.
!popupactionfolder:ACTION:FOLDER
This creates a static subfolder that displays the contents of the specified drive or directory.
The contents of the directory are loaded at startup, and can only be updated by !Recycling LiteStep.
OnClick the ACTION is executed with the FILEPATH as an argument!!
Restriction:
SubFolders are not visible!!
!popupdynamicactionfolder:ACTION:FOLDER
This creates a dynamic subfolder that displays the contents of the specified drive or directory.
Dynamic folders differ from static folders in that the Popup folder will automatically update when the directory is updated, meaning that a !Recycle is not necessary to see changes.
OnClick the ACTION is executed with the FILEPATH as an argument!!
Restriction:
SubFolders are not visible!!
Example:
*popup "MyActionFolder" !popupactionfolder:!alert:"$desktopdir$"
This would display your Desktop in a folder, but if you click an entry the "action" (!alert) is executed
with the filepath as quoted argument. You can (probably) use any action, not only Litestep Bangs!
This is a feature for theme scripting with *.rc files or maybe for Copy/Move (File actions which need the filepath.)
Just try it out, and if you find a good example add it at http://www.xdocs.ls-universe.info/.
(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 xPopup has not yet added them, causing LS 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!
$mypopupcurrentwidth$ becomes %#mypopupcurrentwidth%# and so on ...
Only TopLevel Popups export now their Current Position and Size. If the Popup is called with !MyPopup then it's current Position and Size is exported with the Prefix "MyPopup".
$(popupname)CurrentX$
The current horizontal position of the Popup.
$(popupname)CurrentY$
The current vertical position of the Popup.
$(popupname)CurrentWidth$
The current width of the Popup.
$(popupname)CurrentHeight$
The current height of the Popup.
ShellFolders work as in Popup2, as there are:
!PopupControlPanel
!PopupMyComputer
!PopupNetwork
!PopupPrinters
!PopupRecentDocuments
!PopupRecycleBin
TaskFolders work as in Popup2, with additional Application ContextMenu on RightClick:
!PopupTasks
You can use and display all Info, which "xLabel(Light)" can display inside of a Popup Entry (Painted on Popup BG or on InfoBG, if specified). Just load xLabel(Light) and use the following "special" Syntax.
*Popup !info "xLabel(Light) Text Escape Sequence"
Example:
To create a clock like with !datetime, make this entry
*Popup !info "[time('hh:nn:ss')]"
You can setup a EntryTexture with the "Info" Prefix like the other Entry Image Settings.
xPopupInfoImage info.png xPopupInfoTrueTransparent ...
You can setup the Font with the "Info" Prefix like the other Fontsettings.
xPopupInfoFontHeight 20 xPopupInfoFontColor ff0000 ...
You can hook every Module into your PopupMenu, but due to the circumstances the CFG is not as easy as above :P
*Popup !hook:LeftBorder:RightBorder:ModuleWidth:ModuleHeight !Modulebang (Userdata_1 ...) %%BANG TO MOVE MODULE%%
Ok, that was hard, now the explanation:
LeftBorder: The number of Pixels from the LeftSide of the Popup, at which the Hooked Module should start.
RightBorder: The number of Pixels from the RightSide of the Popup, till the Hooked Module should end.
ModuleWidth: The Width of the Hooked Module.
ModuleHeight: The Height of the Hooked Module.
!Modulebang Userdata1 (... UserdataN): Same as with every Hooking Process (e.g. !labellsboxhook testlabel)
Now, the tricky point:
For the correct positioning (y-Coordinate) xpopup must know with which Bang it can move the Module! So, if there's such a Bang available just specify it here. Otherwise YOU must calculate the correct y-Coordinate in the module Settings!
%%!commandmove%%,for instance. It's important that you make the DOUBLE %% before and after %% the MoveBang!
If you set "!hook:0:0:0:0 !Modulebang Userdata1 (... UserdataN)" --> WITH 4 TIMES 0, the module will only be hooked and you can Size and Position it MANUALLY where you want it in the PopupMenu! It won't be condidered as an Entry that needs Place.
*Popup "Caption/Title" !new !popupBANG "Syntax prefix to use" *Popup "Caption/Title" !Popupfolder:$Litestepdir$ *Popup ~new
You can also use !PopupTasks or the ShellFolders this way!
Or, with the following Bang:
!PopupDynamicFolder "Full Path" [x] [y] ["anchor"]
Explanation see Bangs!
Or, you use this special Feature of xPopup:
!insertfolder as Extra Setup Feature
The Folder(s) Content is inserted directly at(after) this Line, NOT in a SubFolder! Piping and Wildcards are allowed.
Example:
*Popup !insertfolder:"$startmenu$"
This would add the complete $startmenu$ at(after) this line.
To create a new Column in a PopupMenu use
*Popup Menubreak
After that entry the PopupMenu starts a new Column at the Top!
Or use the automatic method
xPopupAutoMenubreak
Which automatically makes new Columns, if required, instead of the MultiPart implementation.
Custom Item Sorting via User Modified Filenames
You can add [xx] before the Filename to enable sorting based on the 2-digit number (xx), the "[xx]" before the Filename won't be displayed.
These Files will be displayed first sorted with growing numbers.
[00]IrfanView.lnk -> IrfanView.lnk [02]ZOrdertest.lnk -> ZOrdertest.lnk [20]AdAware.lnk -> AdAware.lnk Another.lnk BasicFiles.lnk ...
You can set (or remove) Custom Icons for every Defined PopupEntry.
*Popup .icon="..." "MyEntry" "Action"
Defines the custom icon. Supports plain .ico files and extraction:
c:\win2k\explorer.exe
c:\win2k\explorer.exe,2
Supports ".none".
Supports generic icon file associations. Syntax: *.extension
To Toggle Shaded Popups, simply RightClick on the Title/Caption(/TopBorder). The ShadedMode only consists of the Title(TopBorder) of the Popup and the BottomBorder, simply all Entrys are removed.
This would be the best for Pinned Popups, but it works for normal Popups or SubPopups the same.
Shaded Popups stay shaded, till you "unshade" them!
To make a PopupMenu stay on the Desktop from start, just do this.
*xPopupStartPinned !(PopupBang) x y ["anchor"]
x and y are the Position value and support standard positioning syntax as '-', '~' or 'c'.
Accepts now optional "AnchorPoint", where "anchor" can be:
topleft DEFAULT
topcenter
topright
centerleft
centercenter
centerright
bottomleft
bottomcenter
bottomright
To Separate a PopupMenu and make it stay on the Desktop, just Press CTRL+SHIFT and Press Down-Arrow or, if it's a SubFolder, simply Drag it away from the Parent.
To Kill it: Hover over the Popup and press CTRL+SHIFT and Up-Arrow or make a LeftDoubleClick on the Popup BG (on the TopBorder or BottomBorder!).
You can navigate through the PopupMenus with the Keyboard. Simply use UP, DOWN, LEFT and RIGHT ArrowKeys to switch between Entry's and use RETURN to execute or ESCAPE to Close.
As alternative xPopup supports & "Ampersand" in Captions to define a "JumpKey" -> jumps to this entry if this key is pressed. If none is defined or you're navigating through SubMenus the first entry which Caption starts with that Key is selected.
If you have a Mouse with Additional MouseButtons, the 4th should work as the LEFT Key pressed and the 5th as the RIGHT Key pressed (or maybe vice versa) :)
If you quickly press another Key after the first, the first both Keys matching Entry will be selected. So, of you have many Entrys with "A" and you want "Animation", simply press "A" and then quick "N".
Pressing F5 updates the Popup, if the automatic Update on subfolders doesn't work or if you want to update the RootPopup (for people who use !insertfolder).
You can scroll Up and Down through the Entry's either with your MouseWheel or by Pressing the MiddleButton or Keyboard (see above).
To "Scroll/Switch" between Complete Part use "PageUp" and PageDown" Keys or Press CTRL during MouseWheel Scroll.
To open a SubFolder after Scrolling through the Entrys simply perform a LeftClick on the current Folder!
If you have set MaxHeight or the PopupMenu doesn't fit on the whole screen it will be divided in visible Parts. You can access "hidden" parts by scrolling with Keyboard (PageUp, PageDown, Up, Down), MouseWheel or MiddleClick Up or Down till the last visible Entry, after that the next part will be displayed in the PopupMenu.
Please report bugs, if there should be any, to:
andymon@ls-universe.info
Btw.: I'm native German, so everyone who's also German mustn't write me in English ;)
Homepage:
Here you find News, Updates, and some more.
http://www.ls-universe.info/