->> ************* CMPILER OPTIONS ****************** OPT PREPROCESS, STACK=16384, REG=5 ->> ************ MODULES REQUIERED ***************** MODULE 'dos/var', 'dos/dos', 'utility', 'utility/tagitem','libraries/gadtools','wb', 'workbench/workbench','icon','exec/memory', 'libraries/Asl','ASL', 'intuition/screens', 'intuition', 'intuition/classusr', 'intuition/classes', 'muimaster','libraries/mui', 'mui/nlist_mcc','mui/nlistview_mcc','mui/BetterString_mcc','mui/lamp_mcc', 'tools/boopsi','amigalib/boopsi','tools/installhook','utility/hooks', '*VERSTAG','exec/nodes', 'tools/constructors', 'exec/lists', 'debug','JMC/geticonObject' MODULE 'fakestack' MODULE 'exec/execbase','exec/types','exec/libraries' #define MEDIATOR_ENVDIR 'ENV:Mediator' ->> **************** ENUMERATION ******************** ENUM ER_NONE, ER_MUILIB, ER_ICONLIB, ER_APP,ID_USE, ID_TEST, ID_SAVE, ID_ABOUT, ID_MUI, OS39_NEED DEF app=0, win=0, ninit=0 ->> ************** MAIN PROCEDURE ****************** PROC main() HANDLE DEF stack, menu, jmc, appicon:PTR TO diskobject, running=TRUE, result, sigs ->> *********************************************** kick_version:=KickVersion(39) IF kick_version=FALSE THEN Raise(OS39_NEED) IF (aslbase := OpenLibrary('asl.library', 37))=NIL THEN Raise('Unable to open Asl.library 37+') IF (muimasterbase:=OpenLibrary(MUIMASTER_NAME,MUIMASTER_VMIN))=NIL THEN Raise(ER_MUILIB) IF (iconbase:=OpenLibrary('icon.library',0))=NIL THEN Raise(ER_ICONLIB) IF (utilitybase:=OpenLibrary('utility.library',0))=NIL THEN Raise('Failed to open utility.library !') stack:=fakestack() ->> *********************************************** menu := [NM_TITLE,0, 'Project', 0 ,0,0,0, NM_ITEM ,0, NM_BARLABEL, 0 ,0,0,0, NM_ITEM ,0, NM_BARLABEL, 0 ,0,0,0, NM_ITEM ,0, 'About...', 'A',0,0,ID_ABOUT, NM_ITEM ,0, 'About Mui...', 'M',0,0, ID_MUI, NM_ITEM ,0, NM_BARLABEL, 0 ,0,0,0, NM_ITEM ,0, 'Quit', 'Q', 0,0, MUIV_Application_ReturnID_Quit, NM_ITEM ,0, NM_BARLABEL, 0 ,0,0,0, NM_ITEM ,0, NM_BARLABEL, 0 ,0,0,0, NM_END ,0, NIL , 0 ,0,0,0]:newmenu ->> ****************************************************************************** app := ApplicationObject, MUIA_Application_Title , 'MediatorEnvManager', MUIA_Application_Version , VERSDATE, MUIA_Application_Copyright , 'J_Marie COAT, © 2006', MUIA_Application_Author , 'J_Marie COAT, ', MUIA_Application_Description, 'Set Mediator variables.', MUIA_Application_Base , 'MEDIATOR_ENVMANAGER', MUIA_Application_Menustrip , Mui_MakeObjectA(MUIO_MenustripNM,[menu,0]), MUIA_Application_DiskObject, get_MyDiskObject(appicon), -> ..(appicon,TRUE) = Serial debug lines on. ->> *************************** SubWindow, win:= WindowObject, MUIA_Window_ID, "MAIN", MUIA_Window_Title, 'MediatorEnvManager', WindowContents, VGroup, End, -> *** VGroup *** End, -> *** SubWindow win *** ->> ***** END ********************** End ->> ******************************** IF app=NIL THEN Raise(ER_APP) domethod(win, [MUIM_Notify,MUIA_Window_CloseRequest, MUI_TRUE, app, 2,MUIM_Application_ReturnID,MUIV_Application_ReturnID_Quit]) set(win, MUIA_Window_Open,1) WHILE running AND (CheckSignal(SIGBREAKF_CTRL_C)=0) result:= domethod(app,[MUIM_Application_Input,{sigs}]) SELECT result CASE MUIV_Application_ReturnID_Quit running:=FALSE CASE ID_ABOUT jmc:=AllocVec(512, MEMF_PUBLIC) StringF(jmc,'\eb\ecMediator variables manager\en\n\euWritten in E\en\n\e3\s\e1\en\n\ei\s \en\nCompiled with: \s',VERSTRING, COPYRIGHT,COMPILER_STRING) Mui_RequestA(app,win,0,' About... ', 'Okay', jmc, NIL) IF jmc THEN FreeVec(jmc) CASE ID_MUI domethod(app,[MUIM_Application_AboutMUI,NIL]) ENDSELECT IF (running AND sigs) THEN Wait(sigs) ENDWHILE IF appicon THEN FreeDiskObject(appicon) EXCEPT DO IF app THEN Mui_DisposeObject(app) IF muimasterbase THEN CloseLibrary(muimasterbase) IF iconbase THEN CloseLibrary(iconbase) IF utilitybase THEN CloseLibrary(utilitybase) IF aslbase THEN CloseLibrary(aslbase) SELECT exception CASE ER_MUILIB WriteF('Failed to open \s\n' ,MUIMASTER_NAME) CleanUp(20) CASE ER_ICONLIB WriteF('Failed to open icon.libray!\n') CleanUp(20) CASE ER_APP WriteF('Application creation failed!\n') CleanUp(20) CASE OS39_NEED WriteF('Sorry P96Manager and Picasso96 RTG system need at least OS VERSION 39 !\n') CleanUp(20) ENDSELECT ENDPROC 0 /********************************* LECTURE REPERTOIRE VARIABLES *****************************/ PROC proc_LoadMediatorEnvVariables() DEF info:fileinfoblock,lock=NIL IF lock:=Lock(MEDIATOR_ENVDIR,-2) IF Examine(lock,info) IF info.direntrytype>0 WHILE ExNext(lock,info) ninit++ ENDWHILE ENDIF ENDIF UnLock(lock) ENDIF ENDPROC