1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/unix/utilsx11.h
3 // Purpose: Miscellaneous X11 functions
4 // Author: Mattia Barbon, Vaclav Slavik, Vadim Zeitlin
8 // Copyright: (c) wxWidgets team
9 // (c) 2010 Vadim Zeitlin
10 // Licence: wxWindows licence
11 /////////////////////////////////////////////////////////////////////////////
13 #ifndef _WX_UNIX_UTILSX11_H_
14 #define _WX_UNIX_UTILSX11_H_
17 #include "wx/gdicmn.h"
21 // NB: Content of this header is for wxWidgets' private use! It is not
22 // part of public API and may be modified or even disappear in the future!
24 #if defined(__WXMOTIF__) || defined(__WXGTK__) || defined(__WXX11__)
26 #if defined(__WXGTK__)
27 typedef void WXDisplay
;
28 typedef void* WXWindow
;
30 typedef unsigned long WXKeySym
;
32 int wxCharCodeXToWX(WXKeySym keySym
);
33 WXKeySym
wxCharCodeWXToX(int id
);
37 void wxSetIconsX11( WXDisplay
* display
, WXWindow window
,
38 const wxIconBundle
& ib
);
41 enum wxX11FullScreenMethod
43 wxX11_FS_AUTODETECT
= 0,
49 wxX11FullScreenMethod
wxGetFullScreenMethodX11(WXDisplay
* display
,
52 void wxSetFullScreenStateX11(WXDisplay
* display
, WXWindow rootWindow
,
53 WXWindow window
, bool show
, wxRect
*origSize
,
54 wxX11FullScreenMethod method
);
57 // Class wrapping X11 Display: it opens it in ctor and closes it in dtor.
61 wxX11Display() { m_dpy
= XOpenDisplay(NULL
); }
62 ~wxX11Display() { if ( m_dpy
) XCloseDisplay(m_dpy
); }
64 operator Display
*() const { return m_dpy
; }
66 // Using DefaultRootWindow() with an object of wxX11Display class doesn't
67 // compile because it is a macro which tries to cast wxX11Display so
68 // provide a convenient helper.
69 Window
DefaultRoot() const { return DefaultRootWindow(m_dpy
); }
74 wxDECLARE_NO_COPY_CLASS(wxX11Display
);
77 #endif // __WXMOTIF__, __WXGTK__, __WXX11__
79 #endif // _WX_UNIX_UTILSX11_H_