;**************************************************************************
;
; NAME
;	$Id$
;
; SUMMARY
;	Installer script for TrashIt
;	$VER: Install-TrashIt 1.20 (5.5.93)
;
; REVISION HISTORY
;	$Log$
;
;**************************************************************************


(complete 0)


; Make sure the OS is recent enough
(if 
	(NOT 
		(>= 
			(/ (getversion) 65536)
			37
		)
	)
	(abort @app-name " requires AmigaDOS version 2.04 or higher.")
)


; Get the drawer where TrashIt will be installed
(set @default-dest
	(askdir
		(prompt "Select a drawer to install "@app-name" in")
		(help 
			"    This is where the TrashIt program and associated files (sounds and icons) will be copied to. "
			"\n"
			@askdir-help 
		)
		(default "Sys:WBStartup")
		(newpath)
	)
)


(if (= @user-level 0)
	(complete 25)
	(complete 10)
)


; Copy the main program
(copylib
	(prompt "Copying \""@app-name"\" to \""@default-dest"\"")
	(help @copylib-help)
	(source @app-name)
	(dest @default-dest)
	(infos)
	(confirm)
)


(if (= @user-level 0)
	(
		(complete 50)
		(working)
	)
	(complete 20)
)


; Unsnapshot the TrashIt icon
(tooltype 
	(prompt "Unsnapshotting the \""@app-name"\" icon")
	(help 
		"    This allows Workbench to automatically place the TrashIt icon anywhere it wants to within the window. "
		"\n"
		@tooltype-help 
	)
	(dest 
		(tackon @default-dest @app-name)
	)
	(confirm)
	(noposition)
)


(if (= @user-level 0)
	(complete 75)
	(complete 25)
)


; Copy sound files
(set sound-source "sounds")
(set sounds-not-copied "")
(if
	(=
		(exists sound-source)
		2
	)
	(
		(set sound-dest "")
		(foreach sound-source "~(#?.info)"
			(
				(if (= sound-dest "")
					(set sound-dest
						(askdir
							(prompt "Select a drawer to install the sound files in")
							(help 
								"    This is where the TrashIt program will copy the sound files. These files can be placed anywhere, or this part can be skipped if you don't want TrashIt to play sounds. "
								"\n"
								@askdir-help 
							)
							(default 
								(tackon @default-dest "sounds")
							)
							(newpath)
						)
					)
				)
				(if
					(=
						(exists 
							(tackon sound-dest @each-name)
						)
						0
					)
					(
						(copyfiles
							(prompt "Copying sound \""@each-name"\" to \""sound-dest"\"")
							(help @copyfiles-help)
							(source sound-source)
							(dest sound-dest)
							(pattern @each-name)
							(infos)
							(files)
						)
					)
					(set sounds-not-copied
						("%s \"%s\"" sounds-not-copied @each-name)
					)
				)
			)
		)
		(if
			(NOT 
				(= sounds-not-copied "")
			)
			(message "The following sounds already existed, so were not copied:" sounds-not-copied ".")
		)
	)
)


(if (= @user-level 0)
	(complete 85)
	(complete 30)
)


; Copy icons
(set icon-source "icons")
(set icons-not-copied "")
(if
	(=
		(exists icon-source)
		2
	)
	(
		(set icon-dest "")
		(foreach icon-source "#?.info"
			(
				(if (= icon-dest "")
					(set icon-dest
						(askdir
							(prompt "Select a drawer to install the icons in")
							(help 
								"    This is where the TrashIt program will copy the icon files. These files can be placed anywhere, or this part can be skipped if you don't want TrashIt to use these icons. "
								"\n"
								@askdir-help 
							)
							(default 
								(tackon @default-dest "icons")
							)
							(newpath)
						)
					)
				)
				(if
					(=
						(exists 
							(tackon icon-dest @each-name)
						)
						0
					)
					(
						(copyfiles
							(prompt "Copying icon \""@each-name"\" to \""icon-dest"\"")
							(help @copyfiles-help)
							(source icon-source)
							(dest icon-dest)
							(pattern @each-name)
							(infos)
							(files)
						)
					)
					(set icons-not-copied
						("%s \"%s\"" icons-not-copied @each-name)
					)
				)
			)
		)
		(if
			(NOT 
				(= icons-not-copied "")
			)
			(message "The following icons already existed, so were not copied:" icons-not-copied ".")
		)
	)
)


(if (= @user-level 0)
	(complete 95)
	(complete 35)
)


