]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/stdpaths.tex
Avoid missing ref
[wxWidgets.git] / docs / latex / wx / stdpaths.tex
CommitLineData
1ee445c7 1%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
96e2aec5
VZ
2%% Name: stdpaths.tex
3%% Purpose: wxStandardPaths documentation
1ee445c7
VZ
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>
8795498c 9%% License: wxWindows license
1ee445c7
VZ
10%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11
48713afd 12\section{\class{wxStandardPaths}}\label{wxstandardpaths}
1ee445c7 13
96e2aec5 14wxStandardPaths returns the standard locations in the file system and should be
dceb1c09 15used by applications to find their data files in a portable way.
1ee445c7 16
1ee445c7
VZ
17In the description of the methods below, the example return values are given
18for the Unix, Windows and Mac OS X systems, however please note that these are
48713afd
VZ
19just the examples and the actual values may differ. For example, under Windows:
20the system administrator may change the standard directories locations, i.e.
21the Windows directory may be named \texttt{W:$\backslash$Win2003} instead of
22the default \texttt{C:$\backslash$Windows}.
1ee445c7
VZ
23
24The strings \texttt{\textit{appname}} and \texttt{\textit{username}} should be
6cd6ec63
WS
25replaced with the value returned by \helpref{wxApp::GetAppName}{wxappgetappname}
26and the name of the currently logged in user, respectively. The string
48713afd
VZ
27\texttt{\textit{prefix}} is only used under Unix and is \texttt{/usr/local} by
28default but may be changed using \helpref{SetInstallPrefix}{wxstandardpathssetinstallprefix}.
1ee445c7
VZ
29
30The directories returned by the methods of this class may or may not exist. If
96e2aec5 31they don't exist, it's up to the caller to create them, wxStandardPaths doesn't
1ee445c7
VZ
32do it.
33
48713afd
VZ
34Finally note that these functions only work with standardly packaged
35applications. I.e. under Unix you should follow the standard installation
36conventions and under Mac you should create your application bundle according
37to the Apple guidelines. Again, this class doesn't help you to do it.
1ee445c7 38
b36d022a
VZ
39This class is MT-safe: its methods may be called concurrently from different
40threads without additional locking.
41
1ee445c7
VZ
42\wxheading{Derived from}
43
44No base class
45
46\wxheading{Include files}
47
08acda4f 48<wx/stdpaths.h>
1ee445c7
VZ
49
50
51\latexignore{\rtfignore{\wxheading{Members}}}
52
53
effdccd8
VZ
54\membersection{wxStandardPaths::Get}\label{wxstandardpathsget}
55
8648883b 56\func{static wxStandardPathsBase\&}{Get}{\void}
effdccd8
VZ
57
58Returns reference to the unique global standard paths object.
59
60
48713afd 61\membersection{wxStandardPaths::GetConfigDir}\label{wxstandardpathsgetconfigdir}
1ee445c7 62
ecf9559d 63\constfunc{wxString}{GetConfigDir}{\void}
1ee445c7
VZ
64
65Return the directory containing the system config files.
66
67Example return values:
68\begin{itemize}
69 \item Unix: \texttt{/etc}
b36d022a 70 \item Windows: \texttt{C:$\backslash$Documents and Settings$\backslash$All Users$\backslash$Application Data}
1ee445c7
VZ
71 \item Mac: \texttt{/Library/Preferences}
72\end{itemize}
73
74\wxheading{See also}
75
76\helpref{wxFileConfig}{wxfileconfig}
77
78
48713afd 79\membersection{wxStandardPaths::GetDataDir}\label{wxstandardpathsgetdatadir}
1ee445c7 80
ecf9559d 81\constfunc{wxString}{GetDataDir}{\void}
1ee445c7
VZ
82
83Return the location of the applications global, i.e. not user-specific,
84data files.
85
86Example return values:
87\begin{itemize}
48713afd 88 \item Unix: \texttt{\textit{prefix}/share/\textit{appname}}
90537299 89 \item Windows: the directory where the executable file is located
48713afd 90 \item Mac: \texttt{\textit{appname}.app/Contents/SharedSupport} bundle subdirectory
1ee445c7
VZ
91\end{itemize}
92
93\wxheading{See also}
94
48713afd
VZ
95\helpref{GetLocalDataDir}{wxstandardpathsgetlocaldatadir}
96
97
17af82fb
VZ
98\membersection{wxStandardPaths::GetDocumentsDir}\label{wxstandardpathsgetdocumentsdir}
99
ecf9559d 100\constfunc{wxString}{GetDocumentsDir}{\void}
17af82fb
VZ
101
102Return the directory containing the current user's documents.
103
104Example return values:
105\begin{itemize}
106 \item Unix: \tt{~} (the home directory)
107 \item Windows: \texttt{C:$\backslash$Documents and Settings$\backslash$\textit{username}$\backslash$Documents}
108 \item Mac: \texttt{~/Documents}
109\end{itemize}
110
a06ee288
MR
111\newsince{2.7.0}
112
17af82fb 113
48713afd
VZ
114\membersection{wxStandardPaths::GetInstallPrefix}\label{wxstandardpathsgetinstallprefix}
115
ecf9559d 116\constfunc{wxString}{GetInstallPrefix}{\void}
48713afd
VZ
117
118\textbf{Note: } This function is only available under Unix.
119
6cd6ec63 120Return the program installation prefix, e.g. \texttt{/usr}, \texttt{/opt} or
48713afd 121\texttt{/home/zeitlin}.
1ee445c7 122
6cd6ec63 123If the prefix had been previously by
48713afd
VZ
124\helpref{SetInstallPrefix}{wxstandardpathssetinstallprefix}, returns that
125value, otherwise tries to determine it automatically (Linux only right
126now) and finally returns the default \texttt{/usr/local} value if it failed.
1ee445c7 127
48713afd
VZ
128
129\membersection{wxStandardPaths::GetLocalDataDir}\label{wxstandardpathsgetlocaldatadir}
1ee445c7 130
ecf9559d 131\constfunc{wxString}{GetLocalDataDir}{\void}
1ee445c7
VZ
132
133Return the location for application data files which are host-specific and
134can't, or shouldn't, be shared with the other machines.
135
48713afd 136This is the same as \helpref{GetDataDir()}{wxstandardpathsgetdatadir} except
1ee445c7
VZ
137under Unix where it returns \texttt{/etc/\textit{appname}}.
138
139
f3b0f8ad
VZ
140\membersection{wxStandardPaths::GetLocalizedResourcesDir}\label{wxstandardpathsgetlocalizedresourcesdir}
141
ecf9559d 142\constfunc{wxString}{GetLocalizedResourcesDir}{\param{const wxChar*}{ lang}, \param{ResourceCat}{ category = ResourceCat\_None}}
f3b0f8ad
VZ
143
144Return the localized resources directory containing the resource files of the
145specified category for the given language.
146
6cd6ec63
WS
147In general this is just the same as \arg{lang} subdirectory of
148\helpref{GetResourcesDir()}{wxstandardpathsgetresourcesdir} (or
f3b0f8ad 149\texttt{\arg{lang}.lproj} under Mac OS X) but is something quite
6cd6ec63 150different for message catalog category under Unix where it returns the standard
f3b0f8ad
VZ
151\texttt{\textit{prefix}/share/locale/\arg{lang}/LC\_MESSAGES} directory.
152
a06ee288
MR
153\newsince{2.7.0}
154
f3b0f8ad 155
48713afd 156\membersection{wxStandardPaths::GetPluginsDir}\label{wxstandardpathsgetpluginsdir}
1ee445c7 157
ecf9559d 158\constfunc{wxString}{GetPluginsDir}{\void}
1ee445c7
VZ
159
160Return the directory where the loadable modules (plugins) live.
161
f3b0f8ad
VZ
162Example return values:
163\begin{itemize}
164 \item Unix: \texttt{\textit{prefix}/share/\textit{appname}}
165 \item Windows: the directory where the executable file is located
166 \item Mac: \texttt{\textit{appname}.app/Contents/Resources} bundle subdirectory
167\end{itemize}
168
169\wxheading{See also}
170
171\helpref{wxDynamicLibrary}{wxdynamiclibrary}
172
173
174\membersection{wxStandardPaths::GetResourcesDir}\label{wxstandardpathsgetresourcesdir}
175
ecf9559d 176\constfunc{wxString}{GetResourcesDir}{\void}
f3b0f8ad
VZ
177
178Return the directory where the application resource files are located. The
179resources are the auxiliary data files needed for the application to run and
180include, for example, image and sound files it might use.
181
182This function is the same as \helpref{GetDataDir}{wxstandardpathsgetdatadir} for
183all platforms except Mac OS X.
184
1ee445c7
VZ
185Example return values:
186\begin{itemize}
48713afd 187 \item Unix: \texttt{\textit{prefix}/lib/\textit{appname}}
1ee445c7 188 \item Windows: the directory of the executable file
48713afd 189 \item Mac: \texttt{\textit{appname}.app/Contents/PlugIns} bundle subdirectory
1ee445c7
VZ
190\end{itemize}
191
a06ee288
MR
192\newsince{2.7.0}
193
194
1ee445c7
VZ
195\wxheading{See also}
196
f3b0f8ad 197\helpref{GetLocalizedResourcesDir}{wxstandardpathsgetlocalizedresourcesdir}
1ee445c7 198
ecf9559d
JS
199\membersection{wxStandardPaths::GetTempDir}\label{wxstandardpathsgettempdir}
200
201\constfunc{wxString}{GetTempDir}{\void}
202
203Return the directory for storing temporary files. To create unique temporary files,
204it is best to use \helpref{wxFileName::CreateTempFileName}{wxfilenamecreatetempfilename} for correct behaviour when
205multiple processes are attempting to create temporary files.
206
207\newsince{2.7.2}
1ee445c7 208
48713afd 209\membersection{wxStandardPaths::GetUserConfigDir}\label{wxstandardpathsgetuserconfigdir}
1ee445c7 210
ecf9559d 211\constfunc{wxString}{GetUserConfigDir}{\void}
1ee445c7
VZ
212
213Return the directory for the user config files:
214\begin{itemize}
0d2b62c5 215 \item Unix: \tt{~} (the home directory)
da557e09 216 \item Windows: \tt{C:$\backslash$Documents and Settings$\backslash$\textit{username}$\backslash$Application Data}
0d2b62c5 217 \item Mac: \tt{~/Library/Preferences}
1ee445c7
VZ
218\end{itemize}
219
220Only use this method if you have a single configuration file to put in this
48713afd 221directory, otherwise \helpref{GetUserDataDir()}{wxstandardpathsgetuserdatadir} is
1ee445c7
VZ
222more appropriate.
223
224
48713afd 225\membersection{wxStandardPaths::GetUserDataDir}\label{wxstandardpathsgetuserdatadir}
1ee445c7 226
ecf9559d 227\constfunc{wxString}{GetUserDataDir}{\void}
1ee445c7
VZ
228
229Return the directory for the user-dependent application data files:
230\begin{itemize}
0d2b62c5 231 \item Unix: \tt{~/.\textit{appname}}
6fdd4565 232 \item Windows: \tt{C:$\backslash$Documents and Settings$\backslash$\textit{username}$\backslash$Application Data$\backslash$\textit{appname}}
0d2b62c5 233 \item Mac: \tt{~/Library/Application Support/\textit{appname}}
1ee445c7
VZ
234\end{itemize}
235
236
48713afd 237\membersection{wxStandardPaths::GetUserLocalDataDir}\label{wxstandardpathsgetuserlocaldatadir}
1ee445c7 238
ecf9559d 239\constfunc{wxString}{GetUserLocalDataDir}{\void}
1ee445c7
VZ
240
241Return the directory for user data files which shouldn't be shared with
242the other machines.
243
48713afd 244This is the same as \helpref{GetUserDataDir()}{wxstandardpathsgetuserdatadir} for
6cd6ec63 245all platforms except Windows where it returns
96e2aec5 246\texttt{C:$\backslash$Documents and Settings$\backslash$\textit{username}$\backslash$Local Settings$\backslash$Application Data$\backslash$\textit{appname}}
1ee445c7
VZ
247
248
48713afd
VZ
249\membersection{wxStandardPaths::SetInstallPrefix}\label{wxstandardpathssetinstallprefix}
250
effdccd8 251\func{void}{SetInstallPrefix}{\param{const wxString\& }{prefix}}
48713afd 252
dceb1c09 253\textbf{Note:} This function is only available under Unix.
48713afd
VZ
254
255Lets wxStandardPaths know about the real program installation prefix on a Unix
ecf9559d 256system. By default, the value returned by
48713afd
VZ
257\helpref{GetInstallPrefix}{wxstandardpathsgetinstallprefix} is used.
258
259Although under Linux systems the program prefix may usually be determined
260automatically, portable programs should call this function. Usually the prefix
261is set during program configuration if using GNU autotools and so it is enough
262to pass its value defined in \texttt{config.h} to this function.
263