Contents |
nDesk
<wiki:toc max_depth="2" />
Introduction
nDesk is a desktop module for LiteStep. It creates the desktop background window, renders the wallpaper, and sets the workarea.
Loading The Module
To load nDesk you need to add a `LoadModule` line pointing to nDesk in your configuration, like this:
LoadModule "$ModulesDir$nDesk-0.5.dll"
Or, if you are using NetLoadModule:
- NetLoadModule nDesk-0.5
Make sure to load nDesk _after_ nCore since nDesk needs the library functions nCore provides.
Configuring the Workarea
The workarea of a monitor is the area that a maximized window will occupy on that monitor. With nDesk, you configure the workarea by specifying margins from the edges of a the monitor.
`*nDeskWorkArea / !nDeskWorkArea`
Specifies the work area of a particular monitor.
- nDeskWorkArea monitor left top right bottom
!nDeskWorkArea monitor left top right bottom
|| *Parameter* || *Type* || *Description* || || monitor || Monitor || The monitor this workarea should be applied to, or _All_ in order to apply the workarea to every monitor. || || left || [Integer] || The left margin of the workarea. || || top || [Integer] || The top margin of the workarea. || || right || [Integer] || The right margin of the workarea. || || bottom || [Integer] || The bottom margin of the workarea. ||
By default, each monitor is completely covered by its workarea.
- Sample*
- Leave a 30 pixel gap at the bottom of the primary monitor, for a taskbar or other widget
- nDeskWorkArea primary 0 0 0 30
- Left a 100 pixel gap to the left of the secondary monitor, for some widget
- nDeskWorkArea secondary 100 0 0 0
Transition Effects
When the wallpaper changes, nDesk will paint a composite of the old wallpaper and the new wallpaper for a period of time.
`nDeskTransitionEffect`
Specifies how to transition from the old wallpaper to the new wallpaper.
nDeskTransitionEffect effect
!nDeskSetTransitionEffect effect
- Default value:* FadeOut.
|| *Parameter* || *Type* || *Description* || || Effect || TransitionEffect || The type of transition effect to use. ||
`nDeskTransitionDuration`
Specifies how long a transition should take.
- Format:* nDeskTransitionDuration _Duration_
- Corresponding bang:* !nDeskSetTransitionDuration _Duration_
- Default value:* 625
|| *Parameter* || *Type* || *Description* || || Duration || Time || How long, in milliseconds, the transition should take. ||
`nDeskTransitionSquareSize`
Specifies the size of the squares during square-based transitions.
- Format:* nDeskTransitionSquareSize _SquareSize_
- Corresponding bang:* !nDeskSetTransitionSquareSize _SquareSize_
- Default value:* 150
|| *Parameter* || *Type* || *Description* || || SquareSize || [Integer] || The size, in pixels, of squares used during square-style transitions. ||
`nDeskInvalidateAllOnUpdate`
Forces every window to update while the wallpaper is changing. Fixes problems with certain transparent modules (such as the xModules) which would otherwise continue painting the old wallpaper. May cause a slight performance hit.
- Format:* nDeskInvalidateAllOnUpdate _InvalidateAllOnUpdate_
- Corresponding bang:* !nDeskInvalidateAllOnUpdate _InvalidateAllOnUpdate_
- Default value:* False
|| *Parameter* || *Type* || *Description* || || !InvalidateAllOnUpdate|| Boolean || True/False ||
`nDeskOnResolutionChange`
Specifies a bang command to execute when the resolution of a monitor changes.
- Format:* nDeskOnResolutionChange _Command_
- Default value:* ""
|| *Parameter* || *Type* || *Description* || || Command|| Action || The command that will be executed on resolution changes. ||
Click Events
nDesk is able to fire actions on different kinds of input events.
`*nDeskOn`
Fires an action when the specified conditions are met.
- Formats:* `*`nDeskOn _Type_ _Mods_ _Action_
`*`nDeskOn _Type_ _Mods_ _Left_ _Top_ _Right_ _Bottom_ _Action_
- Corresponding bangs:* !nDeskOn _Type_ _Mods_ _Action_
!nDeskOn _Type_ _Mods_ _Left_ _Top_ _Right_ _Bottom_ _Action_
|| *Parameter* || *Type* || *Description* ||
|| Type || MouseEvent || The type of the event. ||
|| Mods || ModifierKeys || The modifier keys that need to be pressed in order for this event to trigger. ||
|| Left
Top
Right
bottom || [Integer] || If all coordinates are given, the event will only trigger when it's contained within the rectangle specified by the coordinates. ||
|| Action || Action || The command to execute when this event occurs. ||
- Sample:*
- Executes !Popup when right-clicking on the desktop.
- nDeskOn RightClickUp none !PopUp
- Execute !PopupTheme when right-clicking on the desktop while holding ctrl and shift.
- nDeskOn RightClickUp ctrl+shift !PopupTheme
`!nDeskOff`
Removes any events matching the specified conditions.
- Formats:* !nDeskOff _Type_ _Mods_
!nDeskOff _Type_ _Mods_ _Left_ _Top_ _Right_ _Bottom_
|| *Parameter* || *Type* || *Description* ||
|| Type || MouseEvent || The type of of the event to remove. ||
|| Mods || ModifierKeys || The modifier keys of the event to remove. ||
|| Left
Top
Right
bottom || [Integer] || If all coordinates are given, only events contained within the specified rectangle will be removed. ||