home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 109 / EnigmaAmiga109CD.iso / software / utilities / mrq / install < prev    next >
Text File  |  2000-01-21  |  24KB  |  640 lines

  1. ;************************************************************
  2. ;* Installation script for MRQ, the MUI requester improver  *
  3. ;* $VER: MRQ_Install 2.4 (21-Jan-00)                        *
  4. ;* © 1998-2000 by Matthias Bethke <Matthias.Bethke@gmx.net> *
  5. ;*                                                          *
  6. ;* ToDo: - uninstall option                                 *
  7. ;*       - logfile                                          *
  8. ;************************************************************
  9.  
  10. (procedure F_delay                        ;debugging :)
  11.     (set #delayval 10000)
  12.     (until
  13.         (<= #delayval 0)
  14.         (set #delayval (- #delayval 1))
  15.     )
  16. )
  17.  
  18. (procedure F_expertmsg _msg
  19.     (if
  20.         (> @user-level 1)
  21.         (message (cat "\n\n" _msg))
  22.     )
  23. )
  24.  
  25. (procedure F_expertworking _msg
  26.     (if
  27.         (> @user-level 1)
  28.         (working "\n\n" _msg)
  29.     )
  30. )
  31.  
  32. (procedure F_GetDir _prompt _help _default
  33.     (set #Where
  34.         (askdir
  35.             (prompt _prompt)
  36.             (help _help)
  37.             (default _default)
  38.         )
  39.     )
  40. )
  41.  
  42. (procedure F_findconfig
  43.     (set #Configfile "")
  44.     (iconinfo (dest #Installname) (gettooltype "CONFIGFILE" "#Configfile"))
  45.     (if    (not (strlen #Configfile))
  46.         (
  47.         (F_GetDir #P_WConfig #H_WConfig #WhereMRQ)
  48.         (set #Configfile (tackon #Where "MRQ.config"))
  49.         )
  50.     )
  51. )
  52.  
  53. (procedure F_findimages
  54.     (set #WhereImages "")
  55.     (iconinfo (dest #Installname) (gettooltype "IMAGES" "#WhereImages"))
  56.     (if    (not (strlen #WhereImages))
  57.         (
  58.         (F_GetDir #P_WImages #H_WImages #WhereMRQ)
  59.         (set #WhereImages (tackon #Where "MRQ-images"))
  60.         )
  61.     )
  62. )
  63.  
  64. (procedure F_copyconfig
  65.     (F_expertmsg (cat #M_CopyingConfig #Configfile))
  66.     (copyfiles
  67.         (source #cfgsrc)
  68.         (dest (pathonly #Configfile))
  69.         (newname "MRQ.config")
  70.         (optional askuser)
  71.     )
  72. )
  73.  
  74. (procedure F_copymrq icon
  75.     (if icon
  76.         (
  77.             (F_expertmsg (cat #M_CopyingMRQ #M_CopyingMRQIcon #M_To #WhereMRQ))
  78.             (copyfiles (source "MRQ") (infos) (dest #WhereMRQ) (optional askuser))
  79.         )
  80.         (
  81.             (F_expertmsg (cat #M_CopyingMRQ #M_To #WhereMRQ #M_KeepingMRQIcon))
  82.             (copyfiles (source "MRQ") (dest #WhereMRQ) (optional askuser))
  83.         )
  84.     )
  85. )
  86.  
  87.  
  88. (procedure F_InstallNImcc
  89.     (copylib (prompt #M_InstallNImcc) (help #H_InstallNImcc) (source "MUI/Libs/NewImage.mcc") (dest "MUI:libs/MUI") (confirm) (optional askuser))
  90. )
  91.  
  92. (procedure F_ConfigMRQ
  93.     (if (not #WhereImages) (F_findimages))
  94.     (set #CfgOpts1
  95.         (askoptions
  96.             (prompt #P_ConfigOpts1)
  97.             (choices "pCENTERTEXT" "FRONTSCREEN" "MOUSEREQ" "NORTPATCH" "SAMEWIDTH" "SINGLEFRAME" "SIZEABLE" "TRANSPARENCY" "DEFAULTICON" "DEBUG")
  98.             (help #H_ConfigOpts1)
  99.             (default 272)
  100.         )
  101.     )
  102.     (set #CfgOpts2
  103.         (askoptions
  104.             (prompt #P_IButtons)
  105.             (help #H_IButtons)
  106.             (choices #C_UseIMB1 #C_UseIMB2)
  107.             (default 3)
  108.         )
  109.     )
  110.     (if (in #CfgOpts2 0 1)
  111.         (
  112.             (set #IButtonSet
  113.                 (askchoice
  114.                     (prompt #P_IButtonSet)
  115.                     (help #H_IButtonSet)
  116.                     (choices #C_SelectIBSet1 #C_SelectIBSet2 #C_SelectIBSet3)
  117.                     (default 0)
  118.                 )
  119.             )
  120.             (if (= #IButtonSet 0)
  121.                 (
  122.                     (set #IButton_Yes (tackon #WhereImages "MRQwin_Yes.brush"))
  123.                     (set #IButton_No (tackon #WhereImages "MRQwin_No.brush"))
  124.                     (set #IButton_Cancel (tackon #WhereImages "MRQwin_Cancel.brush"))
  125.                 )
  126.                 (if (= #IButtonSet 1)
  127.                     (
  128.                         (set #IButton_Yes (tackon #WhereImages "MRQ_Yes.brush"))
  129.                         (set #IButton_No (tackon #WhereImages "MRQ_No.brush"))
  130.                         (set #IButton_Cancel (tackon #WhereImages "MRQ_Cancel.brush"))
  131.                     )
  132.                     (
  133.                         (set #IButton_Yes
  134.                             (askfile(prompt (#P_AskCustomIB #W_Yes))    (help #H_AskCustomIB)    (default #WhereImages))
  135.                         )
  136.                         (set #IButton_No
  137.                             (askfile(prompt (#P_AskCustomIB #W_No))    (help #H_AskCustomIB)    (default #WhereImages))
  138.                         )
  139.                         (set #IButton_Cancel
  140.                             (askfile(prompt (#P_AskCustomIB #W_Cancel))    (help #H_AskCustomIB)    (default #WhereImages))
  141.                         )
  142.                     )
  143.                 )
  144.             )
  145.             (if (in #CfgOpts2 1)
  146.                 (set #IButtonsByTextStr
  147.                     (cat
  148.                         (askstring
  149.                             (prompt (#P_IBBT #W_Yes))
  150.                             (help #H_IBBT)
  151.                             (default #IBBTDefaultString_Yes)
  152.                         ) ","
  153.                         (askstring
  154.                             (prompt (#P_IBBT #W_No))
  155.                             (help #H_IBBT)
  156.                             (default #IBBTDefaultString_No)
  157.                         ) ","
  158.                         (askstring
  159.                             (prompt (#P_IBBT #W_Cancel))
  160.                             (help #H_IBBT)
  161.                             (default #IBBTDefaultString_Cancel)
  162.                         )
  163.                     )
  164.                 )
  165.             )
  166.         )
  167.     )
  168.     (set #ImageQuality
  169.         (select
  170.             (askchoice
  171.                 (prompt #P_ImageQuality)
  172.                 (help #H_ImageQuality)
  173.                 (choices #C_ImageQuality1 #C_ImageQuality2 #C_ImageQuality3 #C_ImageQuality4)
  174.                 (default 2)
  175.             )
  176.             "low" "medium" "high" "best"
  177.         )
  178.     )
  179.  
  180.     (set #UseAfterPatch 
  181.         (askbool
  182.             (prompt #P_UseAfterPatch)
  183.             (help #H_AfterPatch)
  184.             (choices #W_Yes #W_No)
  185.             (default 0)
  186.         )
  187.     )
  188.     (if #UseAfterPatch
  189.         (set #AfterPatch
  190.             (askfile
  191.                 (prompt #P_AfterPatch)
  192.                 (help #H_AfterPatch)
  193.                 (default "AssignWedge")
  194.             )
  195.         )
  196.     )
  197.  
  198.     (set #loop 1)
  199.     (while #loop
  200.         (set #AvoidTasksS
  201.             (askstring
  202.                 (prompt (cat #P_AvoidTasks "\"" #AvoidTasks "\""))
  203.                 (help #H_AvoidTasks)
  204.             )
  205.         )
  206.         (if (or (patmatch "# " #AvoidTasksS) (= #AvoidTasksS ""))
  207.             (set #loop 0)
  208.             (set #AvoidTasks (cat #AvoidTasks (if #AvoidTasks "|" "") #AvoidTasksS))
  209.         )
  210.     )
  211.  
  212.     (F_SetTooltypes)
  213. )
  214.  
  215. (procedure F_SetTooltypes
  216.     (working #M_SettingAllTT)
  217.  
  218.     (F_Booltype "CENTERTEXT"        (in #CfgOpts1 0))
  219.   (F_Booltype "FRONTSCREEN"        (in #CfgOpts1 1))
  220.     (F_Booltype "MOUSEREQ"            (in #CfgOpts1 2))
  221.     (F_Booltype "NORTPATCH"            (in #CfgOpts1 3))
  222.     (F_Booltype "SAMEWIDTH"            (in #CfgOpts1 4))
  223.     (F_Booltype "SINGLEFRAME"        (in #CfgOpts1 5))
  224.     (F_Booltype "SIZEABLE"            (in #CfgOpts1 6))
  225.     (F_Booltype "TRANSPARENCY"    (in #CfgOpts1 7))
  226.     (F_Booltype "DEFAULTICON"        (in #CfgOpts1 8))
  227.     (F_Booltype "DEBUG"                    (in #CfgOpts1 9))
  228.  
  229.     (F_SetTT "QUALITY" #ImageQuality)
  230.  
  231.     (F_ProcessTT "AFTERPATCH" #AfterPatch #UseAfterPatch)
  232.  
  233.     (F_ProcessTT "AVOIDTASKS" #AvoidTasks #AvoidTasks)
  234.  
  235.     (if (in #CfgOpts2 0 1)
  236.         (
  237.             (F_SetTT "IMG_YES" #IButton_Yes)
  238.             (F_SetTT "IMG_NO" #IButton_No)
  239.             (F_SetTT "IMG_CANCEL" #IButton_Cancel)
  240.  
  241.             (F_ProcessTT "IBUTTONSBYTEXT" #IButtonsByTextStr (in #CfgOpts2 1))
  242.         )
  243.         (
  244.             (working #W_Unsetting #W_IBTT)
  245.             (F_RemTT "IMG_YES")
  246.             (F_RemTT "IMG_NO")
  247.             (F_RemTT "IMG_CANCEL")
  248.             (F_RemTT "IBUTTONSBYTEXT")
  249.         )
  250.     )
  251. )
  252.  
  253.  
  254. (procedure F_Booltype _name _onoff
  255.     (F_ProcessTT _name "1" _onoff)
  256. )
  257.  
  258. (procedure F_ProcessTT _name _value _onoff
  259.     (if _onoff
  260.         (F_SetTT _name _value)
  261.         (F_RemTT _name)
  262.     )
  263. )
  264.  
  265. (procedure F_SetTT _name _value
  266.     (F_expertworking (cat #W_Setting #W_Tooltype ":\n" _name))
  267.     (tooltype (dest #Installname) (settooltype _name _value))
  268. ;    (F_delay)
  269. )
  270.  
  271. (procedure F_RemTT _name
  272.     (F_expertworking (cat #W_Unsetting #W_Tooltype ":\n" _name))
  273.     (tooltype (dest #Installname) (settooltype _name))
  274. ;    (F_delay)
  275. )
  276.  
  277.  
  278.  
  279. (procedure F_InstallMRQ
  280.     (F_GetDir #P_WInstall #H_WInstall "SYS:wbstartup")
  281.     (set #WhereMRQ #Where)
  282.     
  283.     (set @default-dest #WhereMRQ)
  284.     (set #Installname (tackon #WhereMRQ "MRQ"))
  285.     
  286.     (set #Oldversion (getversion #Installname))
  287.     (set #MRQVersion (getversion "MRQ"))
  288.     (set #OldVer (/ #Oldversion 65536))
  289.     (set #OldRev (- #Oldversion (* #OldVer 65536)))
  290.     (set #MRQVer (/ #MRQVersion 65536))
  291.     (set #MRQRev (- #MRQVersion (* #MRQVer 65536)))
  292.     (set #OldExists (or #OldVer #OldRev))
  293.     
  294.     (message (cat
  295.         (cat #M_VersionToInstall #MRQVer "." #MRQRev "\n\n")
  296.         (if #OldExists
  297.             (cat #M_InstalledVersion #OldVer "." #OldRev)
  298.             (#M_NoInstalledVer)
  299.         ))
  300.     )
  301.     
  302.     (F_findconfig)
  303.     (F_findimages)
  304.     
  305.     (set #CopyCfg
  306.         (if (exists #Configfile)
  307.             (askbool
  308.                 (prompt (cat #P_CopyCfg1 #Configfile #P_CopyCfg2))
  309.                 (help #H_CopyCfg)
  310.             )
  311.             1
  312.         )
  313.     )
  314.     
  315.     (if (exists #WhereImages)
  316.         (set #CheckNewImgs 
  317.             (askbool
  318.                 (prompt (cat #P_CheckImageDir #WhereImages " ?"))
  319.                 (help #H_CheckImageDir)
  320.                 (choices #C_CheckNewImgs1    #C_CheckNewImgs2)
  321.             )
  322.         )
  323.     )
  324.     
  325.     (complete 10)
  326.     
  327.     (working "Copying the MRQ executable")
  328.     (if #OldExists
  329.         (F_copymrq 0)
  330.         (
  331.             (F_copymrq 1)
  332.             (tooltype (dest #Installname) (settooltype "CONFIGFILE" #Configfile))
  333.             (tooltype (dest #Installname) (settooltype "IMAGES" #WhereImages))
  334.         )
  335.     )
  336.     
  337.     (complete 30)
  338.     
  339.     (if #CopyCfg (F_copyconfig))
  340.     
  341.     (complete 50)
  342.     
  343.     (if #CheckNewImgs
  344.         (
  345.             (foreach "MRQ-images" "#?.(ilbm|iff|brush|jpeg)"
  346.                 (
  347.                     (if    (not (exists (tackon #WhereImages @each-name)))
  348.                         (if (not (> @each-type 0))
  349.                             (
  350.                                 (F_expertmsg (cat #M_Copying1Img @each-name))
  351.                                 (copyfiles (source (tackon "MRQ-images" @each-name)) (dest #WhereImages) (optional askuser))
  352.                             ) 
  353.                         )
  354.                     )
  355.                 )
  356.             )
  357.             (F_expertmsg #M_ImgDirUp2D)
  358.         )
  359.         (if (not #OldExists)
  360.             (
  361.                 (F_expertmsg (cat #M_CopyingAllImages #WhereImages))
  362.                 (foreach "MRQ-images" "#?.(ilbm|iff|brush|jpeg)"
  363.                         (if (not (> @each-type 0))
  364.                             (copyfiles (source (tackon "MRQ-images" @each-name)) (dest #WhereImages) (optional askuser))
  365.                         )
  366.                 )
  367.             )
  368.         )
  369.     )
  370.     
  371.     (complete 70)
  372.     (F_InstallNImcc)
  373.     
  374.     (complete 80)
  375.     (if
  376.         (askbool
  377.             (prompt #P_ConfigureMRQ)
  378.             (help #H_PConfigureMRQ)
  379.         )
  380.         (F_ConfigMRQ)
  381.     )
  382.     
  383.     (complete 100)
  384. )
  385.  
  386.  
  387.  
  388.  
  389.  
  390. ;************** START **************
  391. (if (< @installer-version 2752524) (abort "This script requires Installer V42.12 or greater!"))
  392.  
  393. ; !4 NOVICEs
  394. (if (= @user-level 0) (set @user-level 1))
  395.  
  396. ;no english-only config available yet
  397. (if (= @language "english") (set #cfgsrc "MRQ.config") (set #cfgsrc "MRQ.config"))
  398.  
  399.  
  400. ;************** initialize variables **************
  401. (if (= @language "deutsch")
  402.     (
  403.     (set #W_Yes "Ja")
  404.     (set #W_No "Nein")
  405.     (set #W_Cancel "Abbruch")
  406.     (set #W_Install "Installieren")
  407.     (set #W_Configure "Konfigurieren")
  408.     (set #W_Setting "Setze ")
  409.     (set #W_Unsetting "Lösche ")
  410.     (set #M_Welcome "\n\nWillkommen zum Installationsprogramm für\n\nMRQ\n\nThe MUI requester improver")
  411.     (set #P_InstOrCfg "Was wollen sie machen?")
  412.     (set #H_InstOrCfg (cat "\"" #W_Install "\" installiert MRQ komplett neu oder aktualisiert "
  413.     "eine vorhandene Version, danach kann das Programm konfiguriert werden\n\"" #W_Configure
  414.     "\" ändert nur die Tooltypes eines bereits installierten MRQ, ohne andere Dateien zu"
  415.     " verändern\n"))
  416.     (set #E_Need020 "MRQ braucht mindestens einen 68020-Prozessor!")
  417.     (set #P_WInstall "Wo soll MRQ installiert werden?")
  418.     (set #H_WInstall "Das eigentliche Programm wird in dieses Verzeichnis kopiert.Wenn MRQ beim Booten automatisch gestartet werden soll, übernehmen sie einfach das voreingestellte Verzeichnis")
  419.     (set #P_WImages "Wohin sollen die Bilder kopiert werden?\n(ein Verzeichnis wird angelegt)")
  420.     (set #H_WImages "Der Installer wird ein Unterverzeichnis namens\n\"MRQ-Images\"\nim ausgewählten Verzeichnis anlegen und dorthin alle Bilder kopieren")
  421.     (set #P_WConfig "Wohin soll die Konfigurationsdatei kopiert werden?")
  422.     (set #H_WConfig "Eine kleine Datei namens \"MRQ.config\" wird in dieses Verzeichnis kopiert")
  423.     (set #M_NoInstalledVer "Bisher ist keine Version installiert")
  424.     (set #M_CopyingConfig "Kopiere Konfigurationsdatei nach ")
  425.     (set #M_CopyingMRQ "Kopiere MRQ ")
  426.     (set #M_To "nach ")
  427.     (set #M_CopyingMRQIcon "und sein Piktogramm ")
  428.     (set #M_KeepingMRQIcon "\n(das alte Piktogramm wird nicht überschrieben)")
  429.     (set #M_VersionToInstall "\n\nZu installierende Version: V")
  430.     (set #M_InstalledVersion "Bisher installierte Version: V")
  431.     (set #P_CopyCfg1 "Konfigurationsdatei ")
  432.     (set #P_CopyCfg2 " existiert schon.\nMit neuer Konfiguration überschreiben?")
  433.     (set #H_CopyCfg "Geben sie an, ob sie ihre alte Konfigurationsdatei mit der neuen aus dieser Distribution überschreiben wollen oder nicht")
  434.     (set #C_CheckNewImgs1 "Neue Bilder kopieren")
  435.     (set #C_CheckNewImgs2 "Nichts kopieren")
  436.     (set #P_CheckImageDir "\n\nSoll die Distribution auf neue Bilder überprüft werden?\nNeue Bilder würden installiert nach ")
  437.     (set #H_CheckImageDir (cat
  438.     "Wenn sie \"" #C_CheckNewImgs1 "\" auswählen, überprüft der Installer, ob in der Distribution "
  439.     "neue Bilder enthalten sind, die noch nicht in ihrem Bilderverzeichnis installiert sind. "
  440.     "Sollte er welche finden, werden sie dorthin kopiert.\n\n\"" #C_CheckNewImgs2
  441.     "\" beläßt das Bilderverzeichnis genauso wie es jetzt ist."))
  442.     (set #M_CopyingAllImages "Kopiere alle Bilder nach ")
  443.     (set #M_Copying1Img "Kopiere Bild: ")
  444.     (set #M_ImgDirUp2D "Bilderverzeichnis ist auf dem aktuellen Stand!")
  445.     (set #P_ConfigureMRQ "Wollen sie MRQ jetzt konfigurieren?")
  446.     (set #H_PConfigureMRQ "Sie können MRQs Grundparameter jetzt konfigurieren, indem sie menügeführt einige Tooltypes setzen.")
  447.     (set #P_ConfigOpts1 "Allgemeine Optionen")
  448.     (set #H_ConfigOpts1 (cat
  449.     "Die Bedeutung der Optionen im einzelnen:\n\n"
  450.     "CENTERTEXT  : Alle Texte im Requester zentrieren (sonst nur bei einzeiligen Requestern)\n\n" 
  451.     "FRONTSCREEN: Requester immer auf dem vordersten Bildschirm öffnen (Hack!)\n\n"
  452.     "MOUSEREQ: Requester an der Mausposition statt zentriert auf dem Bildschirm öffnen\n\n"
  453.     "NORTPATCH: reqtools.library nicht patchen\n\n"
  454.     "SAMEWIDTH: Alle Knöpfe gleich breit darstellen (sieht besser aus)\n\n"
  455.     "SINGLEFRAME: Einen Rahmen um Bild und Text legen statt beide getrennt einzurahmen (Geschmackssache)\n\n"
  456.     "SIZEABLE: Requester mit Größengadget versehen (nicht empfehlenswert)\n\n"
  457.     "TRANSPARENCY: MUIs Pattern oder Hintergrundfarbe durchscheinen lassen, wo in Bildern Hintergrundfarbe (Nummer 0) vorkommt\n\n"
  458.     "DEFAULTICON: Wenn der Requestertext auf kein vorkonfiguriertes Muster paßt, kann MRQ das Icon des aufrufenden Programms (falls vorhanden) anzeigen, wenn diese Option gesetzt.\n\n"
  459.     "DEBUG: Debug-Konsole aufmachen. Nur zur Fehlersuche sinnvoll!\n\n"
  460.     ))
  461.     (set #P_IButtons "Imagebutton-Optionen")
  462.     (set #H_IButtons "Bitte lesen sie die Anleitung für nähere Informationen zu den Imagebuttons!") 
  463.   (set #C_UseIMB1 "pKnöpfe mit Sybolen verwenden")
  464.     (set #C_UseIMB2 "Symbole nach Text auswählen")
  465.     (set #P_IButtonSet "Bitte wählen sie ein Set Knöpfe aus")
  466.     (set #H_IButtonSet "Die zwei mitgelieferten Sets:\n\nM$ Windows-artig\nZiemlich groß, sehen ab Auflösungen von 800x600 gut aus\n\nKlein\nWie der Name sagt, ein kleineres Set für kleinere Auflösungen")
  467.     (set #C_SelectIBSet1 "pM$ Windoofs")
  468.     (set #C_SelectIBSet2 "Klein")
  469.     (set #C_SelectIBSet3 "Eigene (Bilder selbst auswählen)")
  470.     (set #P_AskCustomIB "Bitte ein Bild auswählen für \"%s\"")
  471.     (set #H_AskCustomIB "Wählen sie hier ein Bild aus. Es darf jedes Format haben, für das sie einen datatype installiert haben")
  472.     (set #P_IBBT "Bitte geben  sie die Wörter für \"%s\" ein")
  473.     (set #H_IBBT (cat "Das entsprechende Bild wird auf den Imagebutton gelegt, wenn eins der"
  474.     "angegebenen Wörter auf dem Knopf gefunden wird.\nDas Format ist: beliebig viele Wörter (Groß-"
  475.     "/Kleinschreibung unwichtig), getrennt mit senkrechten Strichen/\"Pipes\" ('|')"))
  476.     (set #P_ImageQuality "Mit welcher Qualität sollen die Bilder auf den Bildschirm angepaßt werden?\n(Bei vielen freien Farben ist \"Low\" völlig ausreichend!)")
  477.     (set #H_ImageQuality (cat
  478.     "Diese Einstellung beeinflußt sowohl die Genauigkeit, mit der die \"Zeichenstifte\" für das Bild vom "
  479.     "System angefordert werden als auch den Dithermodus. \"Low\" dithert überhaupt nicht, was auch ein Vorteil sein kann!"))
  480.     (set #C_ImageQuality1 "pNiedrig")
  481.     (set #C_ImageQuality2 "Mittel")
  482.     (set #C_ImageQuality3 "Hoch")
  483.     (set #C_ImageQuality4 "Beste")
  484.     (set #P_UseAfterPatch "Soll nach dem Installieren der Patches ein weiteres Programm gestartet werden (z.B. AssignWedge)?")
  485.     (set #P_AfterPatch "Bitte das Programm auswählen!")
  486.     (set #H_AfterPatch (cat "Da MRQ die \"gepatchten\" Funktionen im Betriebssystem nicht nur "
  487.     "verbessert, sondern komplett ersetzt, funktionieren andere Programme evtl. nicht mehr "
  488.     "korrekt, die dieselben Funktionen bereits gepatcht haben.\nUm so etwas zu vermeiden, kann "
  489.     "MRQ ein Programm (oder Shellscript) starten, nachdem alle Patches installiert sind."))
  490.     (set #P_AvoidTasks "Bitte Namen von Tasks eingeben, die MRQ nicht benutzen sollen\n(leerer String zum Beenden)\nBisher: ")
  491.     (set #H_AvoidTasks (cat "Sollte MRQ mit irgendwelchen Programmen nicht richtig funktionieren, "
  492.     "können sie ihn hiermit für bestimmte Tasks deaktivieren.\nBitte die Namen einzeln eingeben - "
  493.     "der Installer generiert automatisch as entsprechende Tooltype. AmigaDOS-Patterns im Namen sind "
  494.     "erlaubt."))
  495.     (set #P_WInstalled "Wo ist MRQ auf ihrem System installiert?")
  496.     (set #H_WInstalled "Sie müssen MRQ installiert haben, bevor sie es konfigurieren können. Wählen sie nur das Verzeichnis aus, das Pogramm darin muß \"MRQ\" heißen und ein Piktogramm haben")
  497.     (set #E_CantFindMRQ "In diesem Verzeichnis ist kein Programm namens \"MRQ\"!")
  498.     (set #W_IBTT "Imagebutton-Tooltypes")
  499.     (set #W_IBBT "IBUTTONSBYTEXT")
  500.     (set #W_Tooltype "Tooltype")
  501.     (set #IBBTDefaultString_Yes "yes|ok|delete|retry|nochmal|ja")
  502.     (set #IBBTDefaultString_No "no|nein")
  503.     (set #IBBTDefaultString_Cancel "cancel|abort|abbr")
  504.     (set #M_SettingAllTT "Setze die Tooltypes")
  505.     (set #M_InstallNImcc "Installiere NewImage.mcc")
  506.     (set #H_InstallNImcc "NewImage.mcc ist eine MUI-Klasse, die zur Darstellung der Bilder unbedingt benötigt wird.")
  507.     )
  508. ; English texts
  509.     (
  510.     (set #W_Yes "Yes")
  511.     (set #W_No "No")
  512.     (set #W_Cancel "Cancel")
  513.     (set #W_Install "Install")
  514.     (set #W_Configure "Configure")
  515.     (set #W_Setting "Setting ")
  516.     (set #W_Unsetting "Deleting ")
  517.     (set #M_Welcome "\n\nWelcome to\n\nMRQ\n\nThe MUI requester improver")
  518.     (set #P_InstOrCfg "What do you want to do?")
  519.     (set #H_InstOrCfg (cat "\"" #W_Install "\" installs or upgrades MRQ and lets you configure "
  520.     "it afterwards.\n\"" #W_Configure "\" only changes MRQ's tooltypes without modifying any "
  521.     "other files\n"))
  522.     (set #E_Need020 "MRQ requires at least a 68020 CPU!")
  523.     (set #P_WInstall "Where do you want MRQ to be installed?")
  524.     (set #H_WInstall "The MRQ executable will be copied to this directory. If you want MRQ to start automatically on bootup, just accept the default.")
  525.     (set #P_WImages "Where do you want the images to be copied?\n(a directory will be created)")
  526.     (set #H_WImages "The installer will create a directory called\n\"MRQ-Images\"\ninside the directory you select and copy all images there")
  527.     (set #P_WConfig "Where do you want to keep the config file?\n")
  528.     (set #H_WConfig "A small file called \"MRQ.config\" will be copied to this directory")
  529.     (set #M_NoInstalledVer "There is no previously installed version")
  530.     (set #M_CopyingConfig "Copying config file as ")
  531.     (set #M_CopyingMRQ "Copying MRQ ")
  532.     (set #M_To "to ")
  533.     (set #M_CopyingMRQIcon "and its icon ")
  534.     (set #M_KeepingMRQIcon "\n(old icon will not be overwritten)")
  535.     (set #M_VersionToInstall "\n\nVersion to install: V")
  536.     (set #M_InstalledVersion "Version already installed: V")
  537.     (set #P_CopyCfg1 "Config file ")
  538.     (set #P_CopyCfg2 " already exists\nCopy new config anyway?")
  539.     (set #H_CopyCfg "Select whether you want to overwrite your old config with the new one or not")
  540.     (set #C_CheckNewImgs1 "Copy new images")
  541.     (set #C_CheckNewImgs2 "Don't copy anything")
  542.     (set #P_CheckImageDir "\n\nShould the distribution be checked for any new images that are not yet installed in ")
  543.     (set #H_CheckImageDir (cat
  544.     "If you select \"" #C_CheckNewImgs1 "\", installer will check for files in the distribution's MRQ-images "
  545.     "directory that you don't have in your image directory yet and copy them if it finds any.\n\n\""
  546.     #C_CheckNewImgs2 "\" leaves your image directory as it is."))
  547.     (set #M_CopyingAllImages "Copying all images to ")
  548.     (set #M_Copying1Img "Copying image: ")
  549.     (set #M_ImgDirUp2D "Image directory is up to date!")
  550.     (set #P_ConfigureMRQ "Do you want to configure MRQ now?")
  551.     (set #H_PConfigureMRQ "You may configure MRQ's basic behavior by setting some tooltypes now")
  552.     (set #P_ConfigOpts1 "General options")
  553.     (set #H_ConfigOpts1 (cat
  554.     "Here's the meaning of the individual options:\n\n"
  555.     "CENTERTEXT  : Center all text displayed in a requester\n\n" 
  556.     "FRONTSCREEN: Open requesters on frontmost screen (hack!)\n\n"
  557.     "MOUSEREQ: Open requesters at the mouseposition instead of centered on the screen\n\n"
  558.     "NORTPATCH: Do not patch reqtools.library\n\n"
  559.     "SAMEWIDTH: Make all buttons the same width (looks nicer)\n\n"
  560.     "SINGLEFRAME: Put a single frame around image and text instead of one around each\n\n"
  561.     "SIZEABLE: Make requesters sizeable (not recommended)\n\n"
  562.     "TRANSPARENCY: Let MUI's image background shine through where images have background color (#0)\n\n"
  563.     "DEFAULTICON: If the requester text matches none of the pre-configured patterns, MRQ can instead show the calling program's icon (given it exists), if this option is set.\n\n"
  564.     "DEBUG: Open the debug-console. Only makes sense for tracking down errors!\n\n"
  565.     ))
  566.     (set #P_IButtons "Imagebutton options")
  567.     (set #H_IButtons "See the guide file for detailed info on the imagbutton options!") 
  568.   (set #C_UseIMB1 "pUse imagebuttons")
  569.     (set #C_UseIMB2 "Select by buttontext")
  570.     (set #P_IButtonSet "Select the set of buttons to use")
  571.     (set #H_IButtonSet "The two included button sets:\n\nM$ Windoze style\nQuite big, looks good on 800x600 and up\n\nSmall\nAs it says, a smaller set for lower resolutions")
  572.     (set #C_SelectIBSet1 "pM$ Windoze")
  573.     (set #C_SelectIBSet2 "Small")
  574.     (set #C_SelectIBSet3 "Custom (select images yourself)")
  575.     (set #P_AskCustomIB "Select an image for \"%s\"")
  576.     (set #H_AskCustomIB "Select an image file. This can be in any format you have a datatype for")
  577.     (set #P_IBBT "Select an imagebutton matchtext for \"%s\"")
  578.     (set #H_IBBT "The format of string is:\nAny number of words you want to match on, separated by pipe characters ('|')")
  579.     (set #P_ImageQuality "Select an image quality\n(with lots of free pens, \"low\" should be just fine!)")
  580.     (set #H_ImageQuality (cat
  581.     "This determines both the precision with which to allocate pens for the picture from the system and "
  582.     "the dither mode. If dithering makes images look bad on your"
  583.     "system, try \"Low\"."))
  584.     (set #C_ImageQuality1 "pLow")
  585.     (set #C_ImageQuality2 "Medium")
  586.     (set #C_ImageQuality3 "High")
  587.     (set #C_ImageQuality4 "Best")
  588.     (set #P_UseAfterPatch "Should another program (like AssignWedge) be started by MRQ after it has patched the OS?")
  589.     (set #P_AfterPatch "Please select the program!")
  590.     (set #H_AfterPatch (cat "For MRQ not only improves \"patched\" functions but completely "
  591.     "replaces them, other programs that happen to have patched the same functions are likely "
  592.     " not to work correctly with MRQ installed.\nTo get around this problem, MRQ can start one "
  593.     "such program (or shellscript) after it has applied its patches"))
  594.     (set #P_AvoidTasks "Please enter names of tasks that should not use MRQ, one at a time.\nEnter an empty string to quit\nCurrent pattern: ")
  595.     (set #H_AvoidTasks (cat "If MRQ should cause problems with some programs, you can deactivate "
  596.     "it here for certain tasks. Please enter them one at a time, the installer will automatically "
  597.     "generate the correct tooltype.\nYou may use AmigaDOS patterns here."))
  598.     (set #P_WInstalled "Where is MRQ installed on your system?")
  599.     (set #H_WInstalled "You need to have MRQ installed before you can configure it. Select only the directory, the executable must be called \"MRQ\" and have an icon")
  600.     (set #E_CantFindMRQ "There is no file called \"MRQ\" in this directory!")
  601.     (set #W_IBTT "imagebutton tooltypes")
  602.     (set #W_IBBT "IBUTTONSBYTEXT")
  603.     (set #W_Tooltype "tooltype")
  604.     (set #IBBTDefaultString_Yes "yes|ok|delete|retry")
  605.     (set #IBBTDefaultString_No "no")
  606.     (set #IBBTDefaultString_Cancel "cancel|abort")
  607.     (set #M_SettingAllTT "Setting tooltypes")
  608.     (set #M_InstallNImcc "Installing NewImage.mcc")
  609.     (set #H_InstallNImcc "NewImage.mcc is a MUI-class which is required for MRQ to render its images.")
  610.     )
  611. )    
  612.  
  613.  
  614. ;************** work starts **************
  615. (message #M_Welcome)
  616. (welcome)
  617.  
  618. (set #CPU (database "cpu"))
  619. (if (< #CPU 68020) (abort #E_Need020))
  620.  
  621. (if
  622.     (askchoice
  623.         (prompt #P_InstOrCfg)
  624.         (help #H_InstOrCfg)
  625.         (choices (cat "p" #W_Install) #W_Configure)
  626.         (default 0)
  627.     )
  628.     (
  629.         (F_GetDir #P_WInstalled #H_WInstalled "SYS:wbstartup")
  630.         (set #WhereMRQ #Where)
  631.         (set @default-dest #WhereMRQ)
  632.         (set #Installname (tackon #WhereMRQ "MRQ"))
  633.         (if (exists #Installname)
  634.             (F_ConfigMRQ)
  635.             (message #E_CantFindMRQ)
  636.         )
  637.     )
  638.     (F_InstallMRQ)
  639. )
  640.