/*
 * Root Menu definition for WindowMaker
 *
 * Syntax is:
 *
 * <Title> [SHORTCUT <Shortcut>] <Command> <Parameters>
 *
 * <Title> is any string to be used as title. Must be enclosed with " if it
 *         has spaces
 * 
 * SHORTCUT specifies a shortcut for that item. <Shortcut> has the
 * same syntax of the shortcuts key options in the 
 * $HOME/GNUstep/Defaults/WindowMaker file, such as RootMenuKey or MiniaturizeKey.
 *
 * You can't specify a shortcut for a MENU or OPEN_MENU entry.
 * 
 * <Command> one of the valid commands: 
 *        MENU - starts (sub)menu definition
 *        END  - end (sub)menu definition
 *        OPEN_MENU - opens a menu from a file, pipe or directory(ies) contents
 *                    and eventually precede each with a command.
 *        WORKSPACE_MENU - adds a submenu for workspace operations. Only one
 *                    workspace_menu is allowed.                 
 *        EXEC <program> - executes an external program
 *        SHEXEC <command> - executes a shell command (like gimp > /dev/null)
 *        EXIT - exits the window manager
 *        RESTART [<window manager>] - restarts WindowMaker or start another
 *                        window manager
 *        REFRESH - refreshes the desktop
 *        ARRANGE_ICONS - rearranges the icons on the workspace
 *        SHUTDOWN - kills all clients (and close the X window session)
 *        SHOW_ALL - unhides all windows on workspace
 *        HIDE_OTHERS - hides all windows on the workspace, except the
 *                focused one (or the last one that received focus)
 *        SAVE_SESSION - saves the current state of the desktop, which include
 *                       all running applications, all their hints (geometry,
 *                       position on screen, workspace they live on, the dock
 *                       or clip from where they were launched, and
 *                       if minimized, shaded or hidden. Also saves the current
 *                       workspace the user is on. All will be restored on every
 *                       start of windowmaker until another SAVE_SESSION or
 *                       CLEAR_SESSION is used. If SaveSessionOnExit = Yes; in
 *                       WindowMaker domain file, then saving is automatically
 *                       done on every windowmaker exit, overwriting any
 *                       SAVE_SESSION or CLEAR_SESSION (see below).
 *        CLEAR_SESSION - clears any previous saved session. This will not have
 *                       any effect if SaveSessionOnExit is True.
 *        INFO - shows the Info Panel
 *
 * OPEN_MENU syntax:
 *   1. File menu handling.
 *        // opens file.menu which must contain a valid menu file and inserts
 *        // it in current position
 *        OPEN_MENU file.menu
 *   2. Pipe menu handling.
 *        // opens command and uses it's stdout to construct menu.
 *        // Command's output must be a valid menu description.
 *        // The space between '|' and command itself is optional.
 *        OPEN_MENU | command
 *   3. Directory handling.
 *        // Opens one or more directories and construct a menu with all
 *        // the subdirectories and executable files in them sorted
 *        // alphabetically.
 *        OPEN_MENU /some/dir [/some/other/dir ...]
 *   4. Directory handling with command.
 *        // Opens one or more directories and construct menu with all
 *        // subdirectories and readable files in them sorted alphabetically,
 *        // preceding each of them with command.
 *        OPEN_MENU [options] /some/dir [/some/other/dir ...] WITH command -options
 *                Options:
 *                         -noext         strip whatever is after the last dot in the
 *                                file name
 *
 * <Parameters> is the program to execute.
 *
 * ** Options for command line in EXEC:
 * %s - substitute with current selection
 * %a(title[,prompt]) - opens a input box with the specified title and the
 *                        optional prompt        and do substitution with what you typed
 * %w - substitute with XID for the current focused window
 * %W - substitute with the number of the current workspace
 * 
 * You can override special characters (as % and ") with the \ character:
 * ex: xterm -T "\"Hello World\""
 *
 * You can also use character escapes, like \n
 *
 * Each MENU statement must have one mathching END statement at the end.
 *
 * Example:
 *
 * "Test" MENU
 *        "XTerm" EXEC xterm
 *                // creates a submenu with the contents of /usr/openwin/bin
 *        "XView apps" OPEN_MENU "/usr/openwin/bin"
 *                // some X11 apps in different directories
 *        "X11 apps" OPEN_MENU /usr/X11/bin $HOME/bin/X11
 *                // set some background images
 *        "Background" OPEN_MENU -noext $HOME/images /usr/share/images WITH wmsetbg -u -t
 *                // inserts the style.menu in this entry
 *        "Style" OPEN_MENU style.menu
 * "Test" END
 */

#include "wmmacros"

