]> git.saurik.com Git - wxWidgets.git/commitdiff
several mingw32 compilation fixes
authorVadim Zeitlin <vadim@wxwidgets.org>
Mon, 24 Jan 2000 20:19:39 +0000 (20:19 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Mon, 24 Jan 2000 20:19:39 +0000 (20:19 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@5642 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/dynlib.h
src/common/resource.cpp
src/msw/bitmap.cpp
src/msw/dcprint.cpp
src/msw/dde.cpp
src/msw/imaglist.cpp
src/msw/listctrl.cpp
src/msw/spinbutt.cpp

index 5f5a9f4f017c6d70f24fdc211782a9f4801d7c84..2ba2c3f4b6ccc620a973fc85ae973b175109e9cf 100644 (file)
@@ -40,7 +40,7 @@
 #   include <dl.h>
     typedef shl_t wxDllType;
 #elif defined(__WINDOWS__)
-//#   include <windows.h>  
+#   include <windows.h>         // needed to get HMODULE
     typedef HMODULE wxDllType;
 #elif defined(__OS2__)
 #   define INCL_DOS
@@ -61,6 +61,7 @@
 // ----------------------------------------------------------------------------
 // wxDllLoader
 // ----------------------------------------------------------------------------
+
 /** wxDllLoader is a class providing an interface similar to unix's
     dlopen(). It is used by the wxLibrary framework and manages the
     actual loading of DLLs and the resolving of symbols in them.
 */
 class wxDllLoader
 {
- public:
-   /** This function loads a shared library into memory, with libname
-       being the basename of the library, without the filename
-       extension. No initialisation of the library will be done.
-       @param libname Name of the shared object to load.
-       @param success Must point to a bool variable which will be set to TRUE or FALSE.
-       @return A handle to the loaded DLL. Use success parameter to test if it is valid.
-   */
-   static wxDllType LoadLibrary(const wxString & libname, bool *success = NULL);
-   /** This function unloads the shared library. */
-   static void UnloadLibrary(wxDllType dll);
-   /** This function returns a valid handle for the main program
-       itself. */
-   static wxDllType GetProgramHandle(void);
-   /** This function resolves a symbol in a loaded DLL, such as a
-       variable or function name.
-       @param dllHandle Handle of the DLL, as returned by LoadDll().
-       @param name Name of the symbol.
-       @return A pointer to the symbol.
-   */
-   static void * GetSymbol(wxDllType dllHandle, const wxString &name);
- private:
-   /// forbid construction of objects
-   wxDllLoader();
+public:
+    /** This function loads a shared library into memory, with libname
+      being the basename of the library, without the filename
+      extension. No initialisation of the library will be done.
+      @param libname Name of the shared object to load.
+      @param success Must point to a bool variable which will be set to TRUE or FALSE.
+      @return A handle to the loaded DLL. Use success parameter to test if it is valid.
+     */
+    static wxDllType LoadLibrary(const wxString & libname, bool *success = NULL);
+    /** This function unloads the shared library. */
+    static void UnloadLibrary(wxDllType dll);
+    /** This function returns a valid handle for the main program
+      itself. */
+    static wxDllType GetProgramHandle(void);
+    /** This function resolves a symbol in a loaded DLL, such as a
+      variable or function name.
+      @param dllHandle Handle of the DLL, as returned by LoadDll().
+      @param name Name of the symbol.
+      @return A pointer to the symbol.
+     */
+    static void * GetSymbol(wxDllType dllHandle, const wxString &name);
+
+private:
+    /// forbid construction of objects
+    wxDllLoader();
 };
 
 // ----------------------------------------------------------------------------
index b0945819f76b4dd35f9d187b77baebf90ff1cb89..98b983adf0e1587c51277cad63ccba3b1717670c 100644 (file)
@@ -544,7 +544,6 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c
       // Force the layout algorithm since the size changes the layout
       if (control->IsKindOf(CLASSINFO(wxRadioBox)))
       {
-        wxSize sz = control->GetSize();
         control->SetSize(-1, -1, -1, -1, wxSIZE_AUTO_WIDTH|wxSIZE_AUTO_HEIGHT);
       }
 #endif
index 015b00e73249610b483b5482b14dac586d3e0587..3cf541d3c793a56df12d7e4dedfe8e7c133c27bf 100644 (file)
 #include "wx/msw/dib.h"
 #include "wx/image.h"
 
+// missing from mingw32 header
+#ifndef CLR_INVALID
+    #define CLR_INVALID ((COLORREF)-1)
+#endif // no CLR_INVALID
+
 // ----------------------------------------------------------------------------
 // macros
 // ----------------------------------------------------------------------------
index b49d678fb8184e459282e24744d95715916c9828..1fabf5e6df8690aeb30721b063ee5c9c0575acda 100644 (file)
     #include <print.h>
 #endif
 
+// mingw32 defines GDI_ERROR incorrectly
+#ifdef __GNUWIN32__
+    #undef GDI_ERROR
+    #define GDI_ERROR ((int)-1)
+#endif
+
 // ----------------------------------------------------------------------------
 // wxWin macros
 // ----------------------------------------------------------------------------
+
 IMPLEMENT_CLASS(wxPrinterDC, wxDC)
 
 // ============================================================================
index 6968b94312c94ec3bfec819ce36986c22516ce77..73fa7d695520b614f695e93b3cc5db540a706851 100644 (file)
     #include "wx/msw/gnuwin32/extra.h"
 #endif
 
+// some compilers headers don't define this one (mingw32)
+#ifndef DMLERR_NO_ERROR
+    #define DMLERR_NO_ERROR (0)
+
+    // this one is also missing from some mingw32 headers, but there is no way
+    // to test for it (I know of) - the test for DMLERR_NO_ERROR works for me,
+    // but is surely not the right thing to do
+    extern "C"
+    HDDEDATA STDCALL DdeClientTransaction(LPBYTE pData,
+                                          DWORD cbData,
+                                          HCONV hConv,
+                                          HSZ hszItem,
+                                          UINT wFmt,
+                                          UINT wType,
+                                          DWORD dwTimeout,
+                                          LPDWORD pdwResult);
+#endif // no DMLERR_NO_ERROR
+
 // ----------------------------------------------------------------------------
 // macros and constants
 // ----------------------------------------------------------------------------
index 4cd16e46c2ae1ed67645240178ff2408ffd0cfa1..89ff4b11ecf5604da1a62b6aba46a9c6689818ff 100644 (file)
@@ -232,13 +232,16 @@ bool wxImageList::Remove(int index)
 // Remove all images
 bool wxImageList::RemoveAll()
 {
-    bool ok = ImageList_RemoveAll(GetHImageList()) != 0;
-    if ( !ok )
+    // don't use ImageList_RemoveAll() because mingw32 headers don't have it
+    int count = ImageList_GetImageCount(GetHImageList());
+    for ( int i = 0; i < count; i++ )
     {
-        wxLogLastError("ImageList_RemoveAll()");
+        // the image indexes are shifted, so we should always remove the first
+        // one
+        (void)Remove(0);
     }
 
-    return ok;
+    return TRUE;
 }
 
 // Draws the given image on a dc at the specified position.
index 34649103cc5eaf2cffed7d461b0ece5efdc2d536..09a988cd15e8ef598952a6a3610043a9d7ab719d 100644 (file)
@@ -19,6 +19,7 @@
 
 #ifdef __GNUG__
     #pragma implementation "listctrl.h"
+    #pragma implementation "listctrlbase.h"
 #endif
 
 // For compilers that support precompilation, includes "wx.h".
index cbd779d665cd3eb52df51d901d8a237359b2d6c8..5159b21ceb495373605c21cbf28266a85cb1aa82 100644 (file)
@@ -19,6 +19,7 @@
 
 #ifdef __GNUG__
     #pragma implementation "spinbutt.h"
+    #pragma implementation "spinbutbase.h"
 #endif
 
 // For compilers that support precompilation, includes "wx.h".