Version: 3.2.2
filename.h File Reference

Classes

class  wxFileName
 wxFileName encapsulates a file name. More...
 

Enumerations

enum  wxPathFormat {
  wxPATH_NATIVE = 0 ,
  wxPATH_UNIX ,
  wxPATH_BEOS = wxPATH_UNIX ,
  wxPATH_MAC ,
  wxPATH_DOS ,
  wxPATH_WIN = wxPATH_DOS ,
  wxPATH_OS2 = wxPATH_DOS ,
  wxPATH_VMS ,
  wxPATH_MAX
}
 The various values for the path format: this mainly affects the path separator but also whether or not the path has the drive part (as under Windows). More...
 
enum  wxSizeConvention {
  wxSIZE_CONV_TRADITIONAL ,
  wxSIZE_CONV_IEC ,
  wxSIZE_CONV_SI
}
 Different conventions for human readable sizes. More...
 
enum  wxPathNormalize {
  wxPATH_NORM_ENV_VARS = 0x0001 ,
  wxPATH_NORM_DOTS = 0x0002 ,
  wxPATH_NORM_TILDE = 0x0004 ,
  wxPATH_NORM_CASE = 0x0008 ,
  wxPATH_NORM_ABSOLUTE = 0x0010 ,
  wxPATH_NORM_LONG = 0x0020 ,
  wxPATH_NORM_SHORTCUT = 0x0040 ,
  wxPATH_NORM_ALL = 0x00ff & ~wxPATH_NORM_CASE
}
 The kind of normalization to do with the file name: these values can be or'd together to perform several operations at once. More...
 
enum  {
  wxPATH_RMDIR_FULL = 1 ,
  wxPATH_RMDIR_RECURSIVE = 2
}
 Flags for wxFileName::Rmdir(). More...
 
enum  {
  wxFILE_EXISTS_REGULAR = 0x0001 ,
  wxFILE_EXISTS_DIR = 0x0002 ,
  wxFILE_EXISTS_SYMLINK = 0x1004 ,
  wxFILE_EXISTS_DEVICE = 0x0008 ,
  wxFILE_EXISTS_FIFO = 0x0016 ,
  wxFILE_EXISTS_SOCKET = 0x0032 ,
  wxFILE_EXISTS_NO_FOLLOW
}
 Flags for wxFileName::Exists(). More...
 

Variables

wxULongLong wxInvalidSize
 The return value of wxFileName::GetSize() in case of error. More...
 

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Flags for wxFileName::Rmdir().

Enumerator
wxPATH_RMDIR_FULL 

Delete the specified directory and its subdirectories if they are empty.

wxPATH_RMDIR_RECURSIVE 

Delete the specified directory and all the files and subdirectories in it recursively.

This flag is obviously dangerous and should be used with care and after asking the user for confirmation.

◆ anonymous enum

anonymous enum

Flags for wxFileName::Exists().

Since
2.9.5
Enumerator
wxFILE_EXISTS_REGULAR 

Check for existence of a regular file.

wxFILE_EXISTS_DIR 

Check for existence of a directory.

wxFILE_EXISTS_SYMLINK 

Check for existence of a symlink.

Notice that this flag also sets wxFILE_EXISTS_NO_FOLLOW, otherwise it would never be satisfied as wxFileName::Exists() would be checking for the existence of the symlink target and not the symlink itself.

wxFILE_EXISTS_DEVICE 

Check for existence of a device.

wxFILE_EXISTS_FIFO 

Check for existence of a FIFO.

wxFILE_EXISTS_SOCKET 

Check for existence of a socket.

wxFILE_EXISTS_NO_FOLLOW 

Don't dereference a contained symbolic link.

Check for existence of anything

◆ wxPathFormat

The various values for the path format: this mainly affects the path separator but also whether or not the path has the drive part (as under Windows).

See wxFileName for more info.

Enumerator
wxPATH_NATIVE 

the path format for the current platform.

wxPATH_UNIX 
wxPATH_BEOS 
wxPATH_MAC 
wxPATH_DOS 
wxPATH_WIN 
wxPATH_OS2 
wxPATH_VMS 
wxPATH_MAX 

Not a valid value for specifying path format.

◆ wxPathNormalize

The kind of normalization to do with the file name: these values can be or'd together to perform several operations at once.

See wxFileName::Normalize() for more info.

Enumerator
wxPATH_NORM_ENV_VARS 

Replace environment variables with their values.

wxFileName understands both Unix and Windows (but only under Windows) environment variables expansion: i.e. "$var", "$(var)" and "${var}" are always understood and in addition under Windows "%var%" is also.

Note that when this flag is used, dollar or percent signs may be escaped with backslashes to prevent them from being used for the variable expansion, meaning that normalizing any path with a directory starting with a dollar sign under Windows can give unexpected results, as normalizing c:\foo\$bar results in c:\foo$bar. Because of this, using this flag with arbitrary paths is not recommended.

wxPATH_NORM_DOTS 

Squeeze all ".." and ".".

wxPATH_NORM_TILDE 

Replace "~" and "~user" (Unix only).

wxPATH_NORM_CASE 

If the platform is case insensitive, make lowercase the path.

wxPATH_NORM_ABSOLUTE 

Make the path absolute.

wxPATH_NORM_LONG 

Expand the path to the "long" form under Windows.

This flag converts DOS short paths in 8.3 format to long form under Windows and does nothing under the other platforms. It is mostly irrelevant nowadays as short paths are not used any longer in practice.

Notice that it only works for the existing file paths.

See also
wxFileName::GetLongPath()
wxPATH_NORM_SHORTCUT 

Resolve the shortcut, if it is a shortcut (Windows only).

wxPATH_NORM_ALL 

Flags used by wxFileName::Normalize() by default.

This includes all normalization flags except for wxPATH_NORM_CASE and notably does include wxPATH_NORM_ENV_VARS which may yield unexpected results, as described above. Because of this, this flag is deprecated and shouldn't be used in the new code and the existing code should be reviewed to check if expanding environment variables is really needed.

◆ wxSizeConvention

Different conventions for human readable sizes.

See also
wxFileName::GetHumanReadableSize().
Since
2.9.1
Enumerator
wxSIZE_CONV_TRADITIONAL 

1024 bytes = 1KB.

wxSIZE_CONV_IEC 

1024 bytes = 1KiB.

wxSIZE_CONV_SI 

1000 bytes = 1KB.

Variable Documentation

◆ wxInvalidSize

wxULongLong wxInvalidSize

The return value of wxFileName::GetSize() in case of error.