Functions(1)             AfterStep X11 window manager             Functions(1)



NAME
       Functions - built in AfterStep functions




CONFIGURATION OPTIONS
       Background "name" filename

              Change Background image to specified file

              Copies image file specified by filename into user's
              non-configurable directory. Depending on Background
              configuration in look file, this may not have any effect.



       BackgroundForeign "name" filename

              Change Background image to specified file

              Works same as Background but generates minipixmap from the image
              automagically. Also tries to determine if background should be
              fullscreen and crops/scales it to the proper size.



       Beep

              Make the window manager issue a beep - pretty useful eh? :)



       BookmarkWindow "name" new_bookmark

              Places a bookmark on the selected window, to be used later on to
              get back to that window.



       Category" category-name "

              Generate a menu from all the members belonging to specified
              desktop category. For example Category "Modules", generate a
              menu of all AfterStep modules in
              afterstep/applications/modules.desktop



       CategoryTree

              FIXME: add proper description here.



       ChangeColorscheme "name" filename

              Change Color Scheme to specified file

              Copies color scheme configuration file specified by filename
              into user's non-configurable directory.



       ChangeFeel "name" filename

              Change Feel to specified file

              Copies feel configuration file specified by filename into user's
              non-configurable directory.



       ChangeLook "name" filename

              Change Look to specified file

              Copies Look configuration file specified by filename into user's
              non-configurable directory, to be used by AfterStep.



       ChangeTheme "name" file_name

              Sets current theme config file. Such config file may include
              settings for look, feel, menu, autoexec and any module.



       ChangeThemeFile

              Installs a theme from a provided .tar, .tar.gz, or .tar.bz2
              AfterStep theme file.



       ChangeWindowDown [ "name" window_name ]

              Causes the pointer to move to the previous window in the list of
              windows for which CirculateSkip has not not been specified.

              The mouse will jump (going backwards) to the first window whose
              name (or icon name or class) matches window_name . The "name"
              entry then becomes required, but serves no purpose if the
              function is not called from a menu or popup.



       ChangeWindowUp [ "name" window_name ]

              Causes the pointer to move to the previous window in the list of
              windows for which CirculateSkip has not not been specified.

              The mouse will jump to the first window whose name (or icon name
              or class) matches window_name . The "name" entry then becomes
              required, but serves no purpose if the function is not called
              from a menu or popup.



       Close [ "name" ]

              First sends the WM_DELETE message, if this is not understood,
              then the XKillClient(3) is sent to the window.



       CursorMove horizontal vertical

              Moves the mouse pointer by horizontal views in the x-direction,
              and vertical views in the y-direction. Either or both entries
              may be negative. Both horizontal and vertical values are
              expressed in percent of pages, so 100 would be one full view.

              The CursorMove function should not be called from pop-up menus.



       Delete [ "name" ]

              Sends a WM_DELETE message to a window asking that it remove
              itself, frequently causing the application to exit.



       Desk arg1 [ arg2 ]

              Changes current desk to another desk as surmised from the
              arguments supplied. If only arg1 is specified and is non-zero,
              then the current desk will become "desk + arg1" and arg2 is
              ignored. If arg1 is zero, then arg2 must be specified or no desk
              change will occur; and arg2 will specify the desk to switch to.
              Desk numbers are determined dynamically and must be between
              2147483647 and -2147483648; meaning they can also be negative.



       DesktopEntry

              FIXME: add proper description here.



       Destroy [ "name" ]

              Sends the XKillClient(3) to a window. Guaranteed to get rid of
              the window.



       EndFunction

              Terminates a Complex Function definition.



       EndPopup

              Terminates a Popup definition.



       Exec "name"  command [-options]

              Specifies a sub process to initiate. The "name" is required for
              ease of parsing. The command is the command or application to be
              invoked along with any desired-options.



       ExecBrowser "name" URL

              Open URL in web browser.



       ExecEditor "name" filename

              Open file in text editor.




       ExecInTerm "name"  command [-options]

              Specifies a sub process to initiate. It is similar to Exec ,
              though targeted at programs that need a terminal to run. The
              following terminal emulators are tried in order: aterm, rxvt,
              eterm, xterm.



       Focus

              Moves the view or window as needed to make the selected window
              visible. Sets the keyboard focus to the selected window. Raises
              the window if needed to make it visible. Warps the pointer into
              the selected window in focus-follows-mouse mode. Does not
              de-iconify. This function is primarily handy when used with a
              module such as the WinList.



       Folder " folder-name "

              Defines a slide-out folder inside the current folder. The
              following button definitions will be placed inside of the
              subfolder, until a *Wharf ~Folder line is encountered. See the
              EXAMPLES section below for an example. Folders may be nested.

              This is a Wharf specific Function.



       Fullscreen

              Toggle window Fullscreen state. Will disregard any AvoidCover
              windows and will try to make window as big as the screen unless
              it's hints set certain limitation on size. Window in Fullscreen
              mode cannot be Maximized.



       Function "function_name"

              There are also two situations where this might occur as well; as
              a function definition stanza, or in calling a previously defined
              function decleration.

              Function  "function_name"     built-in_file  "action"  [
              argument ] EndFunction
              Specifies the definition of a complex function "function_name" ,
              which can later be bound to a mouse button or key using
              "function_name" to recall this declaration. built-in_command
              specifies which command will be performed, taking its syntax
              from this list of Built-In Commands/Functions. "action"
              specifies the action to take followed by any additional
              arguments needed by the built-in_command . Menus can be
              specified by using the Popup command, as long as the menu was
              defined earlier in the configuration file.

              The trigger actions which are recognized are Immediate (can be
              shortened to "I"), Motion, Click, DoubleClick and TripleClick.
              Immediate actions are executed as soon as the function is
              activated, even if a window has not been selected. If there are
              actions other than immediate ones, afterstep will wait to see if
              the user is clicking, double-clicking, triple-clicking or
              dragging the mouse; then will execute only the built-ins from
              the function definition whose trigger action matches the action
              performed by the user. The clicking, double-clicking and
              triple-clicking concepts do not carry through to using keyboard
              shortcuts.

              Two special functions exist: InitFunction and RestartFunction.
              The InitFunction will be called when afterstep is started for
              the first time in any X session, and can be used to start
              modules and begin programs. The RestartFunction will be called
              when afterstep is restarted. It can be used to re-start modules
              but probably should not be used to start programs. These two
              functions are defined in the autoexec file.

              When calling a previously defined Function or a Function from a
              key-stroke combination, Function is simply used as a built-in
              command using the previously defined "action" from the same
              function_name .

              Function  built-in_command  "action"  function_name
              Refer to the feel.name files and below in EXAMPLES for examples.



       GetHelp

              Runs afterstepdoc script, that attempts to guess which web
              browser is available on the system, and then launches it to
              display HTML documentation for AfterStep.



       GoToBookmark ["name" window_bookmark ]

              Focuses window specified by previously placed window_bookmark.



       GotoDeskViewport Desk+Vx+Vy

              Changes both current desk and viewport.



       GotoPage x y

              Moves the desktop view to page x y . The upper left page is
              (0,0), the upper right is (N,0), where N is one less than the
              current number of horizontal pages specified in the DeskTopSize
              command detailed in the Pager(1) man page. The lower left page
              is (0,M), and the lower right page is (N,M), where M is the
              desktop's vertical size as specified in the DeskTopSize command.

              The GotoPage function should not be used in a pop-up menu.




       Iconify [ "name" ] [ value ]

              Iconifies a window if it is not already iconified, or
              de-iconifies it if it is already iconified. If the optional
              argument value is positive, then only iconification will be
              allowed, and de-iconification will be inhibited. If the optional
              argument is negative, only de-iconification will be allowed.



       InstallBackground "name" filename

              Copies specified file to ~/.afterstep/backgrounds/ directory, so
              that it will show up in the menu, to be used for Root
              background.



       InstallColorscheme "name" filename

              Copies specified file to ~/.afterstep/colorschemes/ directory,
              so that it will show up in the menu, to be used as color scheme.



       InstallFeel "name" filename

              Copies specified file to ~/.afterstep/feels/ directory, so that
              it will show up in the menu.



       InstallFont "name" filename

              Copies specified TTF file to ~/.afterstep/desktop/fonts/
              directory, so that it could be used in look configuration.



       InstallIcon "name" filename

              Copies specified image file to ~/.afterstep/desktop/icons/
              directory, so that it could be used in look and database
              configuration.



       InstallLook "name" filename

              Copies specified look file to ~/.afterstep/looks/ directory, so
              that it could be selected from the menu.



       InstallThemeFile "name" filename

              Copies specified theme file to ~/.afterstep/themes/ directory,
              so that it could be selected from the menu.



       InstallTile "name" filename

              Copies specified image file to ~/.afterstep/desktop/tiles/
              directory, so that it could be used in look and database
              configuration.



       KIPCsendMessageAll

              Sends a signal to all KDE applications, refreshing their visual
              properties.



       KillAllModulesByName

              Kills AfterStep modules with a provided matching name.



       KillModuleByName "name" modulename

              Kill module with specified name.



       LargeMiniPixmap pixmap

              Specifies a given pixmap to display to the left of the menu item
              which invokes this menu, or in the title of this menu. Used in
              menu entries instead of MiniPixmap when it is not desired to
              scale-down a pixmap image. Pixmap images are full-size. Opposite
              is SmallMiniPixmap.

              See Also: MiniPixmap, SmallMiniPixmap, MenuMiniPixmaps.




       Lower [ "name" ]

              Allows the user to lower a window.



       MaxSwallow " window-name " command

              Like Swallow , except the button will be resized to fit the
              application.

              This is a Wharf specific Function.



       MaxSwallowModule " window-name " command

              Like MaxSwallow , except the command is an AfterStep module.

              This is a Wharf specific Function.



       Maximize [ "name" ] [ horizontal vertical ]

              Causes the window to alternately switch from a full-screen size
              to its normal size. Specifying the optional arguments of
              horizontal and vertical , control can be attained as to the
              percentage of the full screen that the new size of the window
              becomes. If horizontal > 0, then the horizontal dimension of the
              window will be set to horizontal*screen_width/100. The vertical
              resizing is similar. Values larger than 100 can be used with
              caution. The defaults for horizontal and vertical are 100s (ie,
              fullscreen).



       MiniPixmap pixmap

              Specifies a given pixmap to display to the left of the menu item
              which invokes this menu, or in the title of this menu. Default
              pixmap size is 24x24 pixels; this size can be adjusted in Look
              via MiniPixmapSize.

              See Also: MinipixmapSize, LargeMiniPixmap, SmallMiniPixmap,
              MenuMiniPixmaps.



       Module ModuleName [ arguments ]

              Specifies that ModuleName should be spawned.

              Currently, many modules are included with afterstep . Wharf(1x)
              and Pager(1x) are two of the more popular ones. Wharf will
              normally be spawned during initialization instead of in response
              to a mouse binding or menu action. Modules can be short lived
              transient programs, or, like Wharf, can be intended to remain
              for the duration of the X session. Modules will be terminated by
              afterstep prior to restarts and quits, if possible.



       Move [ "name" ]

              Allows the user to move a window or iconified app.



       Nop ""

              Inserts a horizontal line (<HR> type html line) in a menu entry
              list.


       Nop "name"

              Inserts a name in the menu, stippled (disabled and grayed-out).



       PasteSelection

              This function allows for substitute of X clipboard copy-pasting
              if application is missing it.



       PinMenu ["name"]

              Pins menu on desktop.



       PopUp "popup_name"

              There are two situations where this might occur; as a popup menu
              stanza definition, or in calling a previously defined menu
              declaration.

                  Popup  "popup_name"     built-in_command   "name"  [
              argument ]
                  EndPopup

              Specfies the definition of a complex menu popup "popup_name" ,
              which can be bound to a mouse button or key using "popup_name"
              to recall this declaration. built-in_command specifies which
              command will be performed, utilizing it's syntax from this list
              of Built-In Commands/Functions. "name" specifies the name which
              will appear within the menu for the given item, and additionally
              any arguments needed by the built-in_command . The Popup
              definition ends with the keyword EndPopup. Sub-menus can be
              created by calling the Popup built-in within another Popup
              declaration, as long as that sub-menu was defined earlier in the
              configuration file.

              Shortcut keys may be specified in the menu definition by
              preceding a character with an ampersand. The ampersand will not
              be displayed, but the character after it will be displayed at
              the right side of the same entry. and if the user presses the
              corresponding key, then that item will be activated as if it had
              been clicked upon. Only alphanumeric characters may be used as
              shortcut keys. The shift state of the keyboard is ignored when
              testing shortcut characters.  Shortcut keys are not operative
              unless MENU_HOTKEYS was defined when building AfterStep. If
              WINDOWLIST_HOTKETS was also defined, then hot keys are
              automatically added to the WindowList when it is displayed.
              When calling a previously defined menu or a menu from a
              key-stroke combination, Popup is simply used as a built-in
              command with the "name" referring to the previously defined
              Popup definitions name.

              Popups can be bound to keys through the use of the key modifier.
              Popups can be operated without using the mouse by binding to
              keys, and operating via the up arrow, down arrow, and enter
              keys. Refer to the feel.name files and below in EXAMPLES for
              examples.




       PutOnBack

              Moves the target window to the bottom of its layer, or down one
              layer if it is already at the bottom.



       PutOnTop

              Moves the target window to the top of its layer, or up one layer
              if it is already at the top.



       QuickRestart look|feel|look+feel

              Causes AfterStep to reload specified config.



       Quit [ "name" ]

              Exits afterstep , generally causing X to exit too.




       Raise [ "name" ]

              Allows the user to raise a window.



       RaiseLower [ "name" ]

              Alternately raises and lowers a window; i.e. if it's raised, the
              window will lower, and vice versa.



       Refresh [ "name" ]

              Causes all windows on the screen to re-draw themselves.




       Resize [ "name" ]

              Allows the user to resize a window.



       Restart "name"  WindowManagerName

              Restarts X(1) with the given WindowManagerName . If
              WindowManagerName is afterstep , then this forces afterstep to
              reread all of its configuration files and reinitiate the
              session. If WindowManagerName is not in the default search path,
              then the full path name should be given.



       RestartModuleByName

              Restarts AfterStep modules with a provided matching name.



       RestartModuleList

              Restarts all AfterStep modules.



       SET_FLAGS

              Do not use. Reserved for use by AfterStep modules to set
              communication flags - identifying which messages module wishes
              to receive.



       SET_MASK

              Do not use. Reserved for use by AfterStep modules.



       SET_NAME

              Do not use. Reserved for use by AfterStep modules to identify
              themselves to AfterStep.



       SaveWorkspace "name" file_name

              Write list of presently running applications with its position
              and desktop number into specified file. You can run this file at
              a later time as a shell script to restore state of the desktop.
              Note this does not work for many applications that does not
              provide needed ICCCM properties on its windows.



       Scroll horizontal vertical

              Scrolls the desktop's view by horizontal pages in the
              x-direction, and vertical pages in the y-direction. Either or
              both entries may be negative. Both horizontal and vertical
              values are expressed in percent of pages, so 100 would be one
              full page. Normally, scrolling stops at the edge of the desktop.
              If the horizontal and vertical values are multiplied by 1000,
              then scrolling will wrap around at the edge of the desktop.

              The scroll function should not be called from pop-up menus.



       Send_WindowList

              This Function is used by modules to obtain list of open windows.



       Set

              FIXME: add proper description here.



       SetLayer layer

              Moves the target window to layer layer .



       Shade [ "name" ]

              Emulates the MacOS WindowShade feature. Once activated the
              window will become a titlebar only.



       SignalReloadGTKRCFile

              Forces all GTK apps to reload the gtkrc files.



       Size width  height

              Sets the size of the associated button, overriding any other
              size consideration.

              The Wharf button size depends on several things. The order of
              precedence is:

              1) Size definition 2) MaxSwallow'd window size 3)  WharfPixmap
              size 4) Use 64x64.
              This is a Wharf specific Function.



       SmallMiniPixmap pixmap

              Specifies a given pixmap to display to the left of the menu item
              which invokes this menu, or in the title of this menu. Used in
              menu entries instead of MiniPixmap; scales-down pixmap images to
              the smallest size. It is sized based-on the Menu font size plus
              eight pixels; width is calculated to keep proportionality.

              See Also: MiniPixmap, LargeMiniPixmap, MenuMiniPixmaps.



       Stick [ "name" ]

              Makes a window sticky (stays on screen when desks/views are
              switched) if it is not already sticky, or non-sticky if it is
              already sticky.



       StopModuleList

              Stops all AfterStep modules.




       Swallow " window-name " command

              Causes Wharf to run command , capture the first window whose
              name or resource is window-name , and display it in the
              associated button. The application window will be shrunk to fit
              the size of the button.

              This is a Wharf specific Function.



       SwallowModule " window-name " command

              Like Swallow , except the command is an AfterStep module.

              This is a Wharf specific Function.



       SwallowWindow "pattern" shell_command

              will cause already opened window to be swallowed, while just
              Swallow will run application, if there are no windows matching
              pattern




       TakeFrameShot "name" filename

              Grabs screenshot of the client window including frame
              decorations and save it in specifyed files.



       TakeScreenShot "name" filename

              Grabs screenshot of the entire screen and save it in specifyed
              files.



       TakeWindowShot "name" filename

              Grabs screenshot of the client window excluding frame
              decorations and save it in specifyed files.



       Test

              Do not use. Internal function.



       Title "name"

              Insert a title line of heading name into a popup or menu.



       ToggleLayer layer1  layer2

              Specifies that if the window is in layer1 , it should be placed
              in layer2 . Otherwise, it is placed in layer1 . In either case,
              the window will be placed on top of other windows in the target
              layer.



       TogglePage [ "name" ]

              Temporarily disables EdgeScroll . Edge scrolling can be
              re-enabled by calling this again.



       Transient

              Specifies that this button will not perform any action, will not
              be pushable, and will not have an associated balloon.





       UNLOCK

              Do not use. Internal function.



       Wait app_name

              This is intended to be used in afterstep functions only. It
              causes execution of a function to pause until a new window named
              app_name appears. afterstep remains fully functional during a
              wait. This is particularly useful in the InitFunction and
              RestartFunction, if you are trying to start windows on specific
              desktops.



       WarpBack [ "name" window_name ]

              Same as ChangeWindowDown , but uniconifies any iconified windows
              as it focuses on them.



       WarpFore [ "name" window_name ]

              Same as ChangeWindowUp , but uniconifies any iconified windows
              as it focuses on them.



       WindowList [ arg1 arg2 ]

              Specifies the internal popup menu in which the titles of each
              open application are displayed, should be popped up. Selecting
              an item from the list will cause the current desk to switch to
              the application's desk, and will raise it if it's behind other
              windows. If the application is currently iconified, then it will
              be de-iconified normally.

              Generally, if arg1 is an even number, then the windows will be
              listed using the window name (the name that shows up in the
              title-bar); if arg1 is an odd number, then the window's icon
              name is used.

              Specifically, if arg1 is 0, 1 or 2, then all windows on all
              desks will be shown. If arg1 is 2 or 3, then only windows on the
              current desk will be shown. If arg1 is 4 or 5, then only windows
              on the desk number specified with arg2 , will be shown. Windows
              which have WindowListSkip specified in their style will not be
              listed in the window list.



       WindowsDesk new_desk [10000]

              Moves the selected window to the desktop specified as new_desk .
              If second argument is set to 10000 then first is treated as
              relative desktop number.







3rd Berkeley Distribution     AfterStep v.2.2.12                  Functions(1)
