]> git.saurik.com Git - wxWidgets.git/commitdiff
fix for wxUniversal on win32 platforms
authorChris Elliott <biol75@york.ac.uk>
Wed, 11 Dec 2002 15:10:23 +0000 (15:10 +0000)
committerChris Elliott <biol75@york.ac.uk>
Wed, 11 Dec 2002 15:10:23 +0000 (15:10 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18193 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/filedlg.h
src/generic/filedlgg.cpp

index e3564fb8c47f909ef255a954a6aeb28d163f46d3..63e8842d501c8f8c6daabeb6c277170f30fa6552 100644 (file)
@@ -14,7 +14,9 @@ enum
     wxCHANGE_DIR        = 0x0040
 };
 
-#if defined(__WXMSW__)
+#if defined (__WXUNIVERSAL__)
+#include "wx/generic/filedlgg.h"
+#elif defined(__WXMSW__)
 #include "wx/msw/filedlg.h"
 #elif defined(__WXMOTIF__)
 #include "wx/motif/filedlg.h"
index ba237ba999268b3f321b4943cd856ec28668545c..1bb598fe6c7a30e63b259f9792e44be141e80e6f 100644 (file)
@@ -30,8 +30,8 @@
 
 #if wxUSE_FILEDLG
 
-#if !defined(__UNIX__) && !defined(__DOS__)
-#error wxFileDialog currently only supports Unix and DOS
+#if !defined(__UNIX__) && !defined(__DOS__) && !defined(__WIN32__)
+#error wxFileDialog currently only supports Unix, win32 and DOS
 #endif
 
 #include "wx/checkbox.h"
@@ -76,7 +76,9 @@
 #endif
 
 #include <time.h>
+#if defined(__UNIX__) || defined(__DOS__)
 #include <unistd.h>
+#endif
 
 // ----------------------------------------------------------------------------
 // constants
@@ -364,7 +366,16 @@ int wxFileIconsTable::GetIconID(const wxString& extension, const wxString& mime)
         m_HashTable.Put(extension, new wxFileIconEntry(newid));
         return newid;
     }
+#ifdef __WIN32__
+    wxBitmap myBitmap (ic.GetWidth(), ic.GetHeight() ) ;
+    wxMemoryDC memDC;
+    memDC.SelectObject( myBitmap );
+    memDC.DrawIcon(ic,0,0);
+    memDC.SelectObject( wxNullBitmap );
+    wxImage img = myBitmap.ConvertToImage();
+#else
     wxImage img = ic.ConvertToImage();
+#endif
     delete ft;
 
     int id = m_ImageList.GetImageCount();
@@ -396,7 +407,7 @@ int wxFileIconsTable::GetIconID(const wxString& extension, const wxString& mime)
 // ----------------------------------------------------------------------------
 
 static
-int ListCompare( long data1, long data2, long WXUNUSED(data) )
+int ListCompare( long data1, long data2, long WXUNUSED(data))
 {
      wxFileData *fd1 = (wxFileData*)data1 ;
      wxFileData *fd2 = (wxFileData*)data2 ;
@@ -788,7 +799,7 @@ void wxFileCtrl::UpdateFiles()
         }
     }
 
-    SortItems(ListCompare, 0);
+    SortItems((wxListCtrlCompare)ListCompare, 0);
 
     if ( my_style & wxLC_REPORT )
     {
@@ -851,7 +862,7 @@ void wxFileCtrl::MakeDir()
 
     if (id != -1)
     {
-        SortItems( ListCompare, 0 );
+        SortItems( (wxListCtrlCompare) ListCompare, 0 );
         id = FindItem( 0, (long)fd );
         EnsureVisible( id );
         EditLabel( id );