]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Added FindFolder interface
authorJack Jansen <jack.jansen@cwi.nl>
Sun, 18 Jun 1995 20:05:14 +0000 (20:05 +0000)
committerJack Jansen <jack.jansen@cwi.nl>
Sun, 18 Jun 1995 20:05:14 +0000 (20:05 +0000)
Mac/Modules/macfsmodule.c

index 0d75d44361cbffb3357882be92e1c8918b9cd3e0..d85eb719a27c769c971a78a99619bab95352aec9 100644 (file)
@@ -28,6 +28,7 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
 #include <Memory.h>
 #include <Files.h>
+#include <Folders.h>
 #include <StandardFile.h>
 #include <Aliases.h>
 
@@ -567,6 +568,28 @@ mfs_GetDirectory(self, args)
        return mkvalue("(Oi)", newmfssobject(&fsdir), ok);
 }
 
+static object *
+mfs_FindFolder(self, args)
+       object *self;   /* Not used */
+       object *args;
+{
+       OSErr err;
+       short where;
+       OSType which;
+       int create;
+       short refnum;
+       long dirid;
+               
+       if (!newgetargs(args, "hO&i", &where, PyMac_GetOSType, &which, &create) )
+               return NULL;
+       err = FindFolder(where, which, (Boolean)create, &refnum, &dirid);
+       if ( err ) {
+               PyErr_Mac(ErrorObject, err);
+               return NULL;
+       }
+       return mkvalue("(ii)", refnum, dirid);
+}
+
 /* List of methods defined in the module */
 
 static struct methodlist mfs_methods[] = {
@@ -577,6 +600,7 @@ static struct methodlist mfs_methods[] = {
        {"FSSpec",                              mfs_FSSpec,                             1},
        {"RawFSSpec",                   mfs_RawFSSpec,                  1},
        {"RawAlias",                    mfs_RawAlias,                   1},
+       {"FindFolder",                  mfs_FindFolder,                 1},
  
        {NULL,          NULL}           /* sentinel */
 };