Merge branch 'more-qt-win-build-fixes' of https://github.com/catalinr/wxWidgets

Miscellaneous fixes for building wxQt under MSW.

See https://github.com/wxWidgets/wxWidgets/pull/918
This commit is contained in:
Vadim Zeitlin
2018-09-17 23:26:27 +02:00
20 changed files with 221 additions and 267 deletions

View File

@@ -296,7 +296,7 @@ private:
#include "wx/dfb/evtloop.h"
#elif defined(__WXGTK20__)
#include "wx/gtk/evtloop.h"
#elif defined(__WXQT__)
#elif defined(__WXQT__)
#include "wx/qt/evtloop.h"
#else // other platform

View File

@@ -87,6 +87,31 @@ public:
virtual bool WriteToStderr(const wxString& WXUNUSED(text)) { return false; }
};
#elif defined(__WXQT__)
class WXDLLIMPEXP_CORE wxGUIAppTraits : public wxGUIAppTraitsBase
{
public:
virtual wxEventLoopBase *CreateEventLoop();
virtual void *BeforeChildWaitLoop() { return NULL; }
virtual void AfterChildWaitLoop(void*) { }
#if wxUSE_TIMER
virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer);
#endif
#if wxUSE_THREADS
virtual bool DoMessageFromThreadWait() { return true; }
virtual WXDWORD WaitForThread(WXHANDLE hThread, int WXUNUSED(flags))
{ return DoSimpleWaitForThread(hThread); }
#endif // wxUSE_THREADS
virtual wxPortId GetToolkitVersion(int *majVer = NULL,
int *minVer = NULL,
int *microVer = NULL) const;
virtual bool CanUseStderr() { return false; }
virtual bool WriteToStderr(const wxString&) { return false; }
};
#endif
#endif // wxUSE_GUI

View File

@@ -81,7 +81,7 @@
#if defined(__WINDOWS__)
/* Select wxMSW under Windows if no other port is specified. */
# if !defined(__WXMSW__) && !defined(__WXMOTIF__) && !defined(__WXGTK__) && !defined(__WXX11__)
# if !defined(__WXMSW__) && !defined(__WXMOTIF__) && !defined(__WXGTK__) && !defined(__WXX11__) && !defined(__WXQT__)
# define __WXMSW__
# endif
@@ -122,13 +122,13 @@
# endif
#endif
#if defined(__WXGTK__) && defined(__WINDOWS__)
#if (defined(__WXGTK__) || defined(__WXQT__)) && defined(__WINDOWS__)
# ifdef __WXMSW__
# undef __WXMSW__
# endif
#endif /* __WXGTK__ && __WINDOWS__ */
#endif /* (__WXGTK__ || __WXQT__) && __WINDOWS__ */
#ifdef __ANDROID__
# define __WXANDROID__

View File

@@ -10,7 +10,7 @@
class QSystemTrayIcon;
class WXDLLIMPEXP_CORE wxTaskBarIcon : public wxTaskBarIconBase
class WXDLLIMPEXP_ADV wxTaskBarIcon : public wxTaskBarIconBase
{
public:
wxTaskBarIcon(wxTaskBarIconType iconType = wxTBI_DEFAULT_TYPE);

View File

@@ -12,6 +12,10 @@
#include "wx/defs.h"
#if defined(__WXMSW__) && !defined(__WXUNIVERSAL__)
#define wxHAS_SYSTEM_THEMED_CONTROL
#endif
class WXDLLIMPEXP_FWD_CORE wxWindow;
class WXDLLIMPEXP_CORE wxSystemThemedControlBase
@@ -24,7 +28,13 @@ public:
protected:
// This method is virtual and can be overridden, e.g. composite controls do
// it to enable the system theme for all of their parts.
virtual void DoEnableSystemTheme(bool enable, wxWindow* window);
virtual void DoEnableSystemTheme
#ifdef wxHAS_SYSTEM_THEMED_CONTROL
// Only __WXMSW__ has a non-trivial implementation currently.
(bool enable, wxWindow* window);
#else
(bool WXUNUSED(enable), wxWindow* WXUNUSED(window)) { }
#endif // wxHAS_SYSTEM_THEMED_CONTROL
wxDECLARE_NO_COPY_CLASS(wxSystemThemedControlBase);
};
@@ -47,20 +57,4 @@ protected:
wxDECLARE_NO_COPY_TEMPLATE_CLASS(wxSystemThemedControl, C);
};
// Only __WXMSW__ has a non-trivial implementation currently.
#if defined(__WXMSW__) && !defined(__WXUNIVERSAL__)
#define wxHAS_SYSTEM_THEMED_CONTROL
#endif
#ifndef wxHAS_SYSTEM_THEMED_CONTROL
inline void
wxSystemThemedControlBase::DoEnableSystemTheme(bool WXUNUSED(enable),
wxWindow* WXUNUSED(window))
{
// Nothing to do.
}
#endif // !wxHAS_SYSTEM_THEMED_CONTROL
#endif // _WX_SYSTHEMECTRL_H