
Example Use of Package Tools StartorNewHook Function

jjweimer
// package parameters Static StrConstant thePackage="YourPackageNameHere" Static StrConstant thePackageFolder="YourPackageFolderHere" Static StrConstant theProcedureFile = "YourPackageProcedureFileHere.ipf" Static StrConstant thePackageInfo = "This is what your package does" Static StrConstant thePackageAuthor = "Your Name Here" Static Constant thePackageVersion = 1.0 Static Constant hasHelp = 0 // 0-no; 1-yes (called by DisplayHelpTopic "YourPackageName" // hook function (at top of procedure file for you package) Static Function AfterFileOpenHook(refNum,file,pathName,type,creator,kind) Variable refNum,kind String file,pathName,type,creator SVAR/Z pt = root:Packages:PackageTools:AnnotationTools String theCmd if (!SVAR_Exists(pt)) // initialize package information DFREF cdf = GetDataFolderDFR() NewDataFolder/O/S Packages NewDataFolder/O PackageTools SetDataFolder cdf sprintf theCmd, "PackageSetup(\"%s\",file=\"%s\",info=\"%s\",author=\"%s\",version=%g,hasHelp=%d)", thePackage,theProcedureFile,thePackageInfo,thePackageAuthor,thePackageVersion,hasHelp // use the execute method to allow this to work in Independent Modules Execute/P/Q/Z theCmd else // package parameter is already installed // do other things here depending on your package endif return 0 end

Forum

Support

Gallery
Igor Pro 9
Learn More
Igor XOP Toolkit
Learn More
Igor NIDAQ Tools MX
Learn More