Restore correct behaviour of GetTimes() wrt to
directories. Add some (hopefully) clarifying docs about dealing with dir names vs. file names. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -19,6 +19,39 @@ Second, it includes the functions for working with the files itself. Note that
|
||||
to change the file data you should use \helpref{wxFile}{wxfile} class instead.
|
||||
wxFileName provides functions for working with the file attributes.
|
||||
|
||||
When working with directory names (i.e. without filename and extension)
|
||||
make sure not to misuse the file name part of this class with the last
|
||||
directory. Instead initialize the wxFileName instance like this:
|
||||
|
||||
\begin{verbatim}
|
||||
wxFileName dirname( wxT("C:\mydir"), wxEmptyString );
|
||||
MyMethod( dirname.GetPath() );
|
||||
\end{verbatim}
|
||||
|
||||
Accordingly, methods dealing with directories or directory names
|
||||
like \helpref{IsDirReadable}{wxfilenameisdirreadale} use
|
||||
\helpref{GetPath}{wxfilenamegetpath} whereas methods dealing
|
||||
with file names like \helpref{IsFileReadable}{wxfilenameisfilereadale}
|
||||
use \helpref{GetFullPath}{wxfilenamegetfullpath}.
|
||||
|
||||
If it is not known wether a string contains a directory name or
|
||||
a complete file name (such as when interpreting user input) you need to use
|
||||
the static function \helpref{wxFileName::DirExists}{wxfilenamedirexists}
|
||||
(or its global variant \helpref{wxDirExists}{wxdirexists}) and
|
||||
construct the wxFileName instance accordingly. This will only work
|
||||
if the directory actually exists, of course:
|
||||
|
||||
\begin{verbatim}
|
||||
wxString user_input;
|
||||
// get input from user
|
||||
|
||||
wxFileName fname;
|
||||
if (wxDirExists(user_input))
|
||||
fname.AssignDir( user_input );
|
||||
else
|
||||
fname.Assign( user_input );
|
||||
\end{verbatim}
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
No base class
|
||||
@@ -575,6 +608,12 @@ under Windows and the inode change time under Unix (as it is impossible to
|
||||
retrieve the real file creation time there anyhow) which can also be changed
|
||||
by many operations after the file creation.
|
||||
|
||||
If no filename or extension is specified in this instance of wxFileName
|
||||
(and therefore \helpref{IsDir}{wxfilenameisdir} returns {\tt true}) then
|
||||
this function will return the directory times of the path specified by
|
||||
\helpref{GetPath}{wxfilenamegetpath}, otherwise the file times of the
|
||||
file specified by \helpref{GetFullPath}{wxfilenamegetfullpath}.
|
||||
|
||||
Any of the pointers may be {\tt NULL} if the corresponding time is not
|
||||
needed.
|
||||
|
||||
|
Reference in New Issue
Block a user