X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/676c8c1d39a6b598fe32443c3517a66464ff8c5a..0534259ab803b0edd8692e966947b202cd9e10c0:/src/unix/displayx11.cpp diff --git a/src/unix/displayx11.cpp b/src/unix/displayx11.cpp index edfd86baca..db0f37b899 100644 --- a/src/unix/displayx11.cpp +++ b/src/unix/displayx11.cpp @@ -71,7 +71,7 @@ public: operator const XineramaScreenInfo *() const { return m_screens; } - unsigned GetCount() const { return wx_static_cast(unsigned, m_num); } + unsigned GetCount() const { return static_cast(m_num); } private: XineramaScreenInfo *m_screens; @@ -110,7 +110,7 @@ private: wxRect m_rect; int m_depth; - DECLARE_NO_COPY_CLASS(wxDisplayImplX11) + wxDECLARE_NO_COPY_CLASS(wxDisplayImplX11); }; class wxDisplayFactoryX11 : public wxDisplayFactory @@ -123,7 +123,7 @@ public: virtual int GetFromPoint(const wxPoint& pt); protected: - DECLARE_NO_COPY_CLASS(wxDisplayFactoryX11) + wxDECLARE_NO_COPY_CLASS(wxDisplayFactoryX11); }; // ============================================================================ @@ -252,9 +252,9 @@ bool wxDisplayImplX11::ChangeMode(const wxVideoMode& mode) for (int i = 0; i < nNumModes; ++i) { if (!bRet && - ppXModes[i]->hdisplay == mode.w && - ppXModes[i]->vdisplay == mode.h && - wxCRR((*ppXModes[i])) == mode.refresh) + ppXModes[i]->hdisplay == mode.GetWidth() && + ppXModes[i]->vdisplay == mode.GetHeight() && + wxCRR((*ppXModes[i])) == mode.GetRefresh()) { //switch! bRet = XF86VidModeSwitchToMode((Display*)wxGetDisplay(), DefaultScreen((Display*)wxGetDisplay()), @@ -326,6 +326,26 @@ bool wxDisplayImplX11::ChangeMode(const wxVideoMode& WXUNUSED(mode)) #include "wx/utils.h" +#if wxUSE_LIBHILDON || wxUSE_LIBHILDON2 + +void wxClientDisplayRect(int *x, int *y, int *width, int *height) +{ + // TODO: don't hardcode display size + if ( x ) + *x = 0; + if ( y ) + *y = 0; + if ( width ) + *width = 672; + if ( height ) + *height = 396; +} + +#else // !wxUSE_LIBHILDON || !wxUSE_LIBHILDON2 + +#include "wx/log.h" + +#include #include // TODO: make this a full-fledged class and move to a public header @@ -338,7 +358,7 @@ public: private: void *m_ptr; - DECLARE_NO_COPY_CLASS(wxX11Ptr) + wxDECLARE_NO_COPY_CLASS(wxX11Ptr); }; // NB: this function is implemented using X11 and not GDK calls as it's shared @@ -346,7 +366,7 @@ private: void wxClientDisplayRect(int *x, int *y, int *width, int *height) { Display * const dpy = wxGetX11Display(); - wxCHECK_RET( dpy, _T("can't be called before initializing the GUI") ); + wxCHECK_RET( dpy, wxT("can't be called before initializing the GUI") ); const Atom atomWorkArea = XInternAtom(dpy, "_NET_WORKAREA", True); if ( atomWorkArea ) @@ -375,11 +395,14 @@ void wxClientDisplayRect(int *x, int *y, int *width, int *height) { wxX11Ptr x11ptr(workareas); // ensure it will be freed + // check that we retrieved the property of the expected type and + // that we did get back 4 longs (32 is the format for long), as + // requested if ( actualType != XA_CARDINAL || - format != 32 || // FIXME: what is this 32? + format != 32 || numItems != 4 ) { - wxLogDebug(_T("XGetWindowProperty(\"_NET_WORKAREA\") failed")); + wxLogDebug(wxT("XGetWindowProperty(\"_NET_WORKAREA\") failed")); return; } @@ -405,3 +428,4 @@ void wxClientDisplayRect(int *x, int *y, int *width, int *height) wxDisplaySize(width, height); } +#endif // wxUSE_LIBHILDON/!wxUSE_LIBHILDON