|
FlowArithmeticCalculator 1.0.0
Flow Arithmetic Calculator
|
Connect ports via dragging interaction DTO. More...
#include <ConnectPortsInteraction.h>
Inheritance diagram for business_logic::input::ConnectPortsInteraction:
Collaboration diagram for business_logic::input::ConnectPortsInteraction:Public Member Functions | |
| bool | isStarted () const |
| Returns whether the interaction has started (i.e., is pending and a dragging line should be rendered) | |
| void | sanitize () |
| Sanitizes the interaction by removing both sides if any of them has become invalid. | |
| void | handleUserInteractedWith (business_logic::elements::blocks::BaseBlock *block, const business_logic::elements::structures::Port *port, business_logic::delegate::IWindowDelegate *windowDelegate, business_logic::delegate::IBlockLifecycleManagerDelegate *blockLifecycleManagerDelegate) |
| const std::optional< business_logic::elements::structures::BlocksConnectionSide > & | getStartSide () const |
| Gets an immutable reference to the start side. | |
| const std::optional< business_logic::elements::structures::BlocksConnectionSide > & | getEndSide () const |
| Gets an immutable reference to the end side. | |
| void | resetInteraction () |
Resets the interaction, setting both sides to std::nullopt | |
Public Member Functions inherited from business_logic::Loggable< ConnectPortsInteraction > | |
| Loggable () | |
Protected Member Functions | |
| bool | isInvalid () |
| Returns whether the interaction is invalid (i.e., one of the sides is no longer valid) | |
Protected Attributes | |
| std::optional< business_logic::elements::structures::BlocksConnectionSide > | startSide |
| the first interaction side | |
| std::optional< business_logic::elements::structures::BlocksConnectionSide > | endSide |
| the second interaction side | |
Protected Attributes inherited from business_logic::Loggable< ConnectPortsInteraction > | |
| std::shared_ptr< spdlog::logger > | logger |
Connect ports via dragging interaction DTO.
Definition at line 19 of file ConnectPortsInteraction.h.
|
inline |
Gets an immutable reference to the end side.
Definition at line 144 of file ConnectPortsInteraction.h.
References endSide.
|
inline |
Gets an immutable reference to the start side.
Definition at line 135 of file ConnectPortsInteraction.h.
References startSide.
Referenced by gui::elements::SkiaBlocksManagerRenderer::maybeRenderDraggedLine().
Here is the caller graph for this function:
|
inline |
Definition at line 39 of file ConnectPortsInteraction.h.
References business_logic::elements::structures::BlocksConnectionSide::block, endSide, business_logic::delegate::IBlockLifecycleManagerDelegate::hasConnectionBetween(), business_logic::elements::structures::Port::INPUT, business_logic::delegate::IBlockLifecycleManagerDelegate::isInputConnected(), isStarted(), business_logic::Loggable< ConnectPortsInteraction >::logger, business_logic::delegate::IBlockLifecycleManagerDelegate::onPortsConnected(), business_logic::elements::structures::Port::OUTPUT, resetInteraction(), business_logic::delegate::IWindowDelegate::showWarning(), and startSide.
Referenced by business_logic::BlocksManager::handleMouseDown().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprotected |
Returns whether the interaction is invalid (i.e., one of the sides is no longer valid)
Definition at line 171 of file ConnectPortsInteraction.h.
References endSide, and startSide.
Referenced by sanitize().
Here is the caller graph for this function:
|
inline |
Returns whether the interaction has started (i.e., is pending and a dragging line should be rendered)
Definition at line 25 of file ConnectPortsInteraction.h.
References startSide.
Referenced by business_logic::BlocksManager::handleEscapeKeyPress(), business_logic::BlocksManager::handleRightClickOnBlock(), handleUserInteractedWith(), and gui::elements::SkiaBlocksManagerRenderer::maybeRenderDraggedLine().
Here is the caller graph for this function:
|
inline |
Resets the interaction, setting both sides to std::nullopt
Definition at line 151 of file ConnectPortsInteraction.h.
References endSide, and startSide.
Referenced by business_logic::BlocksManager::handleEscapeKeyPress(), business_logic::BlocksManager::handleRightClickOnBlock(), handleUserInteractedWith(), and sanitize().
Here is the caller graph for this function:
|
inline |
Sanitizes the interaction by removing both sides if any of them has become invalid.
Definition at line 31 of file ConnectPortsInteraction.h.
References isInvalid(), business_logic::Loggable< ConnectPortsInteraction >::logger, and resetInteraction().
Referenced by gui::elements::SkiaBlocksManagerRenderer::maybeRenderDraggedLine().
Here is the call graph for this function:
Here is the caller graph for this function:
|
protected |
the second interaction side
Definition at line 165 of file ConnectPortsInteraction.h.
Referenced by getEndSide(), handleUserInteractedWith(), isInvalid(), and resetInteraction().
|
protected |
the first interaction side
Definition at line 160 of file ConnectPortsInteraction.h.
Referenced by getStartSide(), handleUserInteractedWith(), isInvalid(), isStarted(), and resetInteraction().