virtual void MSWDestroyWindow();
+ // Functions dealing with painting the window background. The derived
+ // classes should normally only need to reimplement MSWGetBgBrush() if they
+ // need to use a non-solid brush for erasing their background. This
+ // function is called by MSWGetBgBrushForChild() which only exists for the
+ // weird wxToolBar case and MSWGetBgBrushForChild() itself is used by
+ // MSWGetBgBrush() to actually find the right brush to use.
+
+ // The brush returned from here must remain valid at least until the next
+ // event loop iteration. Returning 0, as is done by default, indicates
+ // there is no custom background brush.
+ virtual WXHBRUSH MSWGetCustomBgBrush() { return 0; }
+
// this function should return the brush to paint the children controls
// background or 0 if this window doesn't impose any particular background
// on its children
WXWPARAM wParam,
WXLPARAM lParam = 0) const;
+ // Another helper for creating wxKeyEvent for wxEVT_CHAR and related types.
+ //
+ // The wParam and lParam here must come from WM_CHAR event parameters, i.e.
+ // wParam must be a character and not a virtual code.
+ wxKeyEvent CreateCharEvent(wxEventType evType,
+ WXWPARAM wParam,
+ WXLPARAM lParam) const;
+
// default OnEraseBackground() implementation, return true if we did erase
// the background, false otherwise (i.e. the system should erase it)
DECLARE_EVENT_TABLE()
};
-// ----------------------------------------------------------------------------
-// inline functions
-// ----------------------------------------------------------------------------
-
-// ---------------------------------------------------------------------------
-// global functions
-// ---------------------------------------------------------------------------
-
-// key codes translation between wx and MSW
-
-// Translate MSW virtual key code to wx key code. lParam is used to distinguish
-// between numpad and extended version of the keys, extended is assumed by
-// default if lParam == 0.
-WXDLLIMPEXP_CORE int wxCharCodeMSWToWX(WXWORD vk, WXLPARAM lParam = 0);
-
-// Translate wxKeyCode enum element (passed as int for compatibility reasons)
-// to MSW virtual key code. isExtended is set to true if the key corresponds to
-// a non-numpad version of a key that exists both on numpad and outside it.
-WXDLLIMPEXP_CORE WXWORD wxCharCodeWXToMSW(int id, bool *isExtended = NULL);
-
// window creation helper class: before creating a new HWND, instantiate an
// object of this class on stack - this allows to process the messages sent to
// the window even before CreateWindow() returns