Polyphase Game Engine
Loading...
Searching...
No Matches
Viewport2D Class Reference

#include <Viewport2d.h>

Public Member Functions

 Viewport2D ()
 
 ~Viewport2D ()
 
void Update (float deltaTime)
 
bool ShouldHandleInput () const
 
bool IsMouseInside () const
 
void HandleInput ()
 
void SetWidgetControlMode (WidgetControlMode newMode)
 
WidgetControlMode GetWidgetControlMode () const
 
Widget * GetWrapperWidget ()
 
Widget * GetHoveredWidget ()
 
void ResetViewport ()
 
float GetZoom () const
 
glm::vec2 GetRootOffset () const
 

Protected Member Functions

void HandleDefaultControls ()
 
void HandleTransformControls ()
 
void HandlePanControls ()
 
glm::vec2 HandleLockedCursor ()
 
void HandleAxisLocking ()
 
void SavePreTransforms ()
 
void RestorePreTransforms ()
 
Widget * FindHoveredWidget (Node *node, uint32_t &maxDepth, int32_t mouseX, int32_t mouseY, uint32_t depth=0)
 

Protected Attributes

float mZoom = 1.0f
 
glm::vec2 mRootOffset = { 0.0f, 0.0f }
 
WidgetControlMode mControlMode = WidgetControlMode::Default
 
WidgetAxisLock mAxisLock = WidgetAxisLock::None
 
SharedPtr< Widget > mWrapperWidget
 
WeakPtr< Widget > mHoveredWidget
 
int32_t mPrevMouseX = 0
 
int32_t mPrevMouseY = 0
 
std::vector< VpWidgetTransform > mSavedTransforms
 
TransformSnapAccum mSnapAccum
 

Constructor & Destructor Documentation

◆ Viewport2D()

Viewport2D::Viewport2D ( )

◆ ~Viewport2D()

Viewport2D::~Viewport2D ( )

Member Function Documentation

◆ FindHoveredWidget()

Widget * Viewport2D::FindHoveredWidget ( Node *  node,
uint32_t &  maxDepth,
int32_t  mouseX,
int32_t  mouseY,
uint32_t  depth = 0 
)
protected

◆ GetHoveredWidget()

Widget * Viewport2D::GetHoveredWidget ( )

◆ GetRootOffset()

glm::vec2 Viewport2D::GetRootOffset ( ) const
inline

◆ GetWidgetControlMode()

WidgetControlMode Viewport2D::GetWidgetControlMode ( ) const
inline

◆ GetWrapperWidget()

Widget * Viewport2D::GetWrapperWidget ( )

◆ GetZoom()

float Viewport2D::GetZoom ( ) const
inline

◆ HandleAxisLocking()

void Viewport2D::HandleAxisLocking ( )
protected

◆ HandleDefaultControls()

void Viewport2D::HandleDefaultControls ( )
protected

◆ HandleInput()

void Viewport2D::HandleInput ( )

◆ HandleLockedCursor()

glm::vec2 Viewport2D::HandleLockedCursor ( )
protected

◆ HandlePanControls()

void Viewport2D::HandlePanControls ( )
protected

◆ HandleTransformControls()

void Viewport2D::HandleTransformControls ( )
protected

◆ IsMouseInside()

bool Viewport2D::IsMouseInside ( ) const

◆ ResetViewport()

void Viewport2D::ResetViewport ( )

◆ RestorePreTransforms()

void Viewport2D::RestorePreTransforms ( )
protected

◆ SavePreTransforms()

void Viewport2D::SavePreTransforms ( )
protected

◆ SetWidgetControlMode()

void Viewport2D::SetWidgetControlMode ( WidgetControlMode  newMode)

◆ ShouldHandleInput()

bool Viewport2D::ShouldHandleInput ( ) const

◆ Update()

void Viewport2D::Update ( float  deltaTime)

Member Data Documentation

◆ mAxisLock

WidgetAxisLock Viewport2D::mAxisLock = WidgetAxisLock::None
protected

◆ mControlMode

WidgetControlMode Viewport2D::mControlMode = WidgetControlMode::Default
protected

◆ mHoveredWidget

WeakPtr<Widget> Viewport2D::mHoveredWidget
protected

◆ mPrevMouseX

int32_t Viewport2D::mPrevMouseX = 0
protected

◆ mPrevMouseY

int32_t Viewport2D::mPrevMouseY = 0
protected

◆ mRootOffset

glm::vec2 Viewport2D::mRootOffset = { 0.0f, 0.0f }
protected

◆ mSavedTransforms

std::vector<VpWidgetTransform> Viewport2D::mSavedTransforms
protected

◆ mSnapAccum

TransformSnapAccum Viewport2D::mSnapAccum
protected

◆ mWrapperWidget

SharedPtr<Widget> Viewport2D::mWrapperWidget
protected

◆ mZoom

float Viewport2D::mZoom = 1.0f
protected

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