Sowl  1.0
Simple Object Window Library
sowl::WindowWithMessages Class Referenceabstract

A Window with its own window procedure. More...

#include <WindowWithMessages.h>

Inheritance diagram for sowl::WindowWithMessages:
sowl::Window sowl::CustomWindow sowl::DialogWindow sowl::ModalDialogWindow sowl::ModelessDialogWindow

Public Member Functions

virtual LRESULT Process (UINT uMsg, WPARAM wParam, LPARAM lParam) = 0
 
- Public Member Functions inherited from sowl::Window
 Window (HWND hwnd)
 
 Window (const Window &other) = delete
 
 Window (Window &&other) noexcept
 
 ~Window ()
 Call Destroy().
 
void Destroy ()
 Release the encapsulated HWND if it is valid.
 
Window & operator= (const Window &other) = delete
 
Window & operator= (Window &&other) noexcept
 
HWND GetHandle () const
 
HINSTANCE GetProcessHandle () const
 Get the process handle (HINSTANCE) where the encapsulated handle window belongs to. More...
 
HWND GetDialogItem (int id) const
 Encapsulates a call to GetDlgItem. More...
 
bool Show (int nCmdShow) const
 Encapsulates a call to ShowWindow. More...
 
void Enable (bool enable)
 Encapsulates a call to EnableWindow. More...
 
bool IsEnabled ()
 Encapsulates a call to IsWindowEnabled. More...
 
void SetClassCursor (HCURSOR hcursor)
 Encapsulates a call to SetClassLong with index GCL_HCURSOR. More...
 
void SetText (LPCWSTR title)
 Encapsulates a call to SetWindowText. More...
 
bool InvalidateRect (bool erase)
 Encapsulates a call to InvalidateRect with lpRect to NULL. More...
 
bool InvalidateRect (const RECT &rect, bool erase)
 Encapsulates a call to InvalidateRect. More...
 
RECT GetClientRect ()
 Encapsulates a call to GetClientRect. More...
 

Static Public Member Functions

static LRESULT BindAndProcess (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam, UINT bindingMessage, const std::function< WindowWithMessages *(LPARAM)> &extractWindowPointer)
 Handles the binding between a Window-object and a window-handle. More...
 

Additional Inherited Members

- Protected Member Functions inherited from sowl::Window
void SetHandle (HWND handle)
 Set a window-handle to an expected unsetted Window object. If the Window object was already set, an exception is raised. This method is expected to be called inside a window-message-processing function which controls binding between a window-object and a window-handle.
 
void UnsetHandle ()
 Unset the window-handle. This method is expected to be called inside a window-message-processing function which controls binding between a window-object and a window-handle.
 

Detailed Description

A Window with its own window procedure.

Member Function Documentation

LRESULT WindowWithMessages::BindAndProcess ( HWND  hwnd,
UINT  uMsg,
WPARAM  wParam,
LPARAM  lParam,
UINT  bindingMessage,
const std::function< WindowWithMessages *(LPARAM)> &  extractWindowPointer 
)
static

Handles the binding between a Window-object and a window-handle.

Parameters
hwnd
uMsg
wParam
lParam
bindingMessageThe message where binding has to be set. Binding is always unset on WM_NCDESTROY.
extractWindowPointerA function that knows how extract a pointer to a Window-object passed as creation-parameter when the window was created.
Returns


The documentation for this class was generated from the following files: