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:
parent
c857185ce0
commit
3c1a88d8b8
@ -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.
|
||||
@ -69,30 +70,31 @@
|
||||
*/
|
||||
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();
|
||||
};
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
@ -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
|
||||
|
@ -46,6 +46,11 @@
|
||||
#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
|
||||
// ----------------------------------------------------------------------------
|
||||
|
@ -47,9 +47,16 @@
|
||||
#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)
|
||||
|
||||
// ============================================================================
|
||||
|
@ -50,6 +50,24 @@
|
||||
#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
|
||||
// ----------------------------------------------------------------------------
|
||||
|
@ -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.
|
||||
|
@ -19,6 +19,7 @@
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma implementation "listctrl.h"
|
||||
#pragma implementation "listctrlbase.h"
|
||||
#endif
|
||||
|
||||
// For compilers that support precompilation, includes "wx.h".
|
||||
|
@ -19,6 +19,7 @@
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma implementation "spinbutt.h"
|
||||
#pragma implementation "spinbutbase.h"
|
||||
#endif
|
||||
|
||||
// For compilers that support precompilation, includes "wx.h".
|
||||
|
Loading…
Reference in New Issue
Block a user