Fixing wxMicroWindows compilation

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12745 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2001-11-28 18:22:16 +00:00
parent a6f762a646
commit c67d6888d4
21 changed files with 1261 additions and 21 deletions

View File

@@ -45,7 +45,10 @@ MicroWindows:
wxMicroWindows: wxMicroWindows:
- untar the wxMicroWindows port/download from CVS - Download wxMSW 2.3.3 or greater, or get it from CVS
- Copy include/wx/msw/setup_microwin.h to include/wx/setup.h if
include/wx/setup.h doesn't exist
- change the TOP variable at the top of src/msw/makefile.mic - change the TOP variable at the top of src/msw/makefile.mic
to reflect where MicroWindows is installed to reflect where MicroWindows is installed

View File

@@ -62,7 +62,7 @@ protected:
}; };
#if defined(__WXUNIVERSAL__) #if defined(__WXUNIVERSAL__) && !defined(__WXMICROWIN__)
#include "wx/univ/dialog.h" #include "wx/univ/dialog.h"
#else #else
#if defined(__WXMSW__) #if defined(__WXMSW__)

View File

@@ -203,7 +203,7 @@ protected:
}; };
// include the real class declaration // include the real class declaration
#ifdef __WXUNIVERSAL__ #if defined(__WXUNIVERSAL__) // && !defined(__WXMICROWIN__)
#include "wx/univ/frame.h" #include "wx/univ/frame.h"
#else // !__WXUNIVERSAL__ #else // !__WXUNIVERSAL__
#if defined(__WXMSW__) #if defined(__WXMSW__)

View File

@@ -57,7 +57,7 @@
#define wxLongLong_t __int64 #define wxLongLong_t __int64
#elif defined(SIZEOF_LONG_LONG) && SIZEOF_LONG_LONG >= 8 #elif defined(SIZEOF_LONG_LONG) && SIZEOF_LONG_LONG >= 8
#define wxLongLong_t long long #define wxLongLong_t long long
#elif defined(__MINGW32__) || defined(__CYGWIN__) #elif defined(__MINGW32__) || defined(__CYGWIN__) || defined(__WXMICROWIN__)
#define wxLongLong_t long long #define wxLongLong_t long long
#elif defined(__MWERKS__) #elif defined(__MWERKS__)
#if __option(longlong) #if __option(longlong)

View File

