# I just got rid of ten years worth of gunk here... (2004/11/06)

# Colors 2004.05.23
PagerForeColor	 	#000000
PagerBackColor	 	#5a4529
StdForeColor 		#ffffff
StdBackColor		#5a4529
HiForeColor 		#ffffff
HiBackColor		#9c8a4a
MenuForeColor 		#ffffff
MenuBackColor		#9c8a4a
#StickyForeColor 	#ffffff
#StickyBackColor 	#5a4529

############################################################################
# Now the fonts - one for menus, another for window titles, another for icons
Font			-adobe-helvetica-medium-r-*-*-14-*-*-*-*-*-*-*
WindowFont		-adobe-helvetica-bold-r-*-*-12-*-*-*-*-*-*-*
IconFont		fixed

# Set windows to auto-raise after 750 milliseconds if you like it.
# Autoraise can sometimes obscure pop-up windows. Performance is now
# similar to olvwm's auto-raise feature.
AutoRaise 600

#I'm used to the old Berkeley-style mouse-focus -- set
#ClickToFocus

IconBox -150 90 -5 -140
IconBox 5 -140 -140 -5

#StickyIcons

MWMFunctionHints
MWMHintOverride
MWMDecorHints
MWMBorders
MWMButtons

# If you don't like the default 150 msec click delay for the complex functions
# change this and uncomment it.
#ClickTime 150

# OpaqueMove has a number (N) attached to it (default 5).
# if the window occupies less than N% of the screen, 
# then opaque move is used. 0 <= N <= 100
OpaqueMove 100

# flip by whole pages on the edge of the screen.
EdgeScroll 100 100

# A modest delay before flipping pages seems to be nice...
# I thresh in a 50 pixel Move-resistance too, just so people
# can try it out.
EdgeResistance 100 50

# I like to use a large virtual screen and move from page to page with the
# pager.
#EdgeResistance 10000 0


########################      WINDOW PLACEMENT     #######################
SmartPlacement
#StubbornPlacement
# NoPPosition instructs fvwm to ignore the PPosition field in window 
# geometry hints. Emacs annoyingly sets PPosition to (0,0)!
NoPPosition

# So we can see freeciv stats in subwindows
DecorateTransients

DeskTopSize 2x3
# Pager reduction scale
DeskTopScale 25

# Use the Fvwm Pager
#Pager 717 533
 Pager -1 -1

# change the default width.
Style "*" BorderWidth 5, HandleWidth 5,Icon unknown1.xpm

Style "Fvwm*"      NoTitle, WindowListSkip, CirculateSkip
Style "Fvwm Pager" Sticky
Style "desktop icon" Sticky
Style "FvwmBanner" StaysOnTop
Style "GoodStuff"  NoTitle, NoHandles, WindowListSkip,Sticky
Style "xdaliclock" NoTitle, NoHandles,Sticky
Style "xterm"      Icon xterm.xpm
Style "GoodStuff"  Icon toolbox.xpm


# Stuff to do at start-up

Function "InitFunction"
 	Exec	"I"	xloadimage -onroot /home/set/.desktop.jpg
	Exec    "I"    xdaliclock -font 7x14 -fg \#fff -transparent -noseconds -geometry -105--5 
        Exec    "I"     xrdb -merge ~/.Xresources
	Desk	"I"	0 0
EndFunction

Function "RestartFunction"
 	Exec	"I"	xloadimage -onroot /home/set/.desktop.jpg
EndFunction


############################################################################
# Now define some handy complex functions

# This one moves and then raises the window if you drag the mouse,
# only raises the window if you click,  or does a RaiseLower if you double 
# click
Function "Move-or-Raise"
	Move 		"Motion"
	Raise		"Motion"
	Raise		"Click"
EndFunction

Function "Move-or-Lower"
	Move 		"Motion"
	Lower		"Click"
EndFunction

# This one maximizes vertically if you click (leaving room for the GoodStuff bar at the
# bottom, or does a full maximization if you double click, or a true full vertical 
# maximization if you just hold the mouse button down.
Function "maximize_func"
	Maximize	"Motion" 0 100
	Maximize	"Click" 0 80
	Maximize	"DoubleClick" 100 100
EndFunction

# This one moves and then lowers the window if you drag the mouse,
# only lowers the window if you click,  or does a RaiseLower if you double 
# click
Function "Move-or-Lower"
	Move 		"Motion"
	Lower		"Motion"
	Lower		"Click"
	RaiseLower	"DoubleClick"
EndFunction

# This one moves or (de)iconifies:
Function "Move-or-Iconify"
	Move 		"Motion"
	Iconify		"DoubleClick"
EndFunction

# This one resizes and then raises the window if you drag the mouse,
# only raises the window if you click,  or does a RaiseLower if you double 
# click
Function "Resize-or-Raise"
	Resize 		"Motion"
	Raise		"Motion"
	Raise		"Click"
	RaiseLower	"DoubleClick"
EndFunction


# This menu is invoked as a sub-menu - it allows you to quit,
# restart, or switch to another WM.
Popup "Quit-Verify"
	Title	"Restart or Quit?"
        Restart "Restart Fvwm"	/usr/X11R6/bin/fvwm
	Quit	"Yes, Really Quit"
	#Restart "Go to KDE"	/usr/bin/startkde
        Nop	""
        Nop	"No, Don't Quit"
EndPopup

Popup "Programs"
	Title "Programs"
