1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set ts=8 sts=2 et sw=2 tw=80: */
3 /* This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
7 #ifndef _SPECIALSYSTEMDIRECTORY_H_
8 #define _SPECIALSYSTEMDIRECTORY_H_
13 #ifdef MOZ_WIDGET_COCOA
14 # include "nsILocalFileMac.h"
18 enum SystemDirectories
{
19 OS_TemporaryDirectory
= 2,
20 // 3 Used to be OS_CurrentProcessDirectory, which we never actually
21 // supported getting...
22 OS_CurrentWorkingDirectory
= 4,
24 Mac_SystemDirectory
= 101,
25 Mac_UserLibDirectory
= 102,
26 Mac_HomeDirectory
= 103,
27 Mac_DefaultDownloadDirectory
= 104,
28 Mac_UserDesktopDirectory
= 105,
29 Mac_LocalApplicationsDirectory
= 106,
30 Mac_UserPreferencesDirectory
= 107,
31 Mac_PictureDocumentsDirectory
= 108,
32 Mac_DefaultScreenshotDirectory
= 109,
33 Mac_UserDocumentsDirectory
= 110,
35 Win_SystemDirectory
= 201,
36 Win_WindowsDirectory
= 202,
37 Win_HomeDirectory
= 203,
40 Win_Desktopdirectory
= 213,
43 Win_LocalAppdata
= 224,
44 Win_ProgramFiles
= 225,
48 Unix_HomeDirectory
= 303,
49 Unix_XDG_Desktop
= 304,
50 Unix_XDG_Documents
= 305,
51 Unix_XDG_Download
= 306,
52 Unix_SystemConfigDirectory
= 307,
55 nsresult
GetSpecialSystemDirectory(SystemDirectories aSystemSystemDirectory
,
57 #ifdef MOZ_WIDGET_COCOA
58 nsresult
GetOSXFolderType(short aDomain
, OSType aFolderType
,
59 nsIFile
** aLocalFile
);