; A simple script which removes the Recall-package from your harddisk

(set #programmer		" 1993 Ketil Hunn")
(set #version				"V2.1")

(set RECALL					"Recall")
(set RECALLPREFS		(cat RECALL			" Preferences"))
(set RECALL.PREFS		(cat RECALL			".prefs"))
(set RECALLGUIDE		(cat RECALL			".guide"))
(set RECALLASCII		(cat RECALL 		".ASCII"))
(set CONVERTER			"ReConvert")
(set CONVERTERGUIDE	(cat CONVERTER	".guide"))
(set CONVERTERASCII	(cat CONVERTER	".ASCII"))
(set LIBRARY				"ReqTools.library")
(set CSOURCE				"C-SOURCE")

(set #Mainprog			(cat	"SYS:WBStartup/" RECALL))
(set #Prefsprog			(cat	"SYS:Prefs/" RECALL))
(set #Project				(cat	"ENVARC:" RECALL ".prefs"))
(set #Convprog			(cat	"SYS:Tools/" CONVERTER)) 
(set #recguide			(cat	RECALL ".guide"))
(set #convguide			(cat	CONVERTER ".guide"))
(set #recascii			(cat	RECALL ".ASCII"))
(set #convascii			(cat	CONVERTER ".ASCII"))
(set #Sourcedir			"sc:source")
(set #Library				"Libs:ReqTools.library")
(set @default-dest	"SYS:")
(set guidedest			"HELP:English/")
(set docdest				"DOCS:")

(set mainsize		 	(getsize #Mainprog))
(set prefssize	 	(getsize #Prefsprog))
(set convsize		 	(getsize #Convprog))
(set libssize		 	(getsize #Library))
(set projectsize	(getsize #Project))
(set guidesize	 	(getsize #recguide))
(set guidesize	 	(getsize #convguide))
(set asciisize	 	(getsize #recascii))
(set asciisize	 	(getsize #convascii))
(set sourcesize		127529)

(set done (+ mainsize prefssize convsize libssize projectsize recguidesize recasciisize sourcesize))

(complete 0)

(message	"This script will remove any copy of components of the "
					RECALL "-utility from your harddisk.\n\n"
					"Please press 'Proceed' to bring up the menu in which you "
					"select which parts of the " RECALL "-package you will remove.\n\n"
					"Please take no notice of all occurences of the word 'Install' "
					"throughout this script.  That word cannot be changed since it "
					"resides inside the Commodore's Installer-utility.  (I guess they "
					"never thought that Installer could be of much use other than to "
					"install programs :( )"
)

(set progs
	(askoptions
		(help			@askoptions-help)
		(prompt		"Select parts to remove:")
		(choices	RECALL
							RECALLPREFS
							RECALL.PREFS
							RECALLGUIDE
							RECALLASCII
							CONVERTER
							CONVERTERGUIDE
							CONVERTERASCII
							CSOURCE
							LIBRARY
			(default	0)
	  )
	)
)

(set languages
	(askoptions
		(prompt		"Select languages to remove:")
		(help			@askoptions-help)
		(choices	"Norsk"
							"Deutsch"
;							"Espaol"
;							"Franais"
;							"Svenska"
			(default 0)
	  )
	)
)

; ****** RECALL *****
(if (IN progs 0)
	(
		(delete (#Mainprog)
						(prompt (cat "About to delete " #Mainprog))
						(help		@delete-help)
						(confirm)
						(infos)
		)
	)
)
(complete (/ (* (set sofar (+ sofar mainsize)) 100) done))

; ****** RECALL PREFERENCES *****
(if (IN progs 1)
	(
		(delete (#Prefsprog)
						(prompt (cat "About to delete " #Prefsprog))
						(help		@delete-help)
						(confirm)
						(infos)
		)
	)
)
(complete (/ (* (set sofar (+ sofar prefssize)) 100) done))

; ****** RECALL.PREFS *****
(if (IN progs 2)
	(
		(delete (#Project)
						(prompt (cat "About to delete " #Project))
						(help		@delete-help)
						(confirm)
						(infos)
		)
	)
)
(complete (/ (* (set sofar (+ sofar projectsize)) 100) done))

; ****** RECALL.GUIDE *****
(if (IN progs 3)
	(
		(set guidedest
			(askdir
				(prompt		"Select disk or drawer where Recall Amigaguide-document resides:")
				(help			@askdir-help)
				(default	"HELP:english/")
			)
		)
		(delete (tackon guidedest #recguide)
						(prompt (cat "About to delete " guidedest #recguide))
						(help		@delete-help)
						(confirm)
						(infos)
		)
		(complete (/ (* (set sofar (+ sofar recguidesize)) 100) done))
	)
)

; ****** RECALL.ASCII *****
(if (IN progs 4)
	(
		(set docdest
			(askdir
				(prompt		"Select disk or drawer where Recall ASCII-document resides:")
				(help			@askdir-help)
				(default	"Docs:")
			)
		)
		(delete (tackon docdest #recascii)
						(prompt (cat "About to delete " docdest #recascii))
						(help		@delete-help)
						(confirm)
						(infos)
		)
		(complete (/ (* (set sofar (+ sofar recasciisize)) 100) done))
	)
)

; ****** CONVERTER *****
(if (IN progs 5)
	(
		(delete (#Convprog)
						(prompt (cat "About to delete " #Convprog))
						(help		@delete-help)
						(confirm)
						(infos)
		)
	)
)
(complete (/ (* (set sofar (+ sofar convsize)) 100) done))

; ****** CONVERTER.GUIDE *****
(if (IN progs 6)
	(
		(set guidedest
			(askdir
				(prompt		"Select disk or drawer where Converter Amigaguide-document resides:")
				(help			@askdir-help)
				(default	guidedest)
			)
		)
		(delete (tackon guidedest #convguide)
						(prompt (cat "About to delete " guidedest #convguide))
						(help		@delete-help)
						(confirm)
						(infos)
		)
		(complete (/ (* (set sofar (+ sofar convguidesize)) 100) done))
	)
)

; ****** CONVERTER.ASCII *****
(if (IN progs 7)
	(
		(set docdest
			(askdir
				(prompt		"Select disk or drawer where Converter ASCII-document resides:")
				(help			@askdir-help)
				(default	docdest)
			)
		)
		(delete (tackon docdest #convascii)
						(prompt (cat "About to delete " docdest #convascii))
						(help		@delete-help)
						(confirm)
						(infos)
		)
		(complete (/ (* (set sofar (+ sofar convasciisize)) 100) done))
	)
)

; ****** SOURCES *****
(if (IN progs 8)
	(
		(set sourcedest
			(askdir
				(prompt		"Select drawer where all Recall sources resides:\n"
									"WARNING!\n"
									"ALL files in the selected drawer will be deleted!")
				(help			@askdir-help)
				(default	"ram:")
			)
		)
		(run (cat "c:delete \"" sourcedest "\" all"))
		(complete (/ (* (set sofar (+ sofar sourcesize)) 100) done))
	)
)

; ****** REQTOOLS.LIBRARY *****
(if (IN progs 9)
	(
		(delete (#Library)
						(prompt (cat "About to delete " #Library))
						(help		@delete-help)
						(confirm)
						(infos)
		)
	)
)
(complete (/ (* (set sofar (+ sofar libssize)) 100) done))

(if (IN languages 0)
	(
		(run (cat "c:delete LOCALE:catalogs/Norsk/Recall all"))
	)
)

(if (IN languages 1)
	(
		(run (cat "c:delete LOCALE:catalogs/Deutsch/Recall all"))
	)
)

;(if (IN languages 2)
;	(
;		(run (cat "c:delete LOCALE:catalogs/Espaol/Recall all"))
;	)
;)
;
;(if (IN languages 3)
;	(
;		(run (cat "c:delete LOCALE:catalogs/Franais/Recall all"))
;	)
;)
;
;(if (IN languages 4)
;	(
;		(run (cat "c:delete LOCALE:catalogs/Svenska/Recall all"))
;	)
;)
;
(complete 100)

(message	RECALL " is now removed from your " default-dest "-partition!")
