Ignore:
Timestamp:
Jul 26, 2007 1:33:58 PM (16 years ago)
Author:
srkline
Message:

Modifications to SumSANSModels to make it data folder aware

Modifications to SumSANSModels and SANSPicker to bury their folders in :myGlobals

New (3.01) template that uses these folder structures
Removed (3.00) template

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sans/Analysis/branches/ajj_23APR07/IGOR_Package_Files/Put in User Procedures/SANS_Models_v3.00/Packages/ModelPicker/SANSModelPicker.ipf

    r130 r132  
    5252// the list box in the panel 
    5353Proc Init_FileList() 
    54         //create the data folder 
    55         if(!DataFolderExists("root:FileList")) 
    56                 NewDataFolder/O/S root:FileList 
     54        //create the data folders  and globals 
     55        NewDataFolder/O root:myGlobals          //others will need this...make it just in case 
     56         
     57        if(!DataFolderExists("root:myGlobals:FileList")) 
     58                NewDataFolder/O/S root:myGlobals:FileList 
    5759                //create the waves 
    5860                Make/O/T/N=0 fileWave,includedFileWave 
     
    6567                // a switch for me to turn off file checking 
    6668                Variable/G checkForFiles=1              //set to true initially 
     69                checkForFiles = !(stringmatch(ParseFilePath(0,SpecialDirPath("Desktop",0,0,0),":",1,1),"s*ine"))                //zero for me 
    6770                 
    6871                //fill the list of procedures 
     
    7578                FileList_InsertButtonProc("")  
    7679                 
    77                 NewDataFolder/O root:myGlobals          //others will need this...make it just in case 
     80 
    7881                 
    7982                SetDataFolder root: 
     
    8689// if the wave SANS_Model_List does not exist 
    8790Proc ReadNewProcList() 
    88         KillWaves/Z root:FileList:SANS_Model_List               //kill the old list 
     91        KillWaves/Z root:myGlobals:FileList:SANS_Model_List             //kill the old list 
    8992        FileList_GetListButtonProc("") 
    9093End 
     
    101104// 
    102105Proc TypeNewModelList() 
    103         variable ii=0,num=numpnts(root:FileList:SANS_Model_List) 
     106        variable ii=0,num=numpnts(root:myGlobals:FileList:SANS_Model_List) 
    104107        printf "Make/O/T/N/=%d  SANS_Model_List\r\r",num 
    105108        do 
    106                 printf "SANS_Model_List[%d] = \"%s\"\r",ii,root:FileList:SANS_Model_List[ii] 
     109                printf "SANS_Model_List[%d] = \"%s\"\r",ii,root:myGlobals:FileList:SANS_Model_List[ii] 
    107110                ii+=1 
    108111        while(ii<num) 
     
    110113 
    111114Proc FileList_BuiltInList() 
    112         SetDataFolder root:FileList 
     115        SetDataFolder root:myGlobals:FileList 
    113116 
    114117////paste here... after deleting the old make statement and list 
     
    189192        String ProcedureName 
    190193         
    191         SetDataFolder root:FileList 
     194        SetDataFolder root:myGlobals:FileList 
    192195        Variable num 
    193196        num=numpnts(fileWave) 
     
    206209        Variable val 
    207210        // a switch for me to turn off file checking 
    208         root:FileList:checkForFiles=val //0==no check, 1=check   
     211        root:myGlobals:FileList:checkForFiles=val       //0==no check, 1=check   
    209212End 
    210213 
     
    223226        DoWindow/C Procedure_List 
    224227        ModifyPanel fixedSize=1 
    225         ListBox fileList,pos={4,3},size={200,100},listWave=root:FileList:fileWave 
    226         ListBox fileList,selWave=root:FileList:selWave,mode= 4 
     228        ListBox fileList,pos={4,3},size={200,100},listWave=root:myGlobals:FileList:fileWave 
     229        ListBox fileList,selWave=root:myGlobals:FileList:selWave,mode= 4 
    227230        ListBox inclList,pos={4,110},size={200,100} 
    228         ListBox inclList,listWave=root:FileList:includedFileWave 
    229         ListBox inclList,selWave=root:FileList:selToDelWave,mode= 4 
     231        ListBox inclList,listWave=root:myGlobals:FileList:includedFileWave 
     232        ListBox inclList,selWave=root:myGlobals:FileList:selToDelWave,mode= 4 
    230233        Button button0,pos={212,77},size={110,20},proc=FileList_InsertButtonProc,title="Include File(s)" 
    231234        Button button0,help={"Includes the selected procedures, functions appear under the SANS Models menu"} 
     
    257260        //loop through the selected files in the list... 
    258261        // 
    259         Wave/T fileWave=$"root:FileList:fileWave" 
    260         Wave sel=$"root:FileList:selWave" 
     262        Wave/T fileWave=$"root:myGlobals:FileList:fileWave" 
     263        Wave sel=$"root:myGlobals:FileList:selWave" 
    261264         
    262265        Variable num=numpnts(sel),ii 
    263266        String fname="" 
    264267         
    265 //      NVAR doCheck=root:FileList:checkForFiles 
     268//      NVAR doCheck=root:myGlobals:FileList:checkForFiles 
    266269        ii=num-1                //work bottom-up to not lose the index 
    267270        do 
     
    275278        //try the list of already-included files 
    276279        if(cmpstr(fname,"")==0) 
    277                 Wave/T inclFileWave=$"root:FileList:includedFileWave" 
    278                 Wave seltoDel=$"root:FileList:selToDelWave" 
     280                Wave/T inclFileWave=$"root:myGlobals:FileList:includedFileWave" 
     281                Wave seltoDel=$"root:myGlobals:FileList:selToDelWave" 
    279282                num=numpnts(seltoDel) 
    280283                ii=num-1                //work bottom-up to not lose the index 
     
    322325        String list="" 
    323326 
    324         if(Exists("root:FileList:SANS_Model_List") != 1) 
    325                 SetDataFolder root:FileList 
     327        if(Exists("root:myGlobals:FileList:SANS_Model_List") != 1) 
     328                SetDataFolder root:myGlobals:FileList 
    326329                LoadWave/A/T 
    327330                WAVE/T w=$(StringFromList(0,S_WaveNames,";")) 
    328331                SetDataFolder root: 
    329332        else 
    330                 WAVE/T w=$("root:FileList:SANS_Model_List") 
     333                WAVE/T w=$("root:myGlobals:FileList:SANS_Model_List") 
    331334        endif 
    332335         
    333336//      // convert the input wave to a semi-list 
    334 //      SVAR allFiles=root:FileList:allFiles 
     337//      SVAR allFiles=root:myGlobals:FileList:allFiles 
    335338//      allFiles=MP_TextWave2SemiList(w) 
    336339        list=MP_TextWave2SemiList(w) 
     
    341344 
    342345        // remove the items that have already been included 
    343         Wave/T includedFileWave=$"root:FileList:includedFileWave" 
     346        Wave/T includedFileWave=$"root:myGlobals:FileList:includedFileWave" 
    344347        Variable numInc=numpnts(includedFileWave) 
    345348        for(ii=0;ii<numInc;ii+=1) 
     
    348351        list = SortList(list,";",0) 
    349352        num=ItemsInList(list,";") 
    350         WAVE/T fileWave=$"root:FileList:fileWave" 
    351         WAVE selWave=$"root:FileList:selWave" 
     353        WAVE/T fileWave=$"root:myGlobals:FileList:fileWave" 
     354        WAVE selWave=$"root:myGlobals:FileList:selWave" 
    352355        Redimension/N=(num) fileWave            //make the waves the proper length 
    353356        Redimension/N=(num) selWave 
     
    381384 
    382385// new way, to catch all files in all subfolders 
    383         SVAR allFiles=root:FileList:allFiles 
     386        SVAR allFiles=root:myGlobals:FileList:allFiles 
    384387        allFiles=""             //clear the list 
    385388 
     
    400403        list = RemoveFromList("DemoLoader.ipf",list,";" ) 
    401404        // remove the items that have already been included 
    402         Wave/T includedFileWave=$"root:FileList:includedFileWave" 
     405        Wave/T includedFileWave=$"root:myGlobals:FileList:includedFileWave" 
    403406        Variable numInc=numpnts(includedFileWave) 
    404407        for(ii=0;ii<numInc;ii+=1) 
     
    407410        list = SortList(list,";",0) 
    408411        num=ItemsInList(list,";") 
    409         WAVE/T fileWave=$"root:FileList:fileWave" 
    410         WAVE selWave=$"root:FileList:selWave" 
     412        WAVE/T fileWave=$"root:myGlobals:FileList:fileWave" 
     413        WAVE selWave=$"root:myGlobals:FileList:selWave" 
    411414        Redimension/N=(num) fileWave            //make the waves the proper length 
    412415        Redimension/N=(num) selWave 
     
    422425 
    423426        Variable err=0 
    424         String/G root:FileList:allFiles="" 
    425         SVAR allFiles = root:FileList:allFiles 
     427        String/G root:myGlobals:FileList:allFiles="" 
     428        SVAR allFiles = root:myGlobals:FileList:allFiles 
    426429         
    427430        PathInfo Igor 
     
    446449         
    447450        //loop through the selected files in the list... 
    448         Wave/T fileWave=$"root:FileList:fileWave" 
    449         Wave sel=$"root:FileList:selWave" 
     451        Wave/T fileWave=$"root:myGlobals:FileList:fileWave" 
     452        Wave sel=$"root:myGlobals:FileList:selWave" 
    450453        //and adjust the included file lists 
    451         Wave/T includedFileWave=$"root:FileList:includedFileWave" 
    452         Wave selToDel=$"root:FileList:selToDelWave" 
     454        Wave/T includedFileWave=$"root:myGlobals:FileList:includedFileWave" 
     455        Wave selToDel=$"root:myGlobals:FileList:selToDelWave" 
    453456         
    454457        Variable numIncl=numpnts(includedFileWave) 
     
    461464        Execute/P "INSERTINCLUDE \"WriteModelData\"" 
    462465         
    463         NVAR doCheck=root:FileList:checkForFiles 
     466        NVAR doCheck=root:myGlobals:FileList:checkForFiles 
    464467         
    465468        ii=num-1                //work bottom-up to not lose the index 
     
    496499         
    497500        //loop through the selected files in the list... 
    498         Wave/T includedFileWave=$"root:FileList:includedFileWave" 
    499         Wave selToDel=$"root:FileList:selToDelWave" 
     501        Wave/T includedFileWave=$"root:myGlobals:FileList:includedFileWave" 
     502        Wave selToDel=$"root:myGlobals:FileList:selToDelWave" 
    500503        // and put the unwanted procedures back in the to-add list 
    501         Wave/T fileWave=$"root:FileList:fileWave" 
    502         Wave sel=$"root:FileList:selWave" 
     504        Wave/T fileWave=$"root:myGlobals:FileList:fileWave" 
     505        Wave sel=$"root:myGlobals:FileList:selWave" 
    503506         
    504507         
     
    564567// if root:MenuItemStr exists 
    565568Menu "SANS Models" 
    566         StrVarOrDefault("root:FileList:MenuItemStr_def","ModelPicker_Panel")//, RefreshMenu() 
     569        StrVarOrDefault("root:myGlobals:FileList:MenuItemStr_def","ModelPicker_Panel")//, RefreshMenu() 
    567570        SubMenu "Unsmeared Models" 
    568                 StrVarOrDefault("root:FileList:MenuItemStr1","ModelPicker_Panel") 
     571                StrVarOrDefault("root:myGlobals:FileList:MenuItemStr1","ModelPicker_Panel") 
    569572        End 
    570573        SubMenu "Smeared Models" 
    571                 StrVarOrDefault("root:FileList:MenuItemStr2","ModelPicker_Panel") 
     574                StrVarOrDefault("root:myGlobals:FileList:MenuItemStr2","ModelPicker_Panel") 
    572575        End 
    573576//      SubMenu "Models 3" 
     
    594597        list += MacroList("WriteM*",sep,"KIND:1,NPARAMS:4")             //data writer 
    595598        list += "-"+sep 
    596         String/G root:FileList:MenuItemStr_def = TrimListTo255(list) 
     599        String/G root:myGlobals:FileList:MenuItemStr_def = TrimListTo255(list) 
    597600         
    598601        list = "" 
     
    601604        list = RemoveFromList("FreezeModel", list ,";")                 // remove FreezeModel, it's not a model 
    602605        //      list += "-"+sep 
    603         String/G root:FileList:MenuItemStr1 = TrimListTo255(list) 
     606        String/G root:myGlobals:FileList:MenuItemStr1 = TrimListTo255(list) 
    604607 
    605608        list="" 
    606609        list += MacroList("PlotSmea*",sep,"KIND:1,NPARAMS:1")                   //smeared plot procedures 
    607610        list += MacroList("PlotSmea*",sep,"KIND:1,NPARAMS:2")                   //smeared RPA has 2 parameters 
    608         String/G root:FileList:MenuItemStr2 = TrimListTo255(list) 
     611        String/G root:myGlobals:FileList:MenuItemStr2 = TrimListTo255(list) 
    609612 
    610613        BuildMenu "SANS Models" 
     
    664667        String prefix 
    665668         
    666         SVAR allFiles=root:FileList:allFiles 
     669        SVAR allFiles=root:myGlobals:FileList:allFiles 
    667670        // Build a prefix (a number of tabs to indicate the folder level by indentation) 
    668671        prefix = "" 
Note: See TracChangeset for help on using the changeset viewer.