"Applications" MENU
        "My" OPEN_MENU loki.menu
        "Info" MENU
                "Info Panel" INFO_PANEL
                "Legal" LEGAL_PANEL
                "System Load" SHEXEC xosview || xload
                "Process List" EXEC xterm -e top
                "Manual Browser" EXEC xman
        "Info" END
        "Rus KB" EXEC xrus
        "Run..." SHEXEC %a(Run,Type command to run:)
        "XTerm" EXEC xterm -sb 
        "Rxvt" EXEC rxvt -bg black -fg white -fn fixed
        "Workspaces" WORKSPACE_MENU
        "Applications" MENU
                "Graphics" MENU
                        "Gimp" SHEXEC gimp >/dev/null
                        "XPaint" EXEC xpaint
                "Graphics" END
                "Netscape" EXEC netscape 
                  "Ghostview" EXEC ghostview %a(GhostView,Enter file to view)
                "Acrobat" EXEC /usr/local/Acrobat3/bin/acroread %a(Acrobat,Enter PDF to view)
        "Applications" END
        "Editors" MENU
                "Xedit" EXEC xedit
                "VI" EXEC xterm -e vi
        "Editors" END
        "Miscellaneous" MENU
                "Xplaycd" EXEC xplaycd
                "Xmixer" EXEC xmixer
        "Miscellaneous" END
        "Utils" MENU
                "Calculator" EXEC xcalc
                "Window Properties" SHEXEC xprop | xmessage -center -title 'xprop' -file -
                "Font Chooser" EXEC xfontsel
                "Terminal Emulator" EXEC xminicom
                "Magnify" EXEC xmag
                "XKill" EXEC xkill
                "Clipboard" EXEC xclipboard
        "Utils" END

        "Selection" MENU
                "Copy" SHEXEC echo '%s' | wxcopy
                "Mail To" EXEC xterm -name mail -T "Pine" -e pine %s
                "Navigate" EXEC netscape %s
                "Search in Manual" SHEXEC MANUAL_SEARCH(%s)
        "Selection" END

        "Workspace" MENU
                "Hide Others" HIDE_OTHERS
                "Show All" SHOW_ALL
                "Arrange Icons" ARRANGE_ICONS
                "Refresh" REFRESH
                "Lock" EXEC xlock -allowroot -usefirst
                "Save Session" SAVE_SESSION
                "Clear Session" CLEAR_SESSION
        "Workspace" END

        "Appearance" MENU
                "Themes" OPEN_MENU -noext THEMES_DIR $HOME/GNUstep/Library/WindowMaker/Themes WITH setstyle
                "Styles" OPEN_MENU -noext STYLES_DIR $HOME/GNUstep/Library/WindowMaker/Styles WITH setstyle
                "Icon Sets" OPEN_MENU -noext ICON_SETS_DIR $HOME/GNUstep/Library/WindowMaker/IconSets WITH seticons
                "Background" MENU
                        "Solid" MENU
                                "Black" WS_BACK '(solid, black)'
                                "Blue"  WS_BACK '(solid, "#505075")'
                                "Indigo" WS_BACK '(solid, "#243e6c")'
                                "Bleumarine" WS_BACK '(solid, "#224477")'
                                "Purple" WS_BACK '(solid, "#554466")'
                                "Wheat"  WS_BACK '(solid, "wheat4")'
                                "Dark Gray"  WS_BACK '(solid, "#333340")'
                                "Wine" WS_BACK '(solid, "#400020")'
                        "Solid" END
                        "Gradient" MENU
                                "Sunset" WS_BACK '(mvgradient, deepskyblue4, black, deepskyblue4, tomato4)'
                                "Sky" WS_BACK '(vgradient, blue4, white)'
                                    "Blue Shades" WS_BACK '(vgradient, "#7080a5", "#101020")'
                                "Indigo Shades" WS_BACK '(vgradient, "#746ebc", "#242e4c")'
                                    "Purple Shades" WS_BACK '(vgradient, "#654c66", "#151426")'
                                    "Wheat Shades" WS_BACK '(vgradient, "#a09060", "#302010")'
                                    "Grey Shades" WS_BACK '(vgradient, "#636380", "#131318")'
                                    "Wine Shades" WS_BACK '(vgradient, "#600040", "#180010")'
                        "Gradient" END
                        "Images" OPEN_MENU -noext BACKGROUNDS_DIR $HOME/GNUstep/Library/WindowMaker/Backgrounds WITH wmsetbg -u -t
                "Background" END
                "Save Theme" SHEXEC getstyle -t $HOME/GNUstep/Library/WindowMaker/Themes/"%a(Theme name,Enter file name:)"
                "Save IconSet" SHEXEC geticonset $HOME/GNUstep/Library/WindowMaker/IconSets/"%a(IconSet name,Enter file name:)"
                "Preferences Utility" EXEC /usr/local/GNUstep/Apps/WPrefs.app/WPrefs
        "Appearance" END

        "Exit"        MENU
                "Restart" RESTART
                "Start BlackBox" RESTART blackbox
                "Start kwm" RESTART kwm
                "Start IceWM" RESTART icewm
                "Exit"  EXIT
        "Exit" END
"Applications" END