(set APPICON-value		"ON")
(set APPICONHPOS-value		0)
(set APPICONVPOS-value		0)
(set APPICONNAME-value		"TrashIt")
(set APPICONFILE-value		"")
(set FORCE-value		"OFF")
(set DELETELIMIT-value		10)
(set EMPTYTIME-value		0)
(set TRASHDRAWER-value		"")
(set FINDTRASHDRAWERS-value	"ON")
(set SOUNDFILE-value		"")
(set APPWINDOW-value		"ON")
(set APPMENUITEM-value		"OFF")
(set APPMENUITEMNAME-value	"")
(set MESSAGES-value		"ON")
(set PUBSCREEN-value		"")
(set TOOLPRI-value		0)
(set CX_PRIORITY-value		0)
(set CX_POPKEY-value		"control lshift t")
(set CX_POPUP-value		"NO")
(set UNIT-value			0)


; Allow user to customize tooltypes
(if (> @user-level 0)
	(
		; Set APPICON tooltype
		(set tool "APPICON")
		(set response
			(askbool
				(prompt "Do you want "@app-name" to use an AppIcon?")
				(help
					"    This option lets you specify whether or not TrashIt should create an AppIcon, "
					"which is an icon on the Workbench screen onto which you can drop files and "
					"drawers. "
					"\n"
					@askbool-help
				)
				(default 1)
			)
		)
		(if response
			(set APPICON-value "ON")
			(set APPICON-value "OFF")
		)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""APPICON-value"\"")
			(help @tooltype-help)
			(settooltype tool APPICON-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		(complete 40)
		
		
		; Set APPICONHPOS tooltype
		(set tool "APPICONHPOS")
		(set response
			(asknumber
				(prompt "Enter the horizontal position of the AppIcon:")
				(help 
					"    This option lets you specify the x coordinate of the TrashIt AppIcon. If you "
					"don't specify a valid position, or the position you specify is over another "
					"icon, the icon will be placed in the next available spot on the screen. "
					"\n"
					@asknumber-help 
				)
				(default APPICONHPOS-value)
			)
		)
		(set APPICONHPOS-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""APPICONHPOS-value"\"")
			(help @tooltype-help)
			(settooltype tool 
				(cat APPICONHPOS-value)
			)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		; Set APPICONVPOS tooltype
		(set tool "APPICONVPOS")
		(set response
			(asknumber
				(prompt "Enter the vertical position of the AppIcon:")
				(help 
					"    This option lets you specify the y coordinate of the TrashIt AppIcon. If you "
					"don't specify a valid position, or the position you specify is over another "
					"icon, the icon will be placed in the next available spot on the screen. "
					"\n"
					@asknumber-help 
				)
				(default APPICONPOS-value)
			)
		)
		(set APPICONPOS-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""APPICONPOS-value"\"")
			(help @tooltype-help)
			(settooltype tool 
				(cat APPICONPOS-value)
			)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		(complete 45)
		
		
		; Set APPICONNAME tooltype
		(set tool "APPICONNAME")
		(set response
			(askstring
				(prompt "Enter the name of the AppIcon:")
				(help 
					"    This option lets you specify the name of the AppIcon. If you don't specify a "
					"value, the name of the icon will be the name of the program (i.e., TrashIt). "
					"\n"
					@askstring-help 
				)
				(default APPICONNAME-value)
			)
		)
		(set APPICONNAME-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""APPICONNAME-value"\"")
			(help @tooltype-help)
			(settooltype tool APPICONNAME-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		; Set APPICONFILE tooltype
		(set tool "APPICONFILE")
		(set response
			(askfile
				(prompt "Select an icon file to use for the AppIcon imagery:")
				(help 
					"    This option lets you specify the icon file that TrashIt will use when it opens "
					"the AppIcon. If you select a valid icon file, that icon's imagery will be used "
					"instead of TrashIt's icon or your system's default Trashcan icon. "
					"\n"
					@askfile-help 
				)
				(default APPICONFILE-value)
			)
		)
		(set APPICONFILE-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""APPICONFILE-value"\"")
			(help @tooltype-help)
			(settooltype tool APPICONFILE-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		(complete 50)
		
		
		; Set FORCE tooltype
		(set tool "FORCE")
		(set response
			(askbool
				(prompt "Do you want "@app-name" to override delete protection when deleting things?")
				(help 
					"    This option lets you specify whether or not you want TrashIt to force "
					"deletions by deprotecting any delete protected files. "
					"\n"
					@askbool-help 
				)
				(default 0)
			)
		)
		(if response
			(set FORCE-value "ON")
			(set FORCE-value "OFF")
		)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""FORCE-value"\"")
			(help @tooltype-help)
			(settooltype tool FORCE-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		; Set EMPTYTIME tooltype
		(set tool "EMPTYTIME")
		(set response
			(asknumber
				(prompt "Enter the number of seconds "@app-name" should delay before deleting things:")
				(help 
					"    This option lets you specify the time, in seconds, that TrashIt will wait "
					"before it empties the trash. This is the most important option because many "
					"options are dependent on how this is set. "
					"\n"
					"    If you do not specify a time, or if the time is not more than zero seconds, "
					"then TrashIt will delete everything immediately when you delete files using "
					"the AppIcon, AppWindow, or AppMenuItem, or when you add a file to the Trash "
					"Drawer, if you specified one. "
					"\n"
					"    If you specify a time that is more than zero seconds, then TrashIt will "
					"attempt to move files to an appropriate location when you delete them. The "
					"locations it looks for are a Trashcan or a Trash Drawer on the disk you are "
					"deleting from, in that order. "
					"\n"
					@asknumber-help 
				)
				(default EMPTYTIME-value)
			)
		)
		(set EMPTYTIME-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""EMPTYTIME-value"\"")
			(help @tooltype-help)
			(settooltype tool 
				(cat EMPTYTIME-value)
			)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		(complete 55)
		
		
		; Set DELETELIMIT tooltype
		(set tool "DELETELIMIT")
		(set response
			(asknumber
				(prompt "Enter the maximum number of things that can be deleted at once:")
				(help 
					"    This option let you specify the maximum number of files that you can delete at "
					"one time (through the AppIcon, AppWindow, or AppMenuItem), without having "
					"TrashIt display a warning message. "
					"\n"
					"    It also sets the maximum number of files that are allowed to be in a Trashcan "
					"at once. For instance if DELETELIMIT is set to 5 and there are 5 files in the "
					"Trashcan on your Work: disk, when you use TrashIt to delete another file, the "
					"oldest file in the Trashcan will be deleted and the new file will be moved "
					"into the trashcan. For this to happen, EMPTYTIME must be greater than zero. "
					"\n"
					@asknumber-help 
				)
				(default DELETELIMIT-VALUE)
			)
		)
		(set DELETELIMIT-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""DELETELIMIT-value"\"")
			(help @tooltype-help)
			(settooltype tool 
				(cat DELETELIMIT-value)
			)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		
		; Set TRASHDRAWER tooltype
		(set tool "TRASHDRAWER")
		(set response
			(askdir
				(prompt "Select an drawer for "@app-name" to watch:")
				(help 
					"    This option lets you specify the name of the drawer to use as an automatic "
					"disposal. This option is to allow you to use a drawer other than the Trashcan "
					"on your disk to throw trash into. The behavior of this is affected by how "
					"EMPTYTIME is set. "
					"\n"
					@askfile-help 
				)
				(default TRASHDRAWER-value)
			)
		)
		(set TRASHDRAWER-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""TRASHDRAWER-value"\"")
			(help @tooltype-help)
			(settooltype tool TRASHDRAWER-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		(complete 60)
		
		
		; Set FINDTRASHDRAWERS tooltype
		(set tool "FINDTRASHDRAWERS")
		(set response
			(askbool
				(prompt "Do you want "@app-name" to find and watch your Trashcans?")
				(help 
					"    This option lets you specify that you want TrashIt to search all your disks "
					"for Trashcans to use for automatic disposal. These drawers are the same as the "
					"TRASHDRAWER, except that they are found automatically. "
					"\n"
					"    If EMPTYTIME is greater than zero and this option is set to OFF, then TrashIt "
					"will search for a Trashcan at the time when you delete something. Therefore, "
					"the purpose of this option is to allow you to throw files directly into the "
					"Trashcan and have TrashIt be notified of this event, so that TrashIt can empty "
					"the Trashcan later. "
					"\n"
					"    This option is ignored if EMPTYTIME is less than zero. "
					"\n"
					@askbool-help 
				)
				(default 1)
			)
		)
		(if response
			(set FINDTRASHDRAWERS-value "ON")
			(set FINDTRASHDRAWERS-value "OFF")
		)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""FINDTRASHDRAWERS-value"\"")
			(help @tooltype-help)
			(settooltype tool FINDTRASHDRAWERS-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		; Set SOUNDFILE tooltype
		(set tool "SOUNDFILE")
		(set response
			(askfile
				(prompt "Select a sound file to play when deleting things:")
				(help 
					"    This option lets you specify a sound file that TrashIt will play whenever "
					"TrashIt deletes files. If you do not specify a sound file, TrashIt will beep "
					"at you when messages are turned off and it deletes something automatically, so "
					"that you don't reboot or shut off your computer at that moment. "
					"\n"
					@askfile-help 
				)
				(default SOUNDFILE-value)
			)
		)
		(set SOUNDFILE-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""SOUNDFILE-value"\"")
			(help @tooltype-help)
			(settooltype tool SOUNDFILE-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		(complete 65)
		
		
		; Set APPWINDOW tooltype
		(set tool "APPWINDOW")
		(set response
			(askbool
				(prompt "Do you want "@app-name" to use an AppWindow?")
				(help 
					"    This option lets you specify whether or not you want the TrashIt control panel "
					"to also serve as an AppWindow. This means that you can drop files onto the "
					"window and they will be delete. Of course, the control panel must actually be "
					"open for you to utilize this. "
					"\n"
					@askbool-help 
				)
				(default 1)
			)
		)
		(if response
			(set APPWINDOW-value "ON")
			(set APPWINDOW-value "OFF")
		)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""APPWINDOW-value"\"")
			(help @tooltype-help)
			(settooltype tool APPWINDOW-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		; Set APPMENUITEM tooltype
		(set tool "APPMENUITEM")
		(set response
			(askbool
				(prompt "Do you want "@app-name" to use an AppMenuItem?")
				(help 
					"    This option lets you specify whether or not TrashIt should create an "
					"AppMenuItem. An AppMenuItem is a menu item that is added to the Tools menu of "
					"your Workbench screen. You can use the AppMenuItem to delete files by "
					"selecting the files then selecting the AppMenuItem. "
					"\n"
					@askbool-help 
				)
				(default 1)
			)
		)
		(if response
			(set APPMENUITEM-value "ON")
			(set APPMENUITEM-value "OFF")
		)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""APPMENUITEM-value"\"")
			(help @tooltype-help)
			(settooltype tool APPMENUITEM-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		(complete 75)
		
		
		; Set APPMENUITEMNAME tooltype
		(set tool "APPMENUITEMNAME")
		(set response
			(askstring
				(prompt "Enter the name of the AppMenuItem:")
				(help 
					"    This option lets you specify the name of the AppMenuItem. If you don't specify "
					"a value, the name of the menu item will be the same as the AppIcon name. "
					"\n" 
					@askstring-help 
				)
				(default APPMENUITEMNAME-value)
			)
		)
		(set APPMENUITEMNAME-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""APPMENUITEMNAME-value"\"")
			(help @tooltype-help)
			(settooltype tool APPMENUITEMNAME-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)


		; Set MESSAGES tooltype
		(set tool "MESSAGES")
		(set response
			(askbool
				(prompt "Do you want "@app-name" to display message requesters?")
				(help 
					"    This option lets you specify whether or not you want TrashIt to display "
					"messages and non-fatal errors. "
					"\n"
					"    When this option is OFF, TrashIt may play a sound or beep at certain times in "
					"order to warn you not to turn off your computer because it is deleting files, "
					"or to signal that an error occurred. "
					"\n"
					@askbool-help 
				)
				(default 1)
			)
		)
		(if response
			(set MESSAGES-value "ON")
			(set MESSAGES-value "OFF")
		)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""MESSAGES-value"\"")
			(help @tooltype-help)
			(settooltype tool MESSAGES-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		(complete 85)
		
		
		; Set PUBSCREEN tooltype
		(set tool "PUBSCREEN")
		(set response
			(askstring
				(prompt "Enter the name of the Public Screen for "@app-name" to open its control panel on:")
				(help 
					"    This option lets you specify which Public Screen you want the TrashIt control "
					"panel to open on. "
					"\n"
					@askstring-help
				)
				(default PUBSCREEN-value)
			)
		)
		(set PUBSCREEN-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""PUBSCREEN-value"\"")
			(help @tooltype-help)
			(settooltype tool PUBSCREEN-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		; Set TOOLPRI tooltype
		(set tool "TOOLPRI")
		(set response
			(asknumber
				(prompt "Enter the priority for "@app-name" to run at:")
				(help 
					"    This option lets you specify the priority you want TrashIt to run at. "
					"\n"
					@asknumber-help
				)
				(default TOOLPRI-value)
			)
		)
		(set TOOLPRI-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""TOOLPRI-value"\"")
			(help @tooltype-help)
			(settooltype tool 
				(cat TOOLPRI-value)
			)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		(complete 90)
		
		
		; Set CX_PRIORITY tooltype
		(set tool "CX_PRIORITY")
		(set response
			(asknumber
				(prompt "Enter the priority for "@app-name" commodity:")
				(help 
					"    This option lets you specify the priority of the TrashIt commodity. "
					"\n"
					@asknumber-help
				)
				(default CX_PRIORITY-value)
			)
		)
		(set CX_PRIORITY-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""CX_PRIORITY-value"\"")
			(help @tooltype-help)
			(settooltype tool 
				(cat CX_PRIORITY-value)
			)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		; Set CX_POPKEY tooltype
		(set tool "CX_POPKEY")
		(set response
			(askstring
				(prompt "Enter the key combination that will cause "@app-name" to open its control panel:")
				(help 
					"    This option lets you specify a commodities hotkey to pop open the TrashIt "
					"control panel. "
					"\n"
					@askstring-help
				)
				(default CX_POPKEY-value)
			)
		)
		(set CX_POPKEY-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""CX_POPKEY-value"\"")
			(help @tooltype-help)
			(settooltype tool CX_POPKEY-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		
		
		(complete 95)
		
		
		; Set CX_POPUP tooltype
		(set tool "CX_POPUP")
		(set response
			(askbool
				(prompt "Do you want "@app-name" to open its control panel when you start it?")
				(help 
					"    This option lets you specify whether or not TrashIt should open the control "
					"panel when it starts. "
					"\n"
					@askbool-help
				)
				(default 0)
			)
		)
		(if response
			; NOTE: these values are unusual
			(set CX_POPUP-value "YES")
			(set CX_POPUP-value "NO")
		)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""CX_POPUP-value"\"")
			(help @tooltype-help)
			(settooltype tool CX_POPUP-value)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
		

		; Set UNIT tooltype
		(set tool "UNIT")
		(set response
			(asknumber
				(prompt "Enter the clipboard unit number that "@app-name" should use:")
				(help 
					"    This option lets you specify the clipboard unit number to use for cut, copy, "
					"and paste. "
					"\n"
					@asknumber-help
				)
				(default UNIT-value)
			)
		)
		(set UNIT-value response)
		(tooltype 
			(prompt "Setting the \""tool"\" tooltype to \""UNIT-value"\"")
			(help @tooltype-help)
			(settooltype tool 
				(cat UNIT-value)
			)
			(dest 
				(tackon @default-dest @app-name)
			)
			(confirm)
		)
	)
	
	
	(complete 95)
)


(if 
	(askbool
		(prompt "Do you want to start "@app-name" now?")
		(help 
			"    This will start TrashIt with the options you just selected. "
			"\n"
			@askbool-help
		)
		(default 1)
	)
	(run 
		(tackon @default-dest @app-name)
		("\"APPICON=%s\""		APPICON-value)
		("\"APPICONHPOS=%ld\""		APPICONHPOS-value)
		("\"APPICONVPOS=%ld\""		APPICONVPOS-value)
		("\"APPICONNAME=%s\""		APPICONNAME-value)
		("\"APPICONFILE=%s\""		APPICONFILE-value)
		("\"FORCE=%s\""			FORCE-value)
		("\"EMPTYTIME=%ld\""		EMPTYTIME-value)
		("\"DELETELIMIT=%ld\""		DELETELIMIT-value)
		("\"TRASHDRAWER=%s\""		TRASHDRAWER-value)
		("\"FINDTRASHDRAWERS=%s\""	FINDTRASHDRAWERS-value)
		("\"SOUNDFILE=%s\""		SOUNDFILE-value)
		("\"APPWINDOW=%s\""		APPWINDOW-value)
		("\"APPMENUITEM=%s\""		APPMENUITEM-value)
		("\"APPMENUITEMNAME=%s\""	APPMENUITEMNAME-value)
		("\"MESSAGES=%s\""		MESSAGES-value)
		("\"PUBSCREEN=%s\""		PUBSCREEN-value)
		("\"TOOLPRI=%ld\""		TOOLPRI-value)
		("\"CX_PRIORITY=%ld\""		CX_PRIORITY-value)
		("\"CX_POPKEY=%s\""		CX_POPKEY-value)
		("\"CX_POPUP=%s\""		CX_POPUP-value)
		("\"UNIT=%ld\""			UNIT-value)
	)
)


(complete 100)
