Changeset 474


Ignore:
Timestamp:
Feb 3, 2009 4:45:55 PM (14 years ago)
Author:
srkline
Message:

Moved DoFileSaveDialog? and DoFileOpenDialog? to PlotUtilsMacro_v40 since it is common to all packages. Then there is no need to duplicate functions and no new files to include.

Location:
sans/Dev/trunk/NCNR_User_Procedures
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • sans/Dev/trunk/NCNR_User_Procedures/Analysis/WriteModelData_v40.ipf

    r473 r474  
    8484        if(dialog) 
    8585                PathInfo/S catPathName 
    86                 fullPath = A_DoSaveFileDialog("Save data as",fname=NameofWave(ywave)+".txt") 
     86                fullPath = DoSaveFileDialog("Save data as",fname=NameofWave(ywave)+".txt") 
    8787                If(cmpstr(fullPath,"")==0) 
    8888                        //user cancel, don't write out a file 
     
    101101End 
    102102 
    103 // returns the path to the file, or null if the user cancelled 
    104 // fancy use of optional parameters 
    105 //  
    106 // enforce short file names (26 characters) 
    107 // DUPLICATE of similar-named function in WriteQIS (including starts a bad dependency chain) 
    108 Function/S A_DoSaveFileDialog(msg,[fname,suffix]) 
    109         String msg,fname,suffix 
    110         Variable refNum 
    111 //      String message = "Save the file as" 
    112  
    113         if(ParamIsDefault(fname)) 
    114 //              Print "fname not supplied" 
    115                 fname = "" 
    116         endif 
    117         if(ParamIsDefault(suffix)) 
    118 //              Print "suffix not supplied" 
    119                 suffix = "" 
    120         endif 
    121          
    122         String outputPath,tmpName,testStr 
    123         Variable badLength=0,maxLength=26,l1,l2 
    124          
    125          
    126         tmpName = fname + suffix 
    127          
    128         do 
    129                 badLength=0 
    130                 Open/D/M=msg/T="????" refNum as tmpName 
    131                 outputPath = S_fileName 
    132                  
    133                 testStr = ParseFilePath(0, outputPath, ":", 1, 0)               //just the filename 
    134                 if(strlen(testStr)==0) 
    135                         break           //cancel, allow exit 
    136                 endif 
    137                 if(strlen(testStr) > maxLength) 
    138                         badlength = 1 
    139                         DoAlert 2,"File name is too long. Is\r"+testStr[0,25]+"\rOK?" 
    140                         if(V_flag==3) 
    141                                 outputPath = "" 
    142                                 break 
    143                         endif 
    144                         if(V_flag==1)                   //my suggested name is OK, so trim the output 
    145                                 badlength=0 
    146                                 l1 = strlen(testStr)            //too long length 
    147                                 l1 = l1-maxLength               //number to trim 
    148                                 //Print outputPath 
    149                                 l2=strlen(outputPath) 
    150                                 outputPath = outputPath[0,l2-1-l1] 
    151                                 //Print "modified  ",outputPath 
    152                         endif 
    153                         //if(V_flag==2)  do nothing, let it go around again 
    154                 endif 
    155                  
    156         while(badLength) 
    157          
    158         return outputPath 
    159 End 
  • sans/Dev/trunk/NCNR_User_Procedures/Common/Packages/PlotManager/PlotUtilsMacro_v40.ipf

    r454 r474  
    825825        return(str) 
    826826End 
     827 
     828 
     829//returns the path to the file, or null if cancel 
     830Function/S DoOpenFileDialog(msg) 
     831        String msg 
     832         
     833        Variable refNum 
     834//      String message = "Select a file" 
     835        String outputPath 
     836         
     837        Open/D/R/T="????"/M=msg refNum 
     838        outputPath = S_fileName 
     839         
     840        return outputPath 
     841End 
     842 
     843// returns the path to the file, or null if the user cancelled 
     844// fancy use of optional parameters 
     845//  
     846// enforce short file names (26 characters) 
     847Function/S DoSaveFileDialog(msg,[fname,suffix]) 
     848        String msg,fname,suffix 
     849        Variable refNum 
     850//      String message = "Save the file as" 
     851 
     852        if(ParamIsDefault(fname)) 
     853//              Print "fname not supplied" 
     854                fname = "" 
     855        endif 
     856        if(ParamIsDefault(suffix)) 
     857//              Print "suffix not supplied" 
     858                suffix = "" 
     859        endif 
     860         
     861        String outputPath,tmpName,testStr 
     862        Variable badLength=0,maxLength=26,l1,l2 
     863         
     864         
     865        tmpName = fname + suffix 
     866         
     867        do 
     868                badLength=0 
     869                Open/D/M=msg/T="????" refNum as tmpName 
     870                outputPath = S_fileName 
     871                 
     872                testStr = ParseFilePath(0, outputPath, ":", 1, 0)               //just the filename 
     873                if(strlen(testStr)==0) 
     874                        break           //cancel, allow exit 
     875                endif 
     876                if(strlen(testStr) > maxLength) 
     877                        badlength = 1 
     878                        DoAlert 2,"File name is too long. Is\r"+testStr[0,25]+"\rOK?" 
     879                        if(V_flag==3) 
     880                                outputPath = "" 
     881                                break 
     882                        endif 
     883                        if(V_flag==1)                   //my suggested name is OK, so trim the output 
     884                                badlength=0 
     885                                l1 = strlen(testStr)            //too long length 
     886                                l1 = l1-maxLength               //number to trim 
     887                                //Print outputPath 
     888                                l2=strlen(outputPath) 
     889                                outputPath = outputPath[0,l2-1-l1] 
     890                                //Print "modified  ",outputPath 
     891                        endif 
     892                        //if(V_flag==2)  do nothing, let it go around again 
     893                endif 
     894                 
     895        while(badLength) 
     896         
     897        return outputPath 
     898End 
  • sans/Dev/trunk/NCNR_User_Procedures/Reduction/SANS/WriteQIS.ipf

    r472 r474  
    813813End 
    814814 
    815  
    816 //returns the path to the file, or null if cancel 
    817 Function/S DoOpenFileDialog(msg) 
    818         String msg 
    819          
    820         Variable refNum 
    821 //      String message = "Select a file" 
    822         String outputPath 
    823          
    824         Open/D/R/T="????"/M=msg refNum 
    825         outputPath = S_fileName 
    826          
    827         return outputPath 
    828 End 
    829  
    830 // returns the path to the file, or null if the user cancelled 
    831 // fancy use of optional parameters 
    832 //  
    833 // enforce short file names (26 characters) 
    834 Function/S DoSaveFileDialog(msg,[fname,suffix]) 
    835         String msg,fname,suffix 
    836         Variable refNum 
    837 //      String message = "Save the file as" 
    838  
    839         if(ParamIsDefault(fname)) 
    840 //              Print "fname not supplied" 
    841                 fname = "" 
    842         endif 
    843         if(ParamIsDefault(suffix)) 
    844 //              Print "suffix not supplied" 
    845                 suffix = "" 
    846         endif 
    847          
    848         String outputPath,tmpName,testStr 
    849         Variable badLength=0,maxLength=26,l1,l2 
    850          
    851          
    852         tmpName = fname + suffix 
    853          
    854         do 
    855                 badLength=0 
    856                 Open/D/M=msg/T="????" refNum as tmpName 
    857                 outputPath = S_fileName 
    858                  
    859                 testStr = ParseFilePath(0, outputPath, ":", 1, 0)               //just the filename 
    860                 if(strlen(testStr)==0) 
    861                         break           //cancel, allow exit 
    862                 endif 
    863                 if(strlen(testStr) > maxLength) 
    864                         badlength = 1 
    865                         DoAlert 2,"File name is too long. Is\r"+testStr[0,25]+"\rOK?" 
    866                         if(V_flag==3) 
    867                                 outputPath = "" 
    868                                 break 
    869                         endif 
    870                         if(V_flag==1)                   //my suggested name is OK, so trim the output 
    871                                 badlength=0 
    872                                 l1 = strlen(testStr)            //too long length 
    873                                 l1 = l1-maxLength               //number to trim 
    874                                 //Print outputPath 
    875                                 l2=strlen(outputPath) 
    876                                 outputPath = outputPath[0,l2-1-l1] 
    877                                 //Print "modified  ",outputPath 
    878                         endif 
    879                         //if(V_flag==2)  do nothing, let it go around again 
    880                 endif 
    881                  
    882         while(badLength) 
    883          
    884         return outputPath 
    885 End 
  • sans/Dev/trunk/NCNR_User_Procedures/Reduction/USANS/WriteUSANSData.ipf

    r473 r474  
    5353        if(dialog) 
    5454                PathInfo/S catPathName 
    55                 fullPath = U_DoSaveFileDialog("Save data as") 
     55                fullPath = DoSaveFileDialog("Save data as") 
    5656                If(cmpstr(fullPath,"")==0) 
    5757                        //user cancel, don't write out a file 
     
    199199End 
    200200 
    201 // returns the path to the file, or null if the user cancelled 
    202 // fancy use of optional parameters 
    203 //  
    204 // enforce short file names (26 characters) 
    205 //DUPLICATE of similar-named function in WriteQIS (including starts a bad dependency cascade) 
    206 Function/S U_DoSaveFileDialog(msg,[fname,suffix]) 
    207         String msg,fname,suffix 
    208         Variable refNum 
    209 //      String message = "Save the file as" 
    210  
    211         if(ParamIsDefault(fname)) 
    212 //              Print "fname not supplied" 
    213                 fname = "" 
    214         endif 
    215         if(ParamIsDefault(suffix)) 
    216 //              Print "suffix not supplied" 
    217                 suffix = "" 
    218         endif 
    219          
    220         String outputPath,tmpName,testStr 
    221         Variable badLength=0,maxLength=26,l1,l2 
    222          
    223          
    224         tmpName = fname + suffix 
    225          
    226         do 
    227                 badLength=0 
    228                 Open/D/M=msg/T="????" refNum as tmpName 
    229                 outputPath = S_fileName 
    230                  
    231                 testStr = ParseFilePath(0, outputPath, ":", 1, 0)               //just the filename 
    232                 if(strlen(testStr)==0) 
    233                         break           //cancel, allow exit 
    234                 endif 
    235                 if(strlen(testStr) > maxLength) 
    236                         badlength = 1 
    237                         DoAlert 2,"File name is too long. Is\r"+testStr[0,25]+"\rOK?" 
    238                         if(V_flag==3) 
    239                                 outputPath = "" 
    240                                 break 
    241                         endif 
    242                         if(V_flag==1)                   //my suggested name is OK, so trim the output 
    243                                 badlength=0 
    244                                 l1 = strlen(testStr)            //too long length 
    245                                 l1 = l1-maxLength               //number to trim 
    246                                 //Print outputPath 
    247                                 l2=strlen(outputPath) 
    248                                 outputPath = outputPath[0,l2-1-l1] 
    249                                 //Print "modified  ",outputPath 
    250                         endif 
    251                         //if(V_flag==2)  do nothing, let it go around again 
    252                 endif 
    253                  
    254         while(badLength) 
    255          
    256         return outputPath 
    257 End 
Note: See TracChangeset for help on using the changeset viewer.