See \helpref{config overview}{wxconfigoverview} for the descriptions of all
features of this class.
+It is highly recommended to use static functions {\it Get()} and/or {\it Set()},
+so please have a \helpref{look at them.}{wxconfigstaticfunctions}
+
\wxheading{Derived from}
No base class
\latexignore{\rtfignore{\wxheading{Function groups}}}
-\membersection{Static functions}
+\membersection{Static functions}\label{wxconfigstaticfunctions}
These functions deal with the "default" config object. Although its usage is
not at all mandatory it may be convenient to use a global config object
is no current object, it will create one using {\it Create()} function. To
disable this behaviour {\it DontCreateOnDemand()} is provided.
+{\bf Note:} You should use either {\it Set()} or {\it Get()} because wxWindows
+library itself would take advantage of it and could save various information
+in it. For example \helpref{wxFontMapper}{wxfontmapper} or Unix version
+of \helpref{wxFileDialog}{wxfiledialog} have ability to use wxConfig class.
+
\helpref{Set}{wxconfigbaseset}\\
\helpref{Get}{wxconfigbaseget}\\
\helpref{Create}{wxconfigbasecreate}\\
\helpref{HasGroup}{wxconfigbasehasgroup}\\
\helpref{HasEntry}{wxconfigbasehasentry}\\
-\helpref{Exists}{wxconfigbaseexists}
+\helpref{Exists}{wxconfigbaseexists}\\
+\helpref{GetEntryType}{wxconfigbasegetentrytype}
\membersection{Miscellaneous accessors}
-\helpref{SetAppName}{wxconfigbasesetappname}\\
\helpref{GetAppName}{wxconfigbasegetappname}\\
-\helpref{SetVendorName}{wxconfigbasesetvendorname}\\
\helpref{GetVendorName}{wxconfigbasegetvendorname}
\membersection{Key access}
a local or global config file is created or used. If the flag is present but
the parameter is empty, the parameter will be set to a default. If the
parameter is present but the style flag not, the relevant flag will be added
-to the style.}
+to the style. For wxFileConfig you can also add wxCONFIG\_USE\_RELATIVE\_PATH
+by logicaly or'ing it to either of the \_FILE options to tell wxFileConfig to
+use relative instead of absolute paths. }
\wxheading{Remarks}
\membersection{wxConfigBase::Get}\label{wxconfigbaseget}
-\func{wxConfigBase *}{Get}{\void}
+\func{wxConfigBase *}{Get}{\param{bool }{CreateOnDemand = TRUE}}
-Get the current config object. If there is no current object, creates one
+Get the current config object. If there is no current object and
+{\it CreateOnDemand} is TRUE, creates one
(using {\it Create}) unless DontCreateOnDemand was called previously.
\membersection{wxConfigBase::GetAppName}\label{wxconfigbasegetappname}
Returns the application name.
+\membersection{wxConfigBase::GetEntryType}\label{wxconfigbasegetentrytype}
+
+\constfunc{enum wxConfigBase::EntryType}{GetEntryType}{\param{const wxString\& }{name}}
+
+Returns the type of the given entry or {\it Unknown} if the entry doesn't
+exist. This function should be used to decide which version of Read() should
+be used because some of wxConfig implementations will complain about type
+mismatch otherwise: e.g., an attempt to read a string value from an integer
+key with wxRegConfig will fail.
+
+The result is an element of enum EntryType:
+
+\begin{verbatim}
+ enum EntryType
+ {
+ Unknown,
+ String,
+ Boolean,
+ Integer,
+ Float
+ };
+\end{verbatim}
+
\membersection{wxConfigBase::GetFirstGroup}\label{wxconfigbasegetfirstgroup}
\constfunc{bool}{GetFirstGroup}{\param{wxString\& }{str}, \param{long\&}{
\pythonnote{In place of a single overloaded method name, wxPython
implements the following methods:\par
\indented{2cm}{\begin{twocollist}
-\twocolitem{\bf{Read(key, default="")}}{Returns a string.}
-\twocolitem{\bf{ReadInt(key, default=0)}}{Returns an int.}
-\twocolitem{\bf{ReadFloat(key, default=0.0)}}{Returns a floating point number.}
+\twocolitem{{\bf Read(key, default="")}}{Returns a string.}
+\twocolitem{{\bf ReadInt(key, default=0)}}{Returns an int.}
+\twocolitem{{\bf ReadFloat(key, default=0.0)}}{Returns a floating point number.}
\end{twocollist}}
}
Sets the config object as the current one, returns the pointer to the previous
current object (both the parameter and returned value may be NULL)
-\membersection{wxConfigBase::SetAppName}\label{wxconfigbasesetappname}
-
-\func{void }{SetAppName}{\param{const wxString\&}{ appName}}
-
-Sets the application name.
-
\membersection{wxConfigBase::SetExpandingEnvVars}\label{wxconfigbasesetexpandingenvvars}
\func{void}{SetExpandEnvVars }{\param{bool }{bDoIt = TRUE}}
This allows the user to see what config options may be changed and is probably
useful only for wxFileConfig.
-\membersection{wxConfigBase::SetVendorName}\label{wxconfigbasesetvendorname}
-
-\func{void}{SetVendorName}{\param{const wxString\&}{ vendorName}}
-
-Sets the vendor name.
-
\membersection{wxConfigBase::Write}\label{wxconfigbasewrite}
\func{bool}{Write}{\param{const wxString\& }{ key}, \param{const wxString\& }{
\pythonnote{In place of a single overloaded method name, wxPython
implements the following methods:\par
\indented{2cm}{\begin{twocollist}
-\twocolitem{\bf{Write(key, value)}}{Writes a string.}
-\twocolitem{\bf{WriteInt(key, value)}}{Writes an int.}
-\twocolitem{\bf{WriteFloat(key, value)}}{Writes a floating point number.}
+\twocolitem{{\bf Write(key, value)}}{Writes a string.}
+\twocolitem{{\bf WriteInt(key, value)}}{Writes an int.}
+\twocolitem{{\bf WriteFloat(key, value)}}{Writes a floating point number.}
\end{twocollist}}
}