// headers
// ----------------------------------------------------------------------------
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma implementation "filename.h"
-#endif
-
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#endif
#ifndef WX_PRECOMP
-#include "wx/intl.h"
-#include "wx/log.h"
-#include "wx/file.h"
+ #include "wx/dynarray.h"
+ #include "wx/intl.h"
+ #include "wx/log.h"
+ #include "wx/file.h"
+ #include "wx/utils.h"
#endif
#include "wx/filename.h"
#include "wx/tokenzr.h"
#include "wx/config.h" // for wxExpandEnvVars
-#include "wx/utils.h"
#include "wx/file.h"
#include "wx/dynlib.h"
// use the directory specified by the prefix
SplitPath(prefix, &dir, &name, NULL /* extension */);
+ if (dir.empty())
+ {
+ dir = wxGetenv(_T("TMPDIR"));
+ if (dir.empty())
+ {
+ dir = wxGetenv(_T("TMP"));
+ if (dir.empty())
+ {
+ dir = wxGetenv(_T("TEMP"));
+ }
+ }
+ }
+
#if defined(__WXWINCE__)
if (dir.empty())
{
// FIXME. Create \temp dir?
- dir = wxT("\\");
+ if (DirExists(wxT("\\temp")))
+ dir = wxT("\\temp");
}
- path = dir + wxT("\\") + prefix;
+ path = dir + wxT("\\") + name;
int i = 1;
while (FileExists(path))
{
- path = dir + wxT("\\") + prefix ;
+ path = dir + wxT("\\") + name ;
path << i;
i ++;
}
#else // !Windows
if ( dir.empty() )
{
-#if defined(__WXMAC__) && !defined(__DARWIN__)
- dir = wxMacFindFolder( (short) kOnSystemDisk, kTemporaryFolderType, kCreateFolder ) ;
-#else // !Mac
- dir = wxGetenv(_T("TMP"));
- if ( dir.empty() )
- {
- dir = wxGetenv(_T("TEMP"));
- }
-
- if ( dir.empty() )
- {
- // default
- #if defined(__DOS__) || defined(__OS2__)
- dir = _T(".");
- #else
- dir = _T("/tmp");
- #endif
- }
-#endif // Mac/!Mac
+ // default
+#if defined(__DOS__) || defined(__OS2__)
+ dir = _T(".");
+#elif defined(__WXMAC__)
+ dir = wxMacFindFolder(short(kOnSystemDisk), kTemporaryFolderType, kCreateFolder);
+#else
+ dir = _T("/tmp");
+#endif
}
path = dir;
path = pathTry;
#endif // HAVE_MKTEMP/!HAVE_MKTEMP
- if ( !path.empty() )
- {
- }
#endif // HAVE_MKSTEMP/!HAVE_MKSTEMP
#endif // Windows/!Windows
}
/* static */
-wxString wxFileName::GetVolumeSeparator(wxPathFormat format)
+wxString wxFileName::GetVolumeSeparator(wxPathFormat WXUNUSED_IN_WINCE(format))
{
+#ifdef __WXWINCE__
+ return wxEmptyString;
+#else
wxString sepVol;
if ( (GetFormat(format) == wxPATH_DOS) ||
//else: leave empty
return sepVol;
+#endif
}
/* static */
wxDynamicLibrary dllKernel(_T("kernel32"));
-#ifdef _UNICODE
- #define ADD_STR_SFX(name) L#name L"W"
-#else
- #define ADD_STR_SFX(name) #name "A"
-#endif
+ const wxChar* GetLongPathName = _T("GetLongPathName")
+#if wxUSE_UNICODE
+ _T("W");
+#else // ANSI
+ _T("A");
+#endif // Unicode/ANSI
- if ( dllKernel.HasSymbol(ADD_STR_SFX(GetLongPathName)) )
+ if ( dllKernel.HasSymbol(GetLongPathName) )
{
s_pfnGetLongPathName = (GET_LONG_PATH_NAME)
- dllKernel.GetSymbol(ADD_STR_SFX(GetLongPathName));
+ dllKernel.GetSymbol(GetLongPathName);
}
// note that kernel32.dll can be unloaded, it stays in memory
}
}
#elif defined(__UNIX_LIKE__) || (defined(__DOS__) && defined(__WATCOMC__))
+ wxUnusedVar(dtCreate);
+
if ( !dtAccess && !dtMod )
{
// can't modify the creation time anyhow, don't try
return true;
}
#else // other platform
+ wxUnusedVar(dtAccess);
+ wxUnusedVar(dtMod);
+ wxUnusedVar(dtCreate);
#endif // platforms
wxLogSysError(_("Failed to modify file times for '%s'"),
return true;
}
-#elif defined(__UNIX_LIKE__) || defined(__WXMAC__) || (defined(__DOS__) && defined(__WATCOMC__))
+#elif defined(__UNIX_LIKE__) || defined(__WXMAC__) || defined(__OS2__) || (defined(__DOS__) && defined(__WATCOMC__))
wxStructStat stBuf;
if ( wxStat( GetFullPath().c_str(), &stBuf) == 0 )
{
return true;
}
#else // other platform
+ wxUnusedVar(dtAccess);
+ wxUnusedVar(dtMod);
+ wxUnusedVar(dtCreate);
#endif // platforms
wxLogSysError(_("Failed to retrieve file times for '%s'"),
OSType m_creator ;
} ;
-#include "wx/dynarray.h"
WX_DECLARE_OBJARRAY(MacDefaultExtensionRecord, MacDefaultExtensionArray) ;
bool gMacDefaultExtensionsInited = false ;