| 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
| 2 | %% Name: stdpaths.tex |
| 3 | %% Purpose: wxStandardPaths documentation |
| 4 | %% Author: Vadim Zeitlin |
| 5 | %% Modified by: |
| 6 | %% Created: 2004-10-17 |
| 7 | %% RCS-ID: $Id$ |
| 8 | %% Copyright: (c) 2004 Vadim Zeitlin <vadim@wxwindows.org> |
| 9 | %% License: wxWindows license |
| 10 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
| 11 | |
| 12 | \section{\class{wxStandardPaths}}\label{wxstandardpaths} |
| 13 | |
| 14 | wxStandardPaths returns the standard locations in the file system and should be |
| 15 | used by applications to find their data files in a portable way. |
| 16 | |
| 17 | Please note that this is not a real class because object of this type are never |
| 18 | created but more a namespace containing the class methods which are all static, |
| 19 | so to use wxStandardPaths simply call its methods directly. |
| 20 | |
| 21 | In the description of the methods below, the example return values are given |
| 22 | for the Unix, Windows and Mac OS X systems, however please note that these are |
| 23 | just the examples and the actual values may differ. For example, under Windows: |
| 24 | the system administrator may change the standard directories locations, i.e. |
| 25 | the Windows directory may be named \texttt{W:$\backslash$Win2003} instead of |
| 26 | the default \texttt{C:$\backslash$Windows}. |
| 27 | |
| 28 | The strings \texttt{\textit{appname}} and \texttt{\textit{username}} should be |
| 29 | replaced with the value returned by \helpref{wxApp::GetAppName}{wxappgetappname} |
| 30 | and the name of the currently logged in user, respectively. The string |
| 31 | \texttt{\textit{prefix}} is only used under Unix and is \texttt{/usr/local} by |
| 32 | default but may be changed using \helpref{SetInstallPrefix}{wxstandardpathssetinstallprefix}. |
| 33 | |
| 34 | The directories returned by the methods of this class may or may not exist. If |
| 35 | they don't exist, it's up to the caller to create them, wxStandardPaths doesn't |
| 36 | do it. |
| 37 | |
| 38 | Finally note that these functions only work with standardly packaged |
| 39 | applications. I.e. under Unix you should follow the standard installation |
| 40 | conventions and under Mac you should create your application bundle according |
| 41 | to the Apple guidelines. Again, this class doesn't help you to do it. |
| 42 | |
| 43 | This class is MT-safe: its methods may be called concurrently from different |
| 44 | threads without additional locking. |
| 45 | |
| 46 | \wxheading{Derived from} |
| 47 | |
| 48 | No base class |
| 49 | |
| 50 | \wxheading{Include files} |
| 51 | |
| 52 | <wx/stdpaths.h> |
| 53 | |
| 54 | |
| 55 | \latexignore{\rtfignore{\wxheading{Members}}} |
| 56 | |
| 57 | |
| 58 | \membersection{wxStandardPaths::GetConfigDir}\label{wxstandardpathsgetconfigdir} |
| 59 | |
| 60 | \func{static wxString}{GetConfigDir}{\void} |
| 61 | |
| 62 | Return the directory containing the system config files. |
| 63 | |
| 64 | Example return values: |
| 65 | \begin{itemize} |
| 66 | \item Unix: \texttt{/etc} |
| 67 | \item Windows: \texttt{C:$\backslash$Documents and Settings$\backslash$All Users$\backslash$Application Data} |
| 68 | \item Mac: \texttt{/Library/Preferences} |
| 69 | \end{itemize} |
| 70 | |
| 71 | \wxheading{See also} |
| 72 | |
| 73 | \helpref{wxFileConfig}{wxfileconfig} |
| 74 | |
| 75 | |
| 76 | \membersection{wxStandardPaths::GetDataDir}\label{wxstandardpathsgetdatadir} |
| 77 | |
| 78 | \func{static wxString}{GetDataDir}{\void} |
| 79 | |
| 80 | Return the location of the applications global, i.e. not user-specific, |
| 81 | data files. |
| 82 | |
| 83 | Example return values: |
| 84 | \begin{itemize} |
| 85 | \item Unix: \texttt{\textit{prefix}/share/\textit{appname}} |
| 86 | \item Windows: the directory where the executable file is located |
| 87 | \item Mac: \texttt{\textit{appname}.app/Contents/SharedSupport} bundle subdirectory |
| 88 | \end{itemize} |
| 89 | |
| 90 | \wxheading{See also} |
| 91 | |
| 92 | \helpref{GetLocalDataDir}{wxstandardpathsgetlocaldatadir} |
| 93 | |
| 94 | |
| 95 | \membersection{wxStandardPaths::GetInstallPrefix}\label{wxstandardpathsgetinstallprefix} |
| 96 | |
| 97 | \func{static wxString}{GetInstallPrefix}{\void} |
| 98 | |
| 99 | \textbf{Note: } This function is only available under Unix. |
| 100 | |
| 101 | Return the program installation prefix, e.g. \texttt{/usr}, \texttt{/opt} or |
| 102 | \texttt{/home/zeitlin}. |
| 103 | |
| 104 | If the prefix had been previously by |
| 105 | \helpref{SetInstallPrefix}{wxstandardpathssetinstallprefix}, returns that |
| 106 | value, otherwise tries to determine it automatically (Linux only right |
| 107 | now) and finally returns the default \texttt{/usr/local} value if it failed. |
| 108 | |
| 109 | |
| 110 | \membersection{wxStandardPaths::GetLocalDataDir}\label{wxstandardpathsgetlocaldatadir} |
| 111 | |
| 112 | \func{static wxString}{GetLocalDataDir}{\void} |
| 113 | |
| 114 | Return the location for application data files which are host-specific and |
| 115 | can't, or shouldn't, be shared with the other machines. |
| 116 | |
| 117 | This is the same as \helpref{GetDataDir()}{wxstandardpathsgetdatadir} except |
| 118 | under Unix where it returns \texttt{/etc/\textit{appname}}. |
| 119 | |
| 120 | |
| 121 | \membersection{wxStandardPaths::GetPluginsDir}\label{wxstandardpathsgetpluginsdir} |
| 122 | |
| 123 | \func{static wxString}{GetPluginsDir}{\void} |
| 124 | |
| 125 | Return the directory where the loadable modules (plugins) live. |
| 126 | |
| 127 | Example return values: |
| 128 | \begin{itemize} |
| 129 | \item Unix: \texttt{\textit{prefix}/lib/\textit{appname}} |
| 130 | \item Windows: the directory of the executable file |
| 131 | \item Mac: \texttt{\textit{appname}.app/Contents/PlugIns} bundle subdirectory |
| 132 | \end{itemize} |
| 133 | |
| 134 | \wxheading{See also} |
| 135 | |
| 136 | \helpref{wxDynamicLibrary}{wxdynamiclibrary} |
| 137 | |
| 138 | |
| 139 | \membersection{wxStandardPaths::GetUserConfigDir}\label{wxstandardpathsgetuserconfigdir} |
| 140 | |
| 141 | \func{static wxString}{GetUserConfigDir}{\void} |
| 142 | |
| 143 | Return the directory for the user config files: |
| 144 | \begin{itemize} |
| 145 | \item Unix: \tt{~} (the home directory) |
| 146 | \item Windows: \tt{C:$\backslash$Documents and Settings$\backslash$\textit{username}} |
| 147 | \item Mac: \tt{~/Library/Preferences} |
| 148 | \end{itemize} |
| 149 | |
| 150 | Only use this method if you have a single configuration file to put in this |
| 151 | directory, otherwise \helpref{GetUserDataDir()}{wxstandardpathsgetuserdatadir} is |
| 152 | more appropriate. |
| 153 | |
| 154 | |
| 155 | \membersection{wxStandardPaths::GetUserDataDir}\label{wxstandardpathsgetuserdatadir} |
| 156 | |
| 157 | \func{static wxString}{GetUserDataDir}{\void} |
| 158 | |
| 159 | Return the directory for the user-dependent application data files: |
| 160 | \begin{itemize} |
| 161 | \item Unix: \tt{~/.\textit{appname}} |
| 162 | \item Windows: \tt{C:$\backslash$Documents and Settings$\backslash$\textit{username}$\backslash$Application Data$\backslash$\textit{appname}} |
| 163 | \item Mac: \tt{~/Library/Application Support/\textit{appname}} |
| 164 | \end{itemize} |
| 165 | |
| 166 | |
| 167 | \membersection{wxStandardPaths::GetUserLocalDataDir}\label{wxstandardpathsgetuserlocaldatadir} |
| 168 | |
| 169 | \func{static wxString}{GetUserLocalDataDir}{\void} |
| 170 | |
| 171 | Return the directory for user data files which shouldn't be shared with |
| 172 | the other machines. |
| 173 | |
| 174 | This is the same as \helpref{GetUserDataDir()}{wxstandardpathsgetuserdatadir} for |
| 175 | all platforms except Windows where it returns |
| 176 | \texttt{C:$\backslash$Documents and Settings$\backslash$\textit{username}$\backslash$Local Settings$\backslash$Application Data$\backslash$\textit{appname}} |
| 177 | |
| 178 | |
| 179 | \membersection{wxStandardPaths::SetInstallPrefix}\label{wxstandardpathssetinstallprefix} |
| 180 | |
| 181 | \func{static void}{SetInstallPrefix}{\param{const wxString\& }{prefix}} |
| 182 | |
| 183 | \textbf{Note:} This function is only available under Unix. |
| 184 | |
| 185 | Lets wxStandardPaths know about the real program installation prefix on a Unix |
| 186 | system. By default, the value returned by |
| 187 | \helpref{GetInstallPrefix}{wxstandardpathsgetinstallprefix} is used. |
| 188 | |
| 189 | Although under Linux systems the program prefix may usually be determined |
| 190 | automatically, portable programs should call this function. Usually the prefix |
| 191 | is set during program configuration if using GNU autotools and so it is enough |
| 192 | to pass its value defined in \texttt{config.h} to this function. |
| 193 | |
| 194 | |