m_dirs.Add(dir);
}
-#ifdef __WIN32__
+#if defined(__WIN32__) && !defined(__WXWINCE__) && wxUSE_OLE
if ( (flags & wxPATH_NORM_SHORTCUT) )
{
wxString filename;
// get the shortcut target
// ----------------------------------------------------------------------------
-#if defined(__WIN32__) && !defined(__WXWINCE__)
+// WinCE (3) doesn't have CLSID_ShellLink, IID_IShellLink definitions.
+// The .lnk file is a plain text file so it should be easy to
+// make it work. Hint from Google Groups:
+// "If you open up a lnk file, you'll see a
+// number, followed by a pound sign (#), followed by more text. The
+// number is the number of characters that follows the pound sign. The
+// characters after the pound sign are the command line (which _can_
+// include arguments) to be executed. Any path (e.g. \windows\program
+// files\myapp.exe) that includes spaces needs to be enclosed in
+// quotation marks."
+
+#if defined(__WIN32__) && !defined(__WXWINCE__) && wxUSE_OLE
+// The following lines are necessary under WinCE
+// #include "wx/msw/private.h"
+// #include <ole2.h>
#include <shlobj.h>
+#if defined(__WXWINCE__)
+#include <shlguid.h>
#endif
-#ifdef __WIN32__
bool wxFileName::GetShortcutTarget(const wxString& shortcutPath, wxString& targetFilename, wxString* arguments)
{
-#ifdef __WXWINCE__
- // Not tested on WinCE, so don't compile yet
- return shortcutPath;
-#else
wxString path, file, ext;
wxSplitPath(shortcutPath, & path, & file, & ext);
hres = psl->QueryInterface( IID_IPersistFile, (LPVOID *) &ppf);
if (SUCCEEDED(hres))
{
- WORD wsz[MAX_PATH];
+ WCHAR wsz[MAX_PATH];
MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED, shortcutPath.mb_str(), -1, wsz,
MAX_PATH);
}
psl->Release();
return success;
-#endif
}
#endif
MacDefaultExtensionArray gMacDefaultExtensions ;
-static void MacEnsureDefaultExtensionsLoaded()
+// load the default extensions
+MacDefaultExtensionRecord gDefaults[] =
{
- if ( !gMacDefaultExtensionsInited )
- {
+ MacDefaultExtensionRecord( wxT("txt") , 'TEXT' , 'ttxt' ) ,
+ MacDefaultExtensionRecord( wxT("tif") , 'TIFF' , '****' ) ,
+ MacDefaultExtensionRecord( wxT("jpg") , 'JPEG' , '****' ) ,
+} ;
- // load the default extensions
- MacDefaultExtensionRecord defaults[1] =
- {
- MacDefaultExtensionRecord( wxT("txt") , 'TEXT' , 'ttxt' ) ,
-
- } ;
- // we could load the pc exchange prefs here too
-
- for ( size_t i = 0 ; i < WXSIZEOF( defaults ) ; ++i )
+static void MacEnsureDefaultExtensionsLoaded()
+{
+ if ( !gMacDefaultExtensionsInited )
{
- gMacDefaultExtensions.Add( defaults[i] ) ;
+ // we could load the pc exchange prefs here too
+ for ( size_t i = 0 ; i < WXSIZEOF( gDefaults ) ; ++i )
+ {
+ gMacDefaultExtensions.Add( gDefaults[i] ) ;
+ }
+ gMacDefaultExtensionsInited = true ;
}
- gMacDefaultExtensionsInited = true ;
- }
}
bool wxFileName::MacSetTypeAndCreator( wxUint32 type , wxUint32 creator )
{