@@ -225,11 +225,14 @@ typedef struct tagMINMAXINFO {
#define VERTSIZE 6 /* Vertical size in millimeters */ #define VERTSIZE 6 /* Vertical size in millimeters */
/* Ternary raster operations */ /* Ternary raster operations */
/* Now defined by MicroWindows */
#if 0
#define DSTINVERT (DWORD)0x00550009 /* dest = (NOT dest) */ #define DSTINVERT (DWORD)0x00550009 /* dest = (NOT dest) */
#define WHITENESS (DWORD)0x00FF0062 /* dest = WHITE */ #define WHITENESS (DWORD)0x00FF0062 /* dest = WHITE */
#define SRCERASE (DWORD)0x00440328 /* dest = source AND (NOT dest ) */ #define SRCERASE (DWORD)0x00440328 /* dest = source AND (NOT dest ) */
#define MERGEPAINT (DWORD)0x00BB0226 /* dest = (NOT source) OR dest */ #define MERGEPAINT (DWORD)0x00BB0226 /* dest = (NOT source) OR dest */
#define SRCPAINT (DWORD)0x00EE0086 /* dest = source OR dest */ #define SRCPAINT (DWORD)0x00EE0086 /* dest = source OR dest */
#define NOTSRCCOPY (DWORD)0x00330008 /* dest = (NOT source) */ #define NOTSRCCOPY (DWORD)0x00330008 /* dest = (NOT source) */
#endif
#endif /* _WX_MICROWIN_H_ */ #endif /* _WX_MICROWIN_H_ */

File diff suppressed because it is too large Load Diff

View File

@@ -3,7 +3,7 @@
# Copyright (c) 2000 Martin Jolicoeur, Greg Haerr # Copyright (c) 2000 Martin Jolicoeur, Greg Haerr
############################################################################## ##############################################################################
TOP=/home/julians/local/microwindows/microwin/src TOP=/home/julians/microwindows/microwindows-0.89pre8/src
CONFIG = $(TOP)/config CONFIG = $(TOP)/config
WXDIR = ../.. WXDIR = ../..
OBJSUFF = o OBJSUFF = o

View File

@@ -69,7 +69,7 @@
#include <process.h> #include <process.h>
#include "wx/os2/private.h" #include "wx/os2/private.h"
#endif #endif
#ifdef __WINDOWS__ #if defined(__WINDOWS__) && !defined(__WXMICROWIN__)
#if !defined( __GNUWIN32__ ) && !defined( __MWERKS__ ) && !defined(__SALFORDC__) #if !defined( __GNUWIN32__ ) && !defined( __MWERKS__ ) && !defined(__SALFORDC__)
#include <direct.h> #include <direct.h>
#include <dos.h> #include <dos.h>
@@ -272,7 +272,7 @@ wxString wxPathList::FindAbsoluteValidPath (const wxString& file)
bool bool
wxFileExists (const wxString& filename) wxFileExists (const wxString& filename)
{ {
#ifdef __WINDOWS__ #if defined(__WINDOWS__) && !defined(__WXMICROWIN__)
// GetFileAttributes can copy with network paths // GetFileAttributes can copy with network paths
DWORD ret = GetFileAttributes(filename); DWORD ret = GetFileAttributes(filename);
DWORD isDir = (ret & FILE_ATTRIBUTE_DIRECTORY); DWORD isDir = (ret & FILE_ATTRIBUTE_DIRECTORY);
@@ -1239,7 +1239,7 @@ bool wxPathExists(const wxChar *pszPathName)
} }
#endif // __WINDOWS__ #endif // __WINDOWS__
#ifdef __WINDOWS__ #if defined(__WINDOWS__) && !defined(__WXMICROWIN__)
// Stat can't cope with network paths // Stat can't cope with network paths
DWORD ret = GetFileAttributes(strPath.c_str()); DWORD ret = GetFileAttributes(strPath.c_str());
DWORD isDir = (ret & FILE_ATTRIBUTE_DIRECTORY); DWORD isDir = (ret & FILE_ATTRIBUTE_DIRECTORY);

View File

@@ -69,7 +69,7 @@
// small helper class which opens and closes the file - we use it just to get // small helper class which opens and closes the file - we use it just to get
// a file handle for the given file name to pass it to some Win32 API function // a file handle for the given file name to pass it to some Win32 API function
#ifdef __WIN32__ #if defined(__WIN32__) && !defined(__WXMICROWIN__)
class wxFileHandle class wxFileHandle
{ {
@@ -121,7 +121,7 @@ private:
// private functions // private functions
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
#ifdef __WIN32__ #if defined(__WIN32__) && !defined(__WXMICROWIN__)
// convert between wxDateTime and FILETIME which is a 64-bit value representing // convert between wxDateTime and FILETIME which is a 64-bit value representing
// the number of 100-nanosecond intervals since January 1, 1601. // the number of 100-nanosecond intervals since January 1, 1601.

View File

@@ -77,6 +77,7 @@ license is as follows:
# include "wx/defs.h" # include "wx/defs.h"
#endif #endif
#if wxUSE_XPM
#include "wx/imagxpm.h" #include "wx/imagxpm.h"
#include "wx/wfstream.h" #include "wx/wfstream.h"
@@ -221,3 +222,4 @@ bool wxXPMHandler::DoCanRead(wxInputStream& stream)
#endif // wxUSE_STREAMS #endif // wxUSE_STREAMS
#endif // wxUSE_XPM

View File

@@ -1240,7 +1240,7 @@ wxString wxLocale::GetSystemEncodingName()
{ {
wxString encname; wxString encname;
#ifdef __WIN32__ #if defined(__WIN32__) && !defined(__WXMICROWIN__)
// FIXME: what is the error return value for GetACP()? // FIXME: what is the error return value for GetACP()?
UINT codepage = ::GetACP(); UINT codepage = ::GetACP();
encname.Printf(_T("windows-%u"), codepage); encname.Printf(_T("windows-%u"), codepage);
@@ -1292,7 +1292,7 @@ wxString wxLocale::GetSystemEncodingName()
/* static */ /* static */
wxFontEncoding wxLocale::GetSystemEncoding() wxFontEncoding wxLocale::GetSystemEncoding()
{ {
#ifdef __WIN32__ #if defined(__WIN32__) && !defined(__WXMICROWIN__)
UINT codepage = ::GetACP(); UINT codepage = ::GetACP();
// wxWindows only knows about CP1250-1257, 932, 936, 949, 950 // wxWindows only knows about CP1250-1257, 932, 936, 949, 950

View File

@@ -90,7 +90,7 @@ typedef struct {
JSAMPLE *sample_range_limit, *srl_orig; JSAMPLE *sample_range_limit, *srl_orig;
} j_decompress; } j_decompress;
#ifdef __WINDOWS__ #if defined(__WINDOWS__) && !defined(__WXMICROWIN__)
#define JMETHOD(type,methodname,arglist) type (__cdecl methodname) arglist #define JMETHOD(type,methodname,arglist) type (__cdecl methodname) arglist
#else #else
#define JMETHOD(type,methodname,arglist) type (methodname) arglist #define JMETHOD(type,methodname,arglist) type (methodname) arglist

View File

@@ -606,6 +606,7 @@ wxWindow* wxFindWindowAtPoint(wxWindow* win, const wxPoint& pt)
// Hack for wxNotebook case: at least in wxGTK, all pages // Hack for wxNotebook case: at least in wxGTK, all pages
// claim to be shown, so we must only deal with the selected one. // claim to be shown, so we must only deal with the selected one.
#if wxUSE_NOTEBOOK
if (win->IsKindOf(CLASSINFO(wxNotebook))) if (win->IsKindOf(CLASSINFO(wxNotebook)))
{ {
wxNotebook* nb = (wxNotebook*) win; wxNotebook* nb = (wxNotebook*) win;
@@ -618,6 +619,8 @@ wxWindow* wxFindWindowAtPoint(wxWindow* win, const wxPoint& pt)
return foundWin; return foundWin;
} }
} }
#endif
/* Doesn't work /* Doesn't work
// Frame case // Frame case
else if (win->IsKindOf(CLASSINFO(wxFrame))) else if (win->IsKindOf(CLASSINFO(wxFrame)))

View File

@@ -35,6 +35,8 @@
#include "wx/textctrl.h" #include "wx/textctrl.h"
#endif //WX_PRECOMP #endif //WX_PRECOMP
#if wxUSE_SPINCTRL
#include "wx/spinbutt.h" #include "wx/spinbutt.h"
#include "wx/spinctrl.h" #include "wx/spinctrl.h"
@@ -348,4 +350,5 @@ void wxSpinCtrl::SetRange(int min, int max)
m_btn->SetRange(min, max); m_btn->SetRange(min, max);
} }
#endif // wxUSE_SPINCTRL
#endif // !wxPort-with-native-spinctrl #endif // !wxPort-with-native-spinctrl

View File

@@ -463,6 +463,7 @@ bool wxApp::UnregisterWindowClasses()
{ {
bool retval = TRUE; bool retval = TRUE;
#ifndef __WXMICROWIN__
// frame window class. // frame window class.
if ( !UnregisterClass(wxFrameClassName, wxhInstance) ) if ( !UnregisterClass(wxFrameClassName, wxhInstance) )
{ {
@@ -541,7 +542,8 @@ bool wxApp::UnregisterWindowClasses()
retval = FALSE; retval = FALSE;
} }
#endif
// __WXMICROWIN__
return retval; return retval;
} }

View File

@@ -49,7 +49,7 @@
#include "wx/msw/private.h" // needs to be before #include <commdlg.h> #include "wx/msw/private.h" // needs to be before #include <commdlg.h>
#if wxUSE_COMMON_DIALOGS #if wxUSE_COMMON_DIALOGS && !defined(__WXMICROWIN__)
#include <commdlg.h> #include <commdlg.h>
#endif #endif

View File

@@ -41,7 +41,7 @@
#include "wx/msw/private.h" #include "wx/msw/private.h"
#include "wx/log.h" #include "wx/log.h"
#if wxUSE_COMMON_DIALOGS #if wxUSE_COMMON_DIALOGS && !defined(__WXMICROWIN__)
#include <commdlg.h> #include <commdlg.h>
#endif #endif

View File

@@ -3,7 +3,8 @@
# Copyright (c) 2000 Martin Jolicoeur, Greg Haerr # Copyright (c) 2000 Martin Jolicoeur, Greg Haerr
############################################################################## ##############################################################################
TOP=/home/julians/local/microwindows/microwin/src TOP=/home/julians/microwindows/microwindows-0.89pre8/src
CONFIG = $(TOP)/config CONFIG = $(TOP)/config
WXDIR = ../.. WXDIR = ../..
OBJSUFF = o OBJSUFF = o
@@ -55,7 +56,6 @@ GENERICOBJS = \
$(GENDIR)/spinctlg.$(OBJSUFF) \ $(GENDIR)/spinctlg.$(OBJSUFF) \
$(GENDIR)/splash.$(OBJSUFF) \ $(GENDIR)/splash.$(OBJSUFF) \
$(GENDIR)/splitter.$(OBJSUFF) \ $(GENDIR)/splitter.$(OBJSUFF) \
$(GENDIR)/statusbr.$(OBJSUFF) \
$(GENDIR)/tabg.$(OBJSUFF) \ $(GENDIR)/tabg.$(OBJSUFF) \
$(GENDIR)/tbarsmpl.$(OBJSUFF) \ $(GENDIR)/tbarsmpl.$(OBJSUFF) \
$(GENDIR)/textdlgg.$(OBJSUFF) \ $(GENDIR)/textdlgg.$(OBJSUFF) \
@@ -68,11 +68,13 @@ GENERICOBJS = \
COMMONOBJS = \ COMMONOBJS = \
$(COMMDIR)/appcmn.$(OBJSUFF) \ $(COMMDIR)/appcmn.$(OBJSUFF) \
$(COMMDIR)/choiccmn.$(OBJSUFF) \ $(COMMDIR)/choiccmn.$(OBJSUFF) \
$(COMMDIR)/clntdata.$(OBJSUFF) \
$(COMMDIR)/clipcmn.$(OBJSUFF) \ $(COMMDIR)/clipcmn.$(OBJSUFF) \
$(COMMDIR)/cmdline.$(OBJSUFF) \ $(COMMDIR)/cmdline.$(OBJSUFF) \
$(COMMDIR)/cmdproc.$(OBJSUFF) \ $(COMMDIR)/cmdproc.$(OBJSUFF) \
$(COMMDIR)/cmndata.$(OBJSUFF) \ $(COMMDIR)/cmndata.$(OBJSUFF) \
$(COMMDIR)/config.$(OBJSUFF) \ $(COMMDIR)/config.$(OBJSUFF) \
$(COMMDIR)/containr.$(OBJSUFF) \
$(COMMDIR)/cshelp.$(OBJSUFF) \ $(COMMDIR)/cshelp.$(OBJSUFF) \
$(COMMDIR)/ctrlcmn.$(OBJSUFF) \ $(COMMDIR)/ctrlcmn.$(OBJSUFF) \
$(COMMDIR)/ctrlsub.$(OBJSUFF) \ $(COMMDIR)/ctrlsub.$(OBJSUFF) \
@@ -138,14 +140,18 @@ COMMONOBJS = \
$(COMMDIR)/radiocmn.$(OBJSUFF) \ $(COMMDIR)/radiocmn.$(OBJSUFF) \
$(COMMDIR)/resource.$(OBJSUFF) \ $(COMMDIR)/resource.$(OBJSUFF) \
$(COMMDIR)/sizer.$(OBJSUFF) \ $(COMMDIR)/sizer.$(OBJSUFF) \
$(COMMDIR)/statbar.$(OBJSUFF) \
$(COMMDIR)/strconv.$(OBJSUFF) \ $(COMMDIR)/strconv.$(OBJSUFF) \
$(COMMDIR)/stream.$(OBJSUFF) \ $(COMMDIR)/stream.$(OBJSUFF) \
$(COMMDIR)/string.$(OBJSUFF) \ $(COMMDIR)/string.$(OBJSUFF) \
$(COMMDIR)/sysopt.$(OBJSUFF) \
$(COMMDIR)/tbarbase.$(OBJSUFF) \ $(COMMDIR)/tbarbase.$(OBJSUFF) \
$(COMMDIR)/textbuf.$(OBJSUFF) \
$(COMMDIR)/textcmn.$(OBJSUFF) \ $(COMMDIR)/textcmn.$(OBJSUFF) \
$(COMMDIR)/textfile.$(OBJSUFF) \ $(COMMDIR)/textfile.$(OBJSUFF) \
$(COMMDIR)/timercmn.$(OBJSUFF) \ $(COMMDIR)/timercmn.$(OBJSUFF) \
$(COMMDIR)/tokenzr.$(OBJSUFF) \ $(COMMDIR)/tokenzr.$(OBJSUFF) \
$(COMMDIR)/toplvcmn.$(OBJSUFF) \
$(COMMDIR)/treebase.$(OBJSUFF) \ $(COMMDIR)/treebase.$(OBJSUFF) \
$(COMMDIR)/txtstrm.$(OBJSUFF) \ $(COMMDIR)/txtstrm.$(OBJSUFF) \
$(COMMDIR)/utilscmn.$(OBJSUFF) \ $(COMMDIR)/utilscmn.$(OBJSUFF) \
@@ -203,7 +209,6 @@ MSWOBJS = \
$(MICROWINDIR)/font.$(OBJSUFF) \ $(MICROWINDIR)/font.$(OBJSUFF) \
$(MICROWINDIR)/fontenum.$(OBJSUFF) \ $(MICROWINDIR)/fontenum.$(OBJSUFF) \
$(MICROWINDIR)/fontutil.$(OBJSUFF) \ $(MICROWINDIR)/fontutil.$(OBJSUFF) \
$(MICROWINDIR)/frame.$(OBJSUFF) \
$(MICROWINDIR)/gdiimage.$(OBJSUFF) \ $(MICROWINDIR)/gdiimage.$(OBJSUFF) \
$(MICROWINDIR)/gdiobj.$(OBJSUFF) \ $(MICROWINDIR)/gdiobj.$(OBJSUFF) \
$(MICROWINDIR)/icon.$(OBJSUFF) \ $(MICROWINDIR)/icon.$(OBJSUFF) \
@@ -211,12 +216,12 @@ MSWOBJS = \
$(MICROWINDIR)/microwin.$(OBJSUFF) \ $(MICROWINDIR)/microwin.$(OBJSUFF) \
$(MICROWINDIR)/palette.$(OBJSUFF) \ $(MICROWINDIR)/palette.$(OBJSUFF) \
$(MICROWINDIR)/pen.$(OBJSUFF) \ $(MICROWINDIR)/pen.$(OBJSUFF) \
$(MICROWINDIR)/regconf.$(OBJSUFF) \
$(MICROWINDIR)/region.$(OBJSUFF) \ $(MICROWINDIR)/region.$(OBJSUFF) \
$(MICROWINDIR)/settings.$(OBJSUFF) \ $(MICROWINDIR)/settings.$(OBJSUFF) \
$(MICROWINDIR)/snglinst.$(OBJSUFF) \ $(MICROWINDIR)/snglinst.$(OBJSUFF) \
$(MICROWINDIR)/thread.$(OBJSUFF) \ $(MICROWINDIR)/thread.$(OBJSUFF) \
$(MICROWINDIR)/timer.$(OBJSUFF) \ $(MICROWINDIR)/timer.$(OBJSUFF) \
$(MICROWINDIR)/toplevel.$(OBJSUFF) \
$(MICROWINDIR)/utils.$(OBJSUFF) \ $(MICROWINDIR)/utils.$(OBJSUFF) \
$(MICROWINDIR)/window.$(OBJSUFF) \ $(MICROWINDIR)/window.$(OBJSUFF) \
$(OLEDIR)/dataobj.$(OBJSUFF) $(OLEDIR)/dataobj.$(OBJSUFF)
@@ -236,6 +241,7 @@ UNIVOBJS = \
$(UNIVDIR)/framuniv.$(OBJSUFF) \ $(UNIVDIR)/framuniv.$(OBJSUFF) \
$(UNIVDIR)/gauge.$(OBJSUFF) \ $(UNIVDIR)/gauge.$(OBJSUFF) \
$(UNIVDIR)/inphand.$(OBJSUFF) \ $(UNIVDIR)/inphand.$(OBJSUFF) \
$(UNIVDIR)/inpcons.$(OBJSUFF) \
$(UNIVDIR)/listbox.$(OBJSUFF) \ $(UNIVDIR)/listbox.$(OBJSUFF) \
$(UNIVDIR)/menu.$(OBJSUFF) \ $(UNIVDIR)/menu.$(OBJSUFF) \
$(UNIVDIR)/notebook.$(OBJSUFF) \ $(UNIVDIR)/notebook.$(OBJSUFF) \
@@ -251,8 +257,10 @@ UNIVOBJS = \
$(UNIVDIR)/statbox.$(OBJSUFF) \ $(UNIVDIR)/statbox.$(OBJSUFF) \
$(UNIVDIR)/statline.$(OBJSUFF) \ $(UNIVDIR)/statline.$(OBJSUFF) \
$(UNIVDIR)/stattext.$(OBJSUFF) \ $(UNIVDIR)/stattext.$(OBJSUFF) \
$(UNIVDIR)/statusbr.$(OBJSUFF) \
$(UNIVDIR)/textctrl.$(OBJSUFF) \ $(UNIVDIR)/textctrl.$(OBJSUFF) \
$(UNIVDIR)/theme.$(OBJSUFF) \ $(UNIVDIR)/theme.$(OBJSUFF) \
$(UNIVDIR)/topluniv.$(OBJSUFF) \
$(UNIVDIR)/winuniv.$(OBJSUFF) \ $(UNIVDIR)/winuniv.$(OBJSUFF) \
$(UNIVDIR)/themes/gtk.$(OBJSUFF) \ $(UNIVDIR)/themes/gtk.$(OBJSUFF) \
$(UNIVDIR)/themes/win32.$(OBJSUFF) $(UNIVDIR)/themes/win32.$(OBJSUFF)

View File

@@ -105,6 +105,10 @@ wxRegion::wxRegion(const wxRect& rect)
wxRegion::wxRegion(size_t n, const wxPoint *points, int fillStyle) wxRegion::wxRegion(size_t n, const wxPoint *points, int fillStyle)
{ {
#ifdef __WXMICROWIN__
m_refData = NULL;
M_REGION = NULL;
#else
m_refData = new wxRegionRefData; m_refData = new wxRegionRefData;
M_REGION = ::CreatePolygonRgn M_REGION = ::CreatePolygonRgn
( (
@@ -112,6 +116,7 @@ wxRegion::wxRegion(size_t n, const wxPoint *points, int fillStyle)
n, n,
fillStyle == wxODDEVEN_RULE ? ALTERNATE : WINDING fillStyle == wxODDEVEN_RULE ? ALTERNATE : WINDING
); );
#endif
} }
/* /*

View File

@@ -45,7 +45,7 @@
#ifdef __WXMICROWIN__ #ifdef __WXMICROWIN__
static inline bool IsIconic(HWND WXUNUSED(hwnd)) { return FALSE; } // static inline bool IsIconic(HWND WXUNUSED(hwnd)) { return FALSE; }
static inline bool IsZoomed(HWND WXUNUSED(hwnd)) { return FALSE; } static inline bool IsZoomed(HWND WXUNUSED(hwnd)) { return FALSE; }
#endif // __WXMICROWIN__ #endif // __WXMICROWIN__

View File

@@ -1233,7 +1233,9 @@ void wxWindowMSW::Clear()
static inline void SendSetRedraw(HWND hwnd, bool on) static inline void SendSetRedraw(HWND hwnd, bool on)
{ {
#ifndef __WXMICROWIN__
::SendMessage(hwnd, WM_SETREDRAW, (WPARAM)on, 0); ::SendMessage(hwnd, WM_SETREDRAW, (WPARAM)on, 0);
#endif
} }
void wxWindowMSW::Freeze() void wxWindowMSW::Freeze()
@@ -4288,11 +4290,13 @@ extern wxWindow *wxGetWindowFromHWND(WXHWND hWnd)
// FIXME: this is clearly not the best way to do it but I think we'll // FIXME: this is clearly not the best way to do it but I think we'll
// need to change HWND <-> wxWindow code more heavily than I can // need to change HWND <-> wxWindow code more heavily than I can
// do it now to fix it // do it now to fix it
#ifndef __WXMICROWIN__
if ( ::GetWindow(hwnd, GW_OWNER) ) if ( ::GetWindow(hwnd, GW_OWNER) )
{ {
// it's a dialog box, don't go upwards // it's a dialog box, don't go upwards
break; break;
} }
#endif
hwnd = ::GetParent(hwnd); hwnd = ::GetParent(hwnd);
win = wxFindWinFromHandle((WXHWND)hwnd); win = wxFindWinFromHandle((WXHWND)hwnd);