| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 | 
							- ///////////////////////////////////////////////////////////////////////////////
 
- // Name:        wx/msw/custombgwin.h
 
- // Purpose:     wxMSW implementation of wxCustomBackgroundWindow
 
- // Author:      Vadim Zeitlin
 
- // Created:     2011-10-10
 
- // Copyright:   (c) 2011 Vadim Zeitlin <vadim@wxwidgets.org>
 
- // Licence:     wxWindows licence
 
- ///////////////////////////////////////////////////////////////////////////////
 
- #ifndef _WX_MSW_CUSTOMBGWIN_H_
 
- #define _WX_MSW_CUSTOMBGWIN_H_
 
- #include "wx/bitmap.h"
 
- #include "wx/brush.h"
 
- // ----------------------------------------------------------------------------
 
- // wxCustomBackgroundWindow
 
- // ----------------------------------------------------------------------------
 
- template <class W>
 
- class wxCustomBackgroundWindow : public W,
 
-                                  public wxCustomBackgroundWindowBase
 
- {
 
- public:
 
-     typedef W BaseWindowClass;
 
-     wxCustomBackgroundWindow() { m_backgroundBrush = NULL; }
 
-     virtual ~wxCustomBackgroundWindow() { delete m_backgroundBrush; }
 
- protected:
 
-     virtual void DoSetBackgroundBitmap(const wxBitmap& bmp)
 
-     {
 
-         delete m_backgroundBrush;
 
-         m_backgroundBrush = bmp.IsOk() ? new wxBrush(bmp) : NULL;
 
-         // Our transparent children should use our background if we have it,
 
-         // otherwise try to restore m_inheritBgCol to some reasonable value: true
 
-         // if we also have non-default background colour or false otherwise.
 
-         BaseWindowClass::m_inheritBgCol = bmp.IsOk()
 
-                                             || BaseWindowClass::UseBgCol();
 
-     }
 
-     virtual WXHBRUSH MSWGetCustomBgBrush()
 
-     {
 
-         if ( m_backgroundBrush )
 
-             return (WXHBRUSH)m_backgroundBrush->GetResourceHandle();
 
-         return BaseWindowClass::MSWGetCustomBgBrush();
 
-     }
 
-     wxBrush *m_backgroundBrush;
 
-     wxDECLARE_NO_COPY_TEMPLATE_CLASS(wxCustomBackgroundWindow, W);
 
- };
 
- #endif // _WX_MSW_CUSTOMBGWIN_H_
 
 
  |