several mingw32 compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@5642 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -40,7 +40,7 @@
|
|||||||
# include <dl.h>
|
# include <dl.h>
|
||||||
typedef shl_t wxDllType;
|
typedef shl_t wxDllType;
|
||||||
#elif defined(__WINDOWS__)
|
#elif defined(__WINDOWS__)
|
||||||
//# include <windows.h>
|
# include <windows.h> // needed to get HMODULE
|
||||||
typedef HMODULE wxDllType;
|
typedef HMODULE wxDllType;
|
||||||
#elif defined(__OS2__)
|
#elif defined(__OS2__)
|
||||||
# define INCL_DOS
|
# define INCL_DOS
|
||||||
@@ -61,6 +61,7 @@
|
|||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// wxDllLoader
|
// wxDllLoader
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
/** wxDllLoader is a class providing an interface similar to unix's
|
/** wxDllLoader is a class providing an interface similar to unix's
|
||||||
dlopen(). It is used by the wxLibrary framework and manages the
|
dlopen(). It is used by the wxLibrary framework and manages the
|
||||||
actual loading of DLLs and the resolving of symbols in them.
|
actual loading of DLLs and the resolving of symbols in them.
|
||||||
@@ -69,30 +70,31 @@
|
|||||||
*/
|
*/
|
||||||
class wxDllLoader
|
class wxDllLoader
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
/** This function loads a shared library into memory, with libname
|
/** This function loads a shared library into memory, with libname
|
||||||
being the basename of the library, without the filename
|
being the basename of the library, without the filename
|
||||||
extension. No initialisation of the library will be done.
|
extension. No initialisation of the library will be done.
|
||||||
@param libname Name of the shared object to load.
|
@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.
|
@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.
|
@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);
|
static wxDllType LoadLibrary(const wxString & libname, bool *success = NULL);
|
||||||
/** This function unloads the shared library. */
|
/** This function unloads the shared library. */
|
||||||
static void UnloadLibrary(wxDllType dll);
|
static void UnloadLibrary(wxDllType dll);
|
||||||
/** This function returns a valid handle for the main program
|
/** This function returns a valid handle for the main program
|
||||||
itself. */
|
itself. */
|
||||||
static wxDllType GetProgramHandle(void);
|
static wxDllType GetProgramHandle(void);
|
||||||
/** This function resolves a symbol in a loaded DLL, such as a
|
/** This function resolves a symbol in a loaded DLL, such as a
|
||||||
variable or function name.
|
variable or function name.
|
||||||
@param dllHandle Handle of the DLL, as returned by LoadDll().
|
@param dllHandle Handle of the DLL, as returned by LoadDll().
|
||||||
@param name Name of the symbol.
|
@param name Name of the symbol.
|
||||||
@return A pointer to the symbol.
|
@return A pointer to the symbol.
|
||||||
*/
|
*/
|
||||||
static void * GetSymbol(wxDllType dllHandle, const wxString &name);
|
static void * GetSymbol(wxDllType dllHandle, const wxString &name);
|
||||||
private:
|
|
||||||
/// forbid construction of objects
|
private:
|
||||||
wxDllLoader();
|
/// forbid construction of objects
|
||||||
|
wxDllLoader();
|
||||||
};
|
};
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -544,7 +544,6 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c
|
|||||||
// Force the layout algorithm since the size changes the layout
|
// Force the layout algorithm since the size changes the layout
|
||||||
if (control->IsKindOf(CLASSINFO(wxRadioBox)))
|
if (control->IsKindOf(CLASSINFO(wxRadioBox)))
|
||||||
{
|
{
|
||||||
wxSize sz = control->GetSize();
|
|
||||||
control->SetSize(-1, -1, -1, -1, wxSIZE_AUTO_WIDTH|wxSIZE_AUTO_HEIGHT);
|
control->SetSize(-1, -1, -1, -1, wxSIZE_AUTO_WIDTH|wxSIZE_AUTO_HEIGHT);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@@ -46,6 +46,11 @@
|
|||||||
#include "wx/msw/dib.h"
|
#include "wx/msw/dib.h"
|
||||||
#include "wx/image.h"
|
#include "wx/image.h"
|
||||||
|
|
||||||
|
// missing from mingw32 header
|
||||||
|
#ifndef CLR_INVALID
|
||||||
|
#define CLR_INVALID ((COLORREF)-1)
|
||||||
|
#endif // no CLR_INVALID
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// macros
|
// macros
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -47,9 +47,16 @@
|
|||||||
#include <print.h>
|
#include <print.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// mingw32 defines GDI_ERROR incorrectly
|
||||||
|
#ifdef __GNUWIN32__
|
||||||
|
#undef GDI_ERROR
|
||||||
|
#define GDI_ERROR ((int)-1)
|
||||||
|
#endif
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// wxWin macros
|
// wxWin macros
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
IMPLEMENT_CLASS(wxPrinterDC, wxDC)
|
IMPLEMENT_CLASS(wxPrinterDC, wxDC)
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
@@ -50,6 +50,24 @@
|
|||||||
#include "wx/msw/gnuwin32/extra.h"
|
#include "wx/msw/gnuwin32/extra.h"
|
||||||
#endif
|
#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
|
// macros and constants
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -232,13 +232,16 @@ bool wxImageList::Remove(int index)
|
|||||||
// Remove all images
|
// Remove all images
|
||||||
bool wxImageList::RemoveAll()
|
bool wxImageList::RemoveAll()
|
||||||
{
|
{
|
||||||
bool ok = ImageList_RemoveAll(GetHImageList()) != 0;
|
// don't use ImageList_RemoveAll() because mingw32 headers don't have it
|
||||||
if ( !ok )
|
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.
|
// Draws the given image on a dc at the specified position.
|
||||||
|
@@ -19,6 +19,7 @@
|
|||||||
|
|
||||||
#ifdef __GNUG__
|
#ifdef __GNUG__
|
||||||
#pragma implementation "listctrl.h"
|
#pragma implementation "listctrl.h"
|
||||||
|
#pragma implementation "listctrlbase.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// For compilers that support precompilation, includes "wx.h".
|
// For compilers that support precompilation, includes "wx.h".
|
||||||
|
@@ -19,6 +19,7 @@
|
|||||||
|
|
||||||
#ifdef __GNUG__
|
#ifdef __GNUG__
|
||||||
#pragma implementation "spinbutt.h"
|
#pragma implementation "spinbutt.h"
|
||||||
|
#pragma implementation "spinbutbase.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// For compilers that support precompilation, includes "wx.h".
|
// For compilers that support precompilation, includes "wx.h".
|
||||||
|
Reference in New Issue
Block a user