MAGE  v0.171.0
Matthias Advanced Game Engine
mage::WindowMessageHandler Class Referenceabstract

#include <window.hpp>

Inheritance diagram for mage::WindowMessageHandler:
mage::EngineMessageHandler

Public Member Functions

 WindowMessageHandler () noexcept
 
 WindowMessageHandler (const WindowMessageHandler &handler) noexcept
 
 WindowMessageHandler (WindowMessageHandler &&handler) noexcept
 
virtual ~WindowMessageHandler ()
 
WindowMessageHandleroperator= (const WindowMessageHandler &handler) noexcept
 
WindowMessageHandleroperator= (WindowMessageHandler &&handler) noexcept
 
virtual const std::optional< LRESULT > HandleWindowMessage ([[maybe_unused]] NotNull< HWND > window, UINT message, [[maybe_unused]] WPARAM wParam, [[maybe_unused]] LPARAM lParam)=0
 

Detailed Description

A class of window message handlers.

Constructor & Destructor Documentation

◆ WindowMessageHandler() [1/3]

mage::WindowMessageHandler::WindowMessageHandler ( )
defaultnoexcept

Constructs a window message handler.

◆ WindowMessageHandler() [2/3]

mage::WindowMessageHandler::WindowMessageHandler ( const WindowMessageHandler handler)
defaultnoexcept

Constructs a window message handler from the given window message handler.

Parameters
[in]handlerA reference to the window message handler to copy.

◆ WindowMessageHandler() [3/3]

mage::WindowMessageHandler::WindowMessageHandler ( WindowMessageHandler &&  handler)
defaultnoexcept

Constructs a window message handler by moving the given window message handler.

Parameters
[in]handlerA reference to the window message handler to move.

◆ ~WindowMessageHandler()

mage::WindowMessageHandler::~WindowMessageHandler ( )
virtualdefault

Destructs this window message handler.

Member Function Documentation

◆ HandleWindowMessage()

virtual const std::optional< LRESULT > mage::WindowMessageHandler::HandleWindowMessage ( [[maybe_unused] ] NotNull< HWND >  window,
UINT  message,
[[maybe_unused] ] WPARAM  wParam,
[[maybe_unused] ] LPARAM  lParam 
)
pure virtual

Handles the given message sent to a window.

Parameters
[in]windowA handle to the window.
[in]messageThe message.
[in]wParamAdditional message information. The contents of this parameter depend on the value of msg.
[in]lParamAdditional message information. The contents of this parameter depend on the value of msg.
Returns
The result of the message processing, if the given message is handled by this window message handler.

Implemented in mage::EngineMessageHandler.

◆ operator=() [1/2]

WindowMessageHandler & mage::WindowMessageHandler::operator= ( const WindowMessageHandler handler)
defaultnoexcept

Copies the given window message handler to this window message handler.

Parameters
[in]handlerA reference to the window message handler to copy.
Returns
A reference to the copy of the given window message handler (i.e. this window message handler).

◆ operator=() [2/2]

WindowMessageHandler & mage::WindowMessageHandler::operator= ( WindowMessageHandler &&  handler)
defaultnoexcept

Moves the given window message handler to this window message handler.

Parameters
[in]handlerA reference to the window message handler to move.
Returns
A reference to the moved window message handler (i.e. this window message handler).