#	Exec	"Firefox"	exec /usr/local/lib/firefox-installer/firefox &
#	Exec    "Firefox"	exec /usr/bin/firefox &
	Exec    "Firefox"	exec /usr/local/firefox/firefox &
#	Exec 	"Opera"		exec opera &
#	Exec    "Sunbird"	exec /usr/local/sunbird/sunbird &
#       Exec    "Xv"            exec xv &
	Exec    "XMMS"		exec xmms &
	Exec    "Gimp"          exec gimp &
	Exec    "Gaim"          exec gaim &
#	Exec	"Mozilla"	exec /usr/bin/mozilla &
#       Exec    "Open Office"   exec /usr/lib/ooo-1.1/program/swriter &
#	Exec 	"Ted"		exec /usr/local/bin/Ted &
	Exec 	"Abiword"	exec abiword &
EndPopup

Popup "Utilities"
	Title 	"Go here"
# UTF-8
	Exec	"Xterm"		xterm -ls -u8 -cm -fn "-misc-fixed-medium-r-normal--14-*-75-75-c-70-iso10646-1" -bg black -fg \#ffd
	Nop     ""
	Popup   "Programs"      Programs
        Nop     ""
        Refresh "Refresh Screen"
	Nop	""
	Popup   "Exit FVWM"    Quit-Verify
EndPopup

# This defines the most common window operations
Popup "Window Ops"
	Title		"Window Ops"
	Function	"Move" 		Move-or-Raise
	Function 	"Resize" 	Resize-or-Raise
	Raise   	"Raise"
	Lower   	"Lower"
	Nop     	""
	Destroy 	"Destroy"
	Delete  	"Delete"
	Nop		""
	Refresh		"Refresh Screen"
EndPopup

# A trimmed down version of "Window Ops", good for binding to decorations
Popup "Window Ops2"
	Function 	"Move"		Move-or-Raise
	Function  	"Resize" 	Resize-or-Raise
	Raise   	"Raise"
	Lower   	"Lower"
	Nop     	""
	Destroy 	"Destroy"
	Delete  	"Delete"
EndPopup

#############################################################################
# One more complex function - couldn't be defined earlier because it used 
# pop-up menus
#
# This creates a motif-ish sticky menu for the title-bar window-ops
# pop-up
# Menu acts like normal twm menu if you just hold the button down,
# but if you click instead, the menu stays up, motif style
Function "window_ops_func"
	PopUp 	"Click"		Window Ops2
	PopUp	"Motion"	Window Ops2
# Motif would add
#       Delete  "DoubleClick"  
EndFunction


# This defines the mouse bindings

# First, for the mouse in the root window
#     Button	Context Modifi 	Function
Mouse 1		R   	A       PopUp "Utilities"
Mouse 2         R       A       WindowList
Mouse 3         R       A       WindowList

# Now the title bar buttons
# Note the use of "Mouse 0" for AnyButton.

# define some complex buttons, as a list of points
ButtonStyle : 1 8 40x20@1 40x50@1 20x50@1 50x80@1 80x50@0 60x50@0 60x20@0 40x20@1
ButtonStyle : 3 8 40x80@1 40x50@1 20x50@1 50x20@1 80x50@0 60x50@0 60x80@0 40x80@0
ButtonStyle : 2 17 20x20@1 30x20@1 50x40@1 70x20@1 80x20@1 80x30@0 60x50@0 80x70@1 80x80@0 70x80@0 50x60@0 30x80@0 20x80@0 20x70@0 40x50@1 20x30@0 20x20@1

Mouse 0     1       A       Iconify
Mouse 0     3       A       Maximize 100 98
Mouse 0     2       A       Close

# Button 1 in the title, sides, or icon, w/ any modifiers, gives move or raise
Mouse 1		T 	A	Function "Move-or-Lower"
Mouse 1         FS       A       Function "Resize-or-Raise"

Mouse 1		I	A	Function "Move-or-Iconify"

# Button 3 in the corners or sides gives wondow_ops menu
Mouse 3		FS	A	Function "window_ops_func"
# Button 3 in the titlebar resizes or raises
Mouse 3		T	A	Function "Resize-or-Raise"

############################################################################
# Now some keyboard shortcuts.

Key Left	A	C	Scroll -100 0
Key Right	A	C	Scroll +100 +0
Key Up		A	C	Scroll +0   -100
Key Down	A	C	Scroll +0   +100

# Be able to move the cursor around w/o a mouse
Key Left	A	CM	CursorMove -29 0
Key Right	A	CM	CursorMove +29 +0
Key Up		A	CM	CursorMove +0 -29
Key Down	A	CM	CursorMove +0 +29

# Hotkeys to quickly move you from window to window. Added by set, suggested 
# by norby
Key F1         A       C       GotoPage 0 0
Key F2         A       C       GotoPage 0 1
Key F3         A       C       GotoPage 1 0
Key F4         A       C       GotoPage 1 1
# CNTL-F8: refresh the screen
Key F8	       A       C       Refresh
# F8 by itself: Refresh the screen
Key F8	       A       N      Refresh
# Hot keys to allow opening up of Xterms and restarting of FVWM w/o mouse
# CNTL-F9: Open up Xterm
Key F9         A       C       Exec "xterm" xterm -ls -u8 -cm -fn "-misc-fixed-medium-r-normal--14-*-75-75-c-70-iso10646-1" -bg black -fg \#ffd -geometry 80x25
# CNTL-SHIFT-F12: Restart FVWM
Key F12        A       CS      Restart "Restart Fvwm"  /usr/X11R6/bin/fvwm 

#Sam stuff
CirculateSkip Pager