X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/461e93f921df33c09637db5dddcfd07411ff0ded..81051829457fc8fd271d16601d74218f345f9e6b:/include/wx/x11/privx.h diff --git a/include/wx/x11/privx.h b/include/wx/x11/privx.h index 999372519d..3e01dd4fcf 100644 --- a/include/wx/x11/privx.h +++ b/include/wx/x11/privx.h @@ -14,13 +14,22 @@ #include "wx/defs.h" #include "wx/utils.h" +#include "wx/colour.h" + +#if defined( __cplusplus ) && defined( __VMS ) +#pragma message disable nosimpint +#endif #include "X11/Xlib.h" #include "X11/Xatom.h" #include "X11/Xutil.h" +#if defined( __cplusplus ) && defined( __VMS ) +#pragma message enable nosimpint +#endif -class wxMouseEvent; -class wxKeyEvent; -class wxWindow; +class WXDLLIMPEXP_FWD_CORE wxMouseEvent; +class WXDLLIMPEXP_FWD_CORE wxKeyEvent; +class WXDLLIMPEXP_FWD_CORE wxWindow; +class WXDLLIMPEXP_FWD_CORE wxRegion; // ---------------------------------------------------------------------------- // key events related functions @@ -29,11 +38,11 @@ class wxWindow; extern int wxCharCodeXToWX(KeySym keySym); extern KeySym wxCharCodeWXToX(int id); -int wxGetBestMatchingPixel(Display *display, XColor *desiredColor, Colormap cmap); +WXPixel wxGetBestMatchingPixel(Display *display, XColor *desiredColor, Colormap cmap); Pixmap XCreateInsensitivePixmap( Display *display, Pixmap pixmap ); extern XColor g_itemColors[]; -extern int wxComputeColours (Display *display, wxColour * back, wxColour * fore); +extern int wxComputeColours (Display *display, const wxColour * back, const wxColour * fore); // For convenience inline Display* wxGlobalDisplay() { return (Display*) wxGetDisplay(); } @@ -68,6 +77,8 @@ bool wxWindowIsVisible(Window win); #if wxUSE_NANOX #define XEventGetWindow(event) event->general.wid #define XEventGetType(event) event->general.type +#define XConfigureEventGetX(event) ((int) event->update.x) +#define XConfigureEventGetY(event) ((int) event->update.y) #define XConfigureEventGetWidth(event) ((int) event->update.width) #define XConfigureEventGetHeight(event) ((int) event->update.height) #define XExposeEventGetX(event) event->exposure.x @@ -100,6 +111,8 @@ bool wxWindowIsVisible(Window win); #define XEventGetWindow(event) event->xany.window #define XEventGetType(event) event->xany.type +#define XConfigureEventGetX(event) event->xconfigure.x +#define XConfigureEventGetY(event) event->xconfigure.y #define XConfigureEventGetWidth(event) event->xconfigure.width #define XConfigureEventGetHeight(event) event->xconfigure.height #define XExposeEventGetX(event) event->xexpose.x @@ -129,5 +142,37 @@ bool wxWindowIsVisible(Window win); #define XFontStructGetAscent(f) f->ascent #endif -#endif -// _WX_PRIVX_H_ +// ---------------------------------------------------------------------------- +// Misc functions +// ---------------------------------------------------------------------------- + +bool wxDoSetShape( Display* xdisplay, Window xwindow, const wxRegion& region ); + +class WXDLLEXPORT wxXVisualInfo +{ +public: + wxXVisualInfo(); + ~wxXVisualInfo(); + void Init( Display* dpy, XVisualInfo* visualInfo ); + + int m_visualType; // TrueColor, DirectColor etc. + int m_visualDepth; + int m_visualColormapSize; + void *m_visualColormap; + int m_visualScreen; + unsigned long m_visualRedMask; + unsigned long m_visualGreenMask; + unsigned long m_visualBlueMask; + int m_visualRedShift; + int m_visualGreenShift; + int m_visualBlueShift; + int m_visualRedPrec; + int m_visualGreenPrec; + int m_visualBluePrec; + + unsigned char *m_colorCube; +}; + +bool wxFillXVisualInfo( wxXVisualInfo* vi, Display* dpy ); + +#endif // _WX_PRIVX_H_