X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7a5e53abb3f9ea13eba2880972306446e4e21e83..1a18887b88e2ba064154ae5998db7b7533f6bb78:/include/wx/msw/private.h diff --git a/include/wx/msw/private.h b/include/wx/msw/private.h index 02c754a486..cef3f680db 100644 --- a/include/wx/msw/private.h +++ b/include/wx/msw/private.h @@ -138,11 +138,11 @@ WXDLLEXPORT_DATA(extern HFONT) wxSTATUS_LINE_FONT; #define STATIC_FLAGS (SS_LEFT|WS_CHILD|WS_VISIBLE) #define CHECK_CLASS wxT("BUTTON") #define CHECK_FLAGS (BS_AUTOCHECKBOX|WS_TABSTOP|WS_CHILD) -#define CHECK_IS_FAFA FALSE +#define CHECK_IS_FAFA FALSE #define RADIO_CLASS wxT("BUTTON") #define RADIO_FLAGS (BS_AUTORADIOBUTTON|WS_CHILD|WS_VISIBLE) #define RADIO_SIZE 20 -#define RADIO_IS_FAFA FALSE +#define RADIO_IS_FAFA FALSE #define PURE_WINDOWS #define GROUP_CLASS wxT("BUTTON") #define GROUP_FLAGS (BS_GROUPBOX|WS_CHILD|WS_VISIBLE) @@ -348,6 +348,22 @@ private: DECLARE_NO_COPY_CLASS(ScreenHDC) }; +// the same as ScreenHDC but for window DCs +class WindowHDC +{ +public: + WindowHDC(HWND hwnd) { m_hdc = ::GetDC(m_hwnd = hwnd); } + ~WindowHDC() { ::ReleaseDC(m_hwnd, m_hdc); } + + operator HDC() const { return m_hdc; } + +private: + HWND m_hwnd; + HDC m_hdc; + + DECLARE_NO_COPY_CLASS(WindowHDC) +}; + // the same as ScreenHDC but for memory DCs: creates the HDC compatible with // the given one (screen by default) in ctor and destroys it in dtor class MemoryHDC