PIGetFileListSuite.h

Go to the documentation of this file.
00001 // ADOBE SYSTEMS INCORPORATED
00002 // Copyright  1993 - 2005 Adobe Systems Incorporated
00003 // All Rights Reserved
00004 //
00005 // NOTICE:  Adobe permits you to use, modify, and distribute this 
00006 // file in accordance with the terms of the Adobe license agreement
00007 // accompanying it.  If you have received this file from a source
00008 // other than Adobe, then your use, modification, or distribution
00009 // of it requires the prior written permission of Adobe.
00010 //-------------------------------------------------------------------
00080 #ifndef __PIGetFileListSuite__
00081 #define __PIGetFileListSuite__
00082 
00083 //-------------------------------------------------------------------------------
00084 //  Includes.
00085 //-------------------------------------------------------------------------------
00086 #include "PIGeneral.h"
00087 
00088 //-------------------------------------------------------------------------------
00089 //  C++ wrapper.
00090 //-------------------------------------------------------------------------------
00091 #ifdef __cplusplus
00092 extern "C" {
00093 #endif
00094 
00095 //-------------------------------------------------------------------------------
00096 //  UI GetFileList suite.
00097 //-------------------------------------------------------------------------------
00098 
00100 #define kPSGetFileListSuite             "Photoshop GetFileList Suite for Plug-ins"
00101 
00102 //-------------------------------------------------------------------------------
00103 //  
00104 //-------------------------------------------------------------------------------
00105 
00120 typedef SPAPI SPErr (*GetFileHandleListProc) (PIActionDescriptor& des, FSSpec* fileSpec, bool recurse);
00121 
00130 typedef SPAPI SPErr (*GetBrowserNameListProc) (PIActionDescriptor& des);
00131 
00138 typedef SPAPI SPErr (*BrowseUrlWithIndexBrowserProc) (uint16 index, const char* url);
00139 
00144 typedef SPAPI SPErr (*BrowseUrlProc) (const char* url);
00145 
00153 typedef SPAPI SPErr (*GetBrowserFileSpecProc)(uint16 index, SPPlatformFileSpecification* fileSpec);
00154 
00155 typedef SPAPI SPErr (*GetDefaultSystemScriptProc)(int16& script);
00156 
00157 typedef SPAPI SPErr (*HasDoubleByteInStringProc)(const char* charString, bool& hasDoubleByte);
00158 
00159 typedef SPAPI SPErr (*GetWebTemplateFolderSpecProc)(SPPlatformFileSpecification* fileSpec);
00160 
00161 typedef SPAPI SPErr (*GetWebTemplateListProc) (PIActionDescriptor& styleList, bool recurse);
00162 
00163 typedef SPAPI SPErr (*GetWindowsFileTypesProc) (char * fileTypeList, int bufferSize);
00164 
00165 typedef SPAPI SPErr (*GetMacFileTypesProc) (OSType * typeList, int &numTypes, int bufferSize);
00166 
00167 typedef SPAPI SPErr (*GetPresetsFolderSpecProc) (SPPlatformFileSpecification *fileSpec);
00168 
00169 typedef SPAPI SPErr (*InvalidateFileBrowserCacheProc) (const SPPlatformFileSpecification *fileSpec);
00170 
00171 typedef SPAPI SPErr (*GetChewableFolderSpecProc) (SPPlatformFileSpecification *folderSpec);
00172 
00173 typedef SPAPI SPErr (*GetChewableFreeSpaceProc) (int64& freeSpace);
00174 
00175 //-------------------------------------------------------------------------------
00176 //   GetFileList suite version 1.
00177 //-------------------------------------------------------------------------------
00178 
00179 #define kPSGetFileListSuiteVersion1     1    
00180 #define kPSGetFileListSuiteVersion2     2    
00181 #define kPSGetFileListSuiteVersion3     3    
00182 #define kPSGetFileListSuiteVersion4     4    
00183 #define kPSGetFileListSuiteVersion5     5    
00184 #define kPSGetFileListSuiteVersion6     6    
00187 typedef struct 
00188     {
00189     GetFileHandleListProc           GetFileHandleList;          
00190     GetBrowserNameListProc          GetBrowserNameList;         
00191     BrowseUrlWithIndexBrowserProc   BrowseUrlWithIndexBrowser;  
00192     BrowseUrlProc                   BrowseUrl;                  
00193     GetBrowserFileSpecProc          GetBrowserFileSpec;         
00194     } PSGetFileListSuite1;
00195 
00197 typedef struct 
00198     {
00199     GetFileHandleListProc           GetFileHandleList;          
00200     GetBrowserNameListProc          GetBrowserNameList;         
00201     BrowseUrlWithIndexBrowserProc   BrowseUrlWithIndexBrowser;  
00202     BrowseUrlProc                   BrowseUrl;                  
00203     GetBrowserFileSpecProc          GetBrowserFileSpec;         
00204     GetDefaultSystemScriptProc      GetDefaultSystemScript;     
00205     } PSGetFileListSuite2;
00206 
00208 typedef struct 
00209     {
00210     GetFileHandleListProc           GetFileHandleList;          
00211     GetBrowserNameListProc          GetBrowserNameList;         
00212     BrowseUrlWithIndexBrowserProc   BrowseUrlWithIndexBrowser;  
00213     BrowseUrlProc                   BrowseUrl;                  
00214     GetBrowserFileSpecProc          GetBrowserFileSpec;         
00215     GetDefaultSystemScriptProc      GetDefaultSystemScript;     
00216     HasDoubleByteInStringProc       HasDoubleByteInString;      
00217     } PSGetFileListSuite3;
00218 
00220 typedef struct 
00221     {
00222     GetFileHandleListProc           GetFileHandleList;          
00223     GetBrowserNameListProc          GetBrowserNameList;         
00224     BrowseUrlWithIndexBrowserProc   BrowseUrlWithIndexBrowser;  
00225     BrowseUrlProc                   BrowseUrl;                  
00226     GetBrowserFileSpecProc          GetBrowserFileSpec;         
00227     GetDefaultSystemScriptProc      GetDefaultSystemScript;     
00228     HasDoubleByteInStringProc       HasDoubleByteInString;      
00229     GetWebTemplateFolderSpecProc    GetWebTemplateFolderSpec;   
00230     GetWebTemplateListProc          GetWebTemplateList;         
00231     } PSGetFileListSuite4;
00232 
00234 typedef struct 
00235 {
00236     GetFileHandleListProc           GetFileHandleList;           
00237     GetBrowserNameListProc          GetBrowserNameList;          
00238     BrowseUrlWithIndexBrowserProc   BrowseUrlWithIndexBrowser;   
00239     BrowseUrlProc                   BrowseUrl;                   
00240     GetBrowserFileSpecProc          GetBrowserFileSpec;          
00241     GetDefaultSystemScriptProc      GetDefaultSystemScript;      
00242     HasDoubleByteInStringProc       HasDoubleByteInString;       
00243     GetWebTemplateFolderSpecProc    GetWebTemplateFolderSpec;    
00244     GetWebTemplateListProc          GetWebTemplateList;          
00245     GetWindowsFileTypesProc         GetWindowsFileTypes;         
00246     GetMacFileTypesProc             GetMacFileTypes;             
00247     GetPresetsFolderSpecProc        GetPresetsFolderSpec;        
00248     InvalidateFileBrowserCacheProc  InvalidateFileBrowserCache;  
00249 } PSGetFileListSuite5;
00250 
00252 typedef struct 
00253 {
00254     GetFileHandleListProc           GetFileHandleList;           
00255     GetBrowserNameListProc          GetBrowserNameList;          
00256     BrowseUrlWithIndexBrowserProc   BrowseUrlWithIndexBrowser;   
00257     BrowseUrlProc                   BrowseUrl;                   
00258     GetBrowserFileSpecProc          GetBrowserFileSpec;          
00259     GetDefaultSystemScriptProc      GetDefaultSystemScript;      
00260     HasDoubleByteInStringProc       HasDoubleByteInString;       
00261     GetWebTemplateFolderSpecProc    GetWebTemplateFolderSpec;    
00262     GetWebTemplateListProc          GetWebTemplateList;          
00263     GetWindowsFileTypesProc         GetWindowsFileTypes;         
00264     GetMacFileTypesProc             GetMacFileTypes;             
00265     GetPresetsFolderSpecProc        GetPresetsFolderSpec;        
00266     InvalidateFileBrowserCacheProc  InvalidateFileBrowserCache;  
00267     GetChewableFolderSpecProc       GetChewableFolderSpec;       
00268     GetChewableFreeSpaceProc        GetChewableFreeSpace;        
00269 } PSGetFileListSuite6;
00270 
00271 //-------------------------------------------------------------------------------
00272 //  C++ wrapper.
00273 //-------------------------------------------------------------------------------
00274 #ifdef __cplusplus
00275 }
00276 #endif
00277 
00278 //-------------------------------------------------------------------------------
00279 #endif  // PIGetFileListSuite
00280