;Emperor install script Version 2.30 (1.10.2000)
;written by Matthias Gietzelt
;Copyright by Matthias Gietzelt © 2000
;All right reserved

;PREPARE INSTALL

(set #languagefound 0)
(if     (= "deutsch" @language)
	(
		(set #languagefound 1)
		(set #MSG_OS35 "Emperor benötigt mindestens AmigaOS 3.5 !")
		(set #MSG_WELCOME1 (cat "\nWillkommen bei der Installation von Emperor !\n"
		                        "Emperor ist eine objekt-orientierte Programmiersprache.\n\n"
		                        "Vielen Dank das Sie dieses Programmpaket ausprobieren möchten.\n\n"
		                        "Emperor benötigt die Amiga Developer CD 2.1\n"
		                        "von der Haage & Partner GmbH, um arbeiten zu können.\n"
		                        "Dieses beinhaltet z.B. einen C/C++-Compiler und die Unterstützung\n"
		                        "zur Softwareentwicklung für das neue AmigaOS 3.5."))

		(set #MSG_WELCOME2 (cat "\nWeiterhin benötigt Emperor folgende Dateien:\n\n"
		                        "CatComp von der Developer CD 2.1\n"
		                        "(ADCD_2.1:NDK/NDK_3.5/Tools/CatComp)\n\n"
		                        "StormC von der Developer CD 2.1\n"
		                        "(ADCD_2.1:Contributions/Haage_&_Partner/StormC/)\n\n"
		                        "xen.font in der Größe 8 installiert im Fonts:-Verzeichnis\n"))

		(set #MSG_DEST "Wo möchten Sie Emperor installieren ?\nEin Verzeichnis \"Emperor\" wird automatisch erzeugt !")
		(set #MSG_MAKEDIR "Erzeuge Verzeichnis für Emperor ...")

		(set #MSG_GUIDE "\nBevor Sie mit der Installation beginnen,\n sollten Sie das \"Emperor.guide\" lesen !")
		(set #MSG_GUIDE_NOW "Jetzt lesen !")
		(set #MSG_GUIDE_DONE "Bereits erledigt !")

		(set #MSG_WHAT "Welche Programmteile möchten Sie installieren ?")
		(set #MSG_WHAT_PROGGY "Emperor Programm")
		(set #MSG_WHAT_DOCU "Emperor Dokumentation")
		(set #MSG_WHAT_CONFIG "Emperor Konfigurationsdatei")
		(set #MSG_WHAT_CATALOG "Emperor Katalog")
		(set #MSG_WHAT_PROJECT "Emperor Beispielprojekt")
		(set #MSG_WHAT_PIC "Emperor Startbild")

		(set #MSG_COPY_ICON "Kopiere Piktogramm ...")
		(set #MSG_COPY_PROGGY "Kopiere Hauptprogramm ...")
		(set #MSG_COPY_DOCU "Kopiere Dokumentation ...")
		(set #MSG_COPY_CONFIG "Kopiere Konfigurationsdatei ...")
		(set #MSG_COPY_CATALOG "Kopiere Katalog ...")
		(set #MSG_COPY_PROJECT "Kopiere Beispielprojekt ...")
		(set #MSG_COPY_PIC "Kopiere Startbild ...")

		(set #MSG_DOC "Die Dokumentation ist in deutsch und englisch verfügbar. Bitte wählen Sie die gewünschte Sprache aus !")
		(set #MSG_DOC_GERMAN "Deutsch")
		(set #MSG_DOC_ENGLISH "Englisch")
		
		(set #MSG_HELP "Leider ist keine Hilfe verfügbar !\nFalls sich Probleme ergeben, mailen Sie mir einfach: shamane@t-online.de")
		(set #MSG_DONE (cat "\nInstallation abgeschlossen !\n\n"
		                    "Viel Spaß bei der Softwareentwicklung mit Emperor !"))

	)
)

(if     (= 0 #languagefound)
	(
		(set #MSG_OS35 "Emperor needs at least AmigaOS 3.5 !")

		(set #MSG_DEST "Where do you want to install Emperor ?\nA drawer called \"Emperor\" will be created automatically !")
		(set #MSG_MAKEDIR "Creating directory for Emperor ...")
		(set #MSG_WELCOME1 (cat "\nWelcome to the installation of Emperor !\n"
		                        "Emperor is an object-oriented programming-language.\n\n"
		                        "Thank you for testing this program-packet.\n\n"
		                        "Emperor needs the Amiga Developer CD 2.1\n"
		                        "of Haage & Partner GmbH, to work properly.\n"
		                        "This CD includes e.g. an C/C++-Compiler and the support\n"
		                        "for developing of software for the new AmigaOS 3.5."))

		(set #MSG_WELCOME2 (cat "\nEmperor needs following files:\n\n"
		                        "CatComp from the Developer CD 2.1\n"
		                        "(ADCD_2.1:NDK/NDK_3.5/Tools/CatComp)\n\n"
		                        "StormC from the Developer CD 2.1\n"
		                        "(ADCD_2.1:Contributions/Haage_&_Partner/StormC/)\n\n"
		                        "xen.font in size 8 installed in the Fonts:-directory\n"))

		(set #MSG_GUIDE "\nYou should start installation only after having read \"Emperor.guide\" !")
		(set #MSG_GUIDE_NOW "Read now !")
		(set #MSG_GUIDE_DONE "Already done !")

		(set #MSG_WHAT "What do you want to install ?")
		(set #MSG_WHAT_PROGGY "Emperor main program")
		(set #MSG_WHAT_DOCU "Emperor documentation")
		(set #MSG_WHAT_CONFIG "Emperor configuration file")
		(set #MSG_WHAT_CATALOG "Emperor catalog")
		(set #MSG_WHAT_PROJECT "Emperor example project")
		(set #MSG_WHAT_PIC "Emperor startuppicture ...")

		(set #MSG_COPY_ICON "Copying icon ...")
		(set #MSG_COPY_PROGGY "Copying main program ...")
		(set #MSG_COPY_DOCU "Copying documentation ...")
		(set #MSG_COPY_CONFIG "Copying configuration file ...")
		(set #MSG_COPY_CATALOG "Copying catalog ...")
		(set #MSG_COPY_PROJECT "Copying example-project ...")
		(set #MSG_COPY_PIC "Copying startuppicture ...")

		(set #MSG_DOC "The documentation is available in german and english. Choose the one you'd like!")
		(set #MSG_DOC_GERMAN "German")
		(set #MSG_DOC_ENGLISH "English")

		(set #MSG_NOHELP "No help available. Sorry !")
		(set #MSG_DONE "\nInstallation complete !")
	)
)

;STARTING UP

(set #WHAT_PROGGY         1)
(set #WHAT_DOCU           2)
(set #WHAT_CONFIG         4)
(set #WHAT_CATALOG        8)
(set #WHAT_PROJECT       16)
(set #WHAT_PIC           32)

(set #OSVERSION (/ (getversion "workbench.library" (resident)) 65536))

(if     (< #OSVERSION 44)
        (abort #MSG_OS35)
)

(complete 0)

(message #MSG_WELCOME1)
(message #MSG_WELCOME2)

(complete 10)

(if     (= 1    (askbool
        		(prompt  #MSG_GUIDE)
	        	(choices #MSG_GUIDE_NOW
                                 #MSG_GUIDE_DONE
                        )
        		(help #MSG_NOHELP)
	        )
        )
        (if     (= "deutsch" @language)
              	(run "SYS:Utilities/Multiview Emperor_deutsch.guide")
        )
        (if     (= 0 #languagefound)
      	        (run "SYS:Utilities/Multiview Emperor_english.guide")
        )
)

(complete 20)

(set #what
	(askoptions
		(prompt  #MSG_WHAT)
		(choices #MSG_WHAT_PROGGY
			 #MSG_WHAT_DOCU
			 #MSG_WHAT_CONFIG
			 #MSG_WHAT_CATALOG
			 #MSG_WHAT_PROJECT
			 #MSG_WHAT_PIC
                )
		(help #MSG_NOHELP)
	)
)

(complete 30)

(if (<> 0 (bitand #WHAT_PROGGY #what))
	(
		(set #defdir @default-dest)

		(set #dest
			(expandpath
				(askdir
					(prompt #MSG_DEST)
					(help #MSG_NOHELP)
					(default #defdir)
				)
			)
		)

		(if (= 0 (exists (tackon #dest "Emperor")))
			(
				(makedir (tackon #dest "Emperor")
					(prompt #MSG_MAKEDIR)
					(help #MSG_NOHELP)
					(confirm)
				)
			)
		)
	)
)
(set #dest (tackon #dest "Emperor"))

(complete 40)

(if (<> 0 (bitand #WHAT_DOCU #what))
	(
		(set #defdoclang 0)
		(if (= "deutsch" @language) (set #defdoclang 1))

		(set #doclang 
			(askchoice
				(prompt #MSG_DOC)
				(choices #MSG_DOC_ENGLISH #MSG_DOC_GERMAN)
				(default #defdoclang)
				(help #MSG_NOHELP)
			)
		)
                (if (= 0 #doclang)
        		(copyfiles
	        		(prompt #MSG_COPY_DOCU)
		        	(source "Emperor_english.guide")
			        (dest #dest)
        			(all)
	        		(infos)
		        	(help #MSG_NOHELP)
			        (confirm)
        		)
                )
                (if (= 0 #doclang)
	        	(copyfiles
		        	(source "Emperor_english.guide.info")
			        (dest #dest)
                        )
                )
                (if (= 1 #doclang)
        		(copyfiles
	        		(prompt #MSG_COPY_DOCU)
		        	(source "Emperor_deutsch.guide")
			        (dest #dest)
        			(all)
	        		(infos)
		        	(help #MSG_NOHELP)
			        (confirm)
        		)
                )
                (if (= 1 #doclang)
	        	(copyfiles
		        	(source "Emperor_deutsch.guide.info")
			        (dest #dest)
                        )
                )
	)
)

(complete 50)

(if (<> 0 (bitand #WHAT_PROGGY #what))
	(
		(copyfiles
			(prompt #MSG_COPY_PROGGY)
			(source "Emperor")
			(dest #dest)
			(all)
			(infos)
			(help #MSG_NOHELP)
			(confirm)
		)
		(copyfiles
			(source "Emperor.info")
			(dest #dest)
		)
	)
)

(complete 60)

(if (<> 0 (bitand #WHAT_CONFIG #what))
	(
		(copyfiles
			(prompt #MSG_COPY_CONFIG)
			(source "Emperor.prefs")
			(dest #dest)
			(all)
			(infos)
			(help #MSG_NOHELP)
			(confirm)
		)
		(copyfiles
			(source "Emperor.prefs.info")
			(dest #dest)
		)
	)
)

(complete 70)

(if (<> 0 (bitand #WHAT_PROJECT #what))
	(
		(copyfiles
			(prompt #MSG_COPY_PROJECT)
			(source "Projects/")
			(dest (tackon #dest "Projects"))
			(all)
			(infos)
			(help #MSG_NOHELP)
			(confirm)
		)
		(copyfiles
			(source "Projects.info")
			(dest #dest)
		)
	)
)

(complete 75)

(if (<> 0 (bitand #WHAT_PIC #what))
	(
		(copyfiles
			(prompt #MSG_COPY_PIC)
			(source "Emperor.pic")
			(dest #dest)
			(all)
			(infos)
			(help #MSG_NOHELP)
			(confirm)
		)
	)
)

(complete 80)

(if (<> 0 (bitand #WHAT_CATALOG #what))
	(
		(set #catlang 0)
		(if (= "deutsch" @language) (set #catlang 1))

                (if (= 1 #catlang)
        		(copyfiles
	        		(prompt #MSG_COPY_CATALOG)
		        	(source "Catalogs/deutsch/Emperor.catalog")
			        (dest "SYS:Locale/Catalogs/deutsch")
        			(all)
	        		(infos)
		        	(help #MSG_NOHELP)
			        (confirm)
        		)
                )
	)
)

(complete 90)

(set #MSG_STARTUPSTUFF (cat "Assign Emperor: " #dest "\n"))

(if     (= "deutsch" @language)
	(
                (set #MSG_STARTUP (cat "\nUm Emperor korrekt arbeiten zu lassen, sind\n Änderungen in der User-Startup notwendig:\n\n" #MSG_STARTUPSTUFF))
	)
	(
                (set #MSG_STARTUP (cat "\nTo get Emperor work well there has to be made\n some changes to your User-Startup:\n\n" #MSG_STARTUPSTUFF))
	)
)

(startup "Emperor"
        (prompt #MSG_STARTUP)
        (help #MSG_NOHELP)
        (command #MSG_STARTUPSTUFF)
)

(makeassign "Emperor" #dest)

(complete 100)

(exit #MSG_DONE (quiet))
