Bug 1852754: part 9) Add tests for dynamically loading <link rel="prefetch"> elements...
[gecko.git] / xpcom / io / nsDirectoryServiceDefs.h
blob9f0368ff06f83df7cac052ea3dbb05c2df01eced
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 /**
8 * Defines the property names for directories available from
9 * nsIDirectoryService. These dirs are always available even if no
10 * nsIDirectoryServiceProviders have been registered with the service.
11 * Application level keys are defined in nsAppDirectoryServiceDefs.h.
13 * Keys whose definition ends in "DIR" or "FILE" return a single nsIFile (or
14 * subclass). Keys whose definition ends in "LIST" return an nsISimpleEnumerator
15 * which enumerates a list of file objects.
17 * Defines listed in this file are FROZEN. This list may grow. Each unique
18 * string in this file should have a corresponding atom defined in
19 * StaticAtoms.py (search for "DirectoryService"), regardless of whether it
20 * is defined here due to conditional compilation.
23 #ifndef nsDirectoryServiceDefs_h___
24 #define nsDirectoryServiceDefs_h___
26 /* General OS specific locations */
28 #define NS_OS_HOME_DIR "Home"
30 #define NS_OS_TEMP_DIR "TmpD"
31 #define NS_OS_CURRENT_WORKING_DIR "CurWorkD"
32 /* Files stored in this directory will appear on the user's desktop,
33 * if there is one, otherwise it's just the same as "Home"
35 #define NS_OS_DESKTOP_DIR "Desk"
37 #define NS_OS_DEFAULT_DOWNLOAD_DIR "DfltDwnld"
39 /* Property returns the directory in which the procces was started from.
41 #define NS_OS_CURRENT_PROCESS_DIR "CurProcD"
43 /* This location is similar to NS_OS_CURRENT_PROCESS_DIR, however,
44 * NS_XPCOM_CURRENT_PROCESS_DIR can be overriden by passing a "bin
45 * directory" to NS_InitXPCOM().
47 #define NS_XPCOM_CURRENT_PROCESS_DIR "XCurProcD"
49 /* Property will return the location of the the XPCOM Shared Library.
51 #define NS_XPCOM_LIBRARY_FILE "XpcomLib"
53 /* Property will return the current location of the GRE directory.
54 * On OSX, this typically points to Contents/Resources in the app bundle.
55 * If no GRE is used, this propery will behave like
56 * NS_XPCOM_CURRENT_PROCESS_DIR.
58 #define NS_GRE_DIR "GreD"
60 /* Property will return the current location of the GRE-binaries directory.
61 * On OSX, this typically points to Contents/MacOS in the app bundle. On
62 * all other platforms, this will be identical to NS_GRE_DIR.
63 * Since this property is based on the NS_GRE_DIR, if no GRE is used, this
64 * propery will behave like NS_XPCOM_CURRENT_PROCESS_DIR.
66 #define NS_GRE_BIN_DIR "GreBinD"
68 /* Platform Specific Locations */
70 #if !defined(XP_UNIX) || defined(MOZ_WIDGET_COCOA)
71 # define NS_OS_SYSTEM_DIR "SysD"
72 #endif
74 #if defined(MOZ_WIDGET_COCOA)
75 # define NS_MAC_USER_LIB_DIR "ULibDir"
76 # define NS_OSX_LOCAL_APPLICATIONS_DIR "LocApp"
77 # define NS_OSX_USER_PREFERENCES_DIR "UsrPrfs"
78 # define NS_OSX_PICTURE_DOCUMENTS_DIR "Pct"
79 #elif defined(XP_WIN)
80 # define NS_WIN_WINDOWS_DIR "WinD"
81 # define NS_WIN_PROGRAM_FILES_DIR "ProgF"
82 # define NS_WIN_HOME_DIR NS_OS_HOME_DIR
83 # define NS_WIN_PROGRAMS_DIR "Progs" // User start menu programs directory!
84 # define NS_WIN_FAVORITES_DIR "Favs"
85 # define NS_WIN_APPDATA_DIR "AppData"
86 # define NS_WIN_LOCAL_APPDATA_DIR "LocalAppData"
87 # define NS_WIN_COOKIES_DIR "CookD"
88 #elif defined(XP_UNIX)
89 # define NS_UNIX_HOME_DIR NS_OS_HOME_DIR
90 #endif
92 #if defined(MOZ_WIDGET_GTK)
93 # define NS_OS_SYSTEM_CONFIG_DIR "SysConfD"
94 #endif // defined(MOZ_WIDGET_GTK)
96 #endif