Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
CLogicsConnection Class Reference

#include <CLogicsConnection.hpp>

Inheritance diagram for CLogicsConnection:
[legend]
Collaboration diagram for CLogicsConnection:
[legend]

Public Types

typedef std::pair< AbstractCanvasItem::TId, AbstractCanvasItem::TIdTConnPointsIds
 
typedef std::pair< std::weak_ptr< CLogicsConnectionPoint >, std::weak_ptr< CLogicsConnectionPoint > > TConnPointsRefs
 
enum class  EPartType {
  MainShape , MainText , SubText1 , SubText2 ,
  SubText3
}
 
typedef std::pair< TIndex, EPartTypeTPairIndexPartType
 
typedef std::map< TIndex, EPartTypeTMapIndexPartType
 
typedef std::map< TPairIndexPartType, AbstractCanvasItem::TTupleDrawingModeTMapPartTypeDrawingMode
 
typedef std::map< AbstractCanvasItem::TTupleDrawingMode, TMapPartTypeDrawingModeTMapDrawingModePartsDrawingMode
 
enum class  EMarkMode { None , Selected }
 
enum class  EStandOutMode { Highlighted , Warning , None }
 
typedef uint32_t TId
 
typedef std::pair< double, double > TPosition2d
 
typedef uint32_t TIndex
 
typedef std::tuple< EMarkMode, EStandOutModeTTupleDrawingMode
 

Public Member Functions

 CLogicsConnection ()
 
 CLogicsConnection (AbstractCanvasItem::TId id)
 
 CLogicsConnection (AbstractCanvasItem::TId id, const TConnPointsRefs &connPointsRefs)
 
 ~CLogicsConnection () override=default
 
 CLogicsConnection (const CLogicsConnection &other)=delete
 
 CLogicsConnection (CLogicsConnection &&other)=delete
 
CLogicsConnectionoperator= (const CLogicsConnection &other)=delete
 
CLogicsConnectionoperator= (CLogicsConnection &&other)=delete
 
const TConnPointsIdsconnectionPointsIds () const
 
TConnPointsIdsconnectionPointsIds ()
 
const TConnPointsRefsconnectionPointsRefs () const
 
TConnPointsRefsconnectionPointsRefs ()
 
iv::file::xml::node read (const iv::file::xml::node &node) override
 
iv::file::xml::node save (iv::file::xml::node &node) const override
 
void resetLinkedItems () override
 
void updatePathData ()
 
const std::string & getPathData () const
 
std::vector< std::shared_ptr< AbstractCanvasItem > > getLinkedItems () override
 
virtual std::string maxText () const
 
void updateLinkedItems () override
 
const iv::logic::eLogicsElementTypegetElementType () const
 
const std::string & getElementName () const
 
virtual std::string getMainText () const
 
virtual std::string getDescriptiveText () const
 
virtual std::optional< iv::types::SizegetDefaultSize () const
 
void addListenerClick (std::unique_ptr< IListenerCanvasItemClick > listener)
 
void addListenerMove (std::unique_ptr< IListenerCanvasItemMove > listener)
 
void addListenerEnter (std::unique_ptr< IListenerCanvasItemEnter > listener)
 
void addListenerLeave (std::unique_ptr< IListenerCanvasItemLeave > listener)
 
void runListenersClick (CEventCanvasButton *evtCanvasButton)
 
void runListenersMove (CEventCanvasButton *evtCanvasButton)
 
void runListenersEnter ()
 
void runListenersLeave ()
 
void setCanvasItem (ICanvasItem *canvasItem)
 
void setCurrentMarkMode (EMarkMode markMode)
 
void setCurrentStandoutMode (EStandOutMode standoutMode)
 
void setGlobalPosition2d (const TPosition2d &position2d)
 
void setId (TId id)
 
void setRedrawFlag (bool redraw)
 
ICanvasItemgetCanvasItem ()
 
const ICanvasItemgetCanvasItem () const
 
const AbstractCanvasItem::TTupleDrawingModegetCurrentDrawingMode () const
 
const TPosition2dgetGlobalPosition2d () const
 
TId getId () const
 
bool getRedrawFlag () const
 

Static Public Member Functions

static iv::logic::eLogicsElementType enumLogicsElementType (const std::string &strType)
 
static std::string strLogicsElementType (iv::logic::eLogicsElementType type)
 
static iv::logic::eLogicsElementType readLogicsElementType (const iv::file::xml::node &node)
 

Static Public Attributes

static const TConnPointsIds kInvalidConnPointsIds
 
static const TConnPointsRefs kNullConnPointsRefs = {{}, {}}
 
static constexpr std::string_view kPrvKeySectionLogicsElementData = "LogicsElementData"
 
static const TId kInvalidCanvasItemId = 0
 
static const TId kStartingCanvasItemId = 1
 
static const TPosition2d kZeroPosition = {0., 0.}
 

Private Attributes

TConnPointsIds m_connPointsIds
 
TConnPointsRefs m_connPointsRefs
 
std::string m_pathData
 
iv::logic::eLogicsElementType m_logicsElementType
 
std::string m_name
 
TId m_id
 
TPosition2d m_globalPosition2d
 
TTupleDrawingMode m_currentDrawingMode
 
bool m_redrawFlag
 
ICanvasItemm_canvasItem
 
std::vector< std::unique_ptr< IListenerCanvasItemClick > > m_listenersItemClick
 
std::vector< std::unique_ptr< IListenerCanvasItemMove > > m_listenersItemMove
 
std::vector< std::unique_ptr< IListenerCanvasItemEnter > > m_listenersItemEnter
 
std::vector< std::unique_ptr< IListenerCanvasItemLeave > > m_listenersItemLeave
 

Detailed Description

Class holding two connection points references, which are the base of its existence.

Member Typedef Documentation

◆ TConnPointsIds

◆ TConnPointsRefs

◆ TId

uint32_t AbstractCanvasItem::TId
inherited

◆ TIndex

uint32_t AbstractCanvasItem::TIndex
inherited

◆ TMapDrawingModePartsDrawingMode

◆ TMapIndexPartType

◆ TMapPartTypeDrawingMode

◆ TPairIndexPartType

◆ TPosition2d

std::pair<double, double> AbstractCanvasItem::TPosition2d
inherited

◆ TTupleDrawingMode

Member Enumeration Documentation

◆ EMarkMode

enum class AbstractCanvasItem::EMarkMode
stronginherited

Enumeration defining the different modes to mark a logic element or a part of a logic element.

Enumerator
None 
Selected 

◆ EPartType

enum class AbstractLogicsElement::EPartType
stronginherited

Enumeration defining the types of parts a logic element can be made of.

Enumerator
MainShape 
MainText 
SubText1 
SubText2 
SubText3 

◆ EStandOutMode

enum class AbstractCanvasItem::EStandOutMode
stronginherited

Enumeration defining the different modes to stand out a logic element or a part of a logic element.

Enumerator
Highlighted 
Warning 
None 

Constructor & Destructor Documentation

◆ CLogicsConnection() [1/5]

CLogicsConnection::CLogicsConnection ( )

◆ CLogicsConnection() [2/5]

CLogicsConnection::CLogicsConnection ( AbstractCanvasItem::TId id)
explicit

◆ CLogicsConnection() [3/5]

CLogicsConnection::CLogicsConnection ( AbstractCanvasItem::TId id,
const TConnPointsRefs & connPointsRefs )

◆ ~CLogicsConnection()

CLogicsConnection::~CLogicsConnection ( )
overridedefault

◆ CLogicsConnection() [4/5]

CLogicsConnection::CLogicsConnection ( const CLogicsConnection & other)
delete

◆ CLogicsConnection() [5/5]

CLogicsConnection::CLogicsConnection ( CLogicsConnection && other)
delete

Member Function Documentation

◆ addListenerClick()

void AbstractCanvasItem::addListenerClick ( std::unique_ptr< IListenerCanvasItemClick > listener)
inherited

◆ addListenerEnter()

void AbstractCanvasItem::addListenerEnter ( std::unique_ptr< IListenerCanvasItemEnter > listener)
inherited

◆ addListenerLeave()

void AbstractCanvasItem::addListenerLeave ( std::unique_ptr< IListenerCanvasItemLeave > listener)
inherited

◆ addListenerMove()

void AbstractCanvasItem::addListenerMove ( std::unique_ptr< IListenerCanvasItemMove > listener)
inherited

◆ connectionPointsIds() [1/2]

CLogicsConnection::TConnPointsIds & CLogicsConnection::connectionPointsIds ( )
nodiscard

◆ connectionPointsIds() [2/2]

const CLogicsConnection::TConnPointsIds & CLogicsConnection::connectionPointsIds ( ) const
nodiscard

◆ connectionPointsRefs() [1/2]

CLogicsConnection::TConnPointsRefs & CLogicsConnection::connectionPointsRefs ( )
nodiscard

◆ connectionPointsRefs() [2/2]

const CLogicsConnection::TConnPointsRefs & CLogicsConnection::connectionPointsRefs ( ) const
nodiscard

◆ enumLogicsElementType()

iv::logic::eLogicsElementType AbstractLogicsElement::enumLogicsElementType ( const std::string & strType)
staticinherited

◆ getCanvasItem() [1/2]

ICanvasItem * AbstractCanvasItem::getCanvasItem ( )
inherited

◆ getCanvasItem() [2/2]

const ICanvasItem * AbstractCanvasItem::getCanvasItem ( ) const
nodiscardinherited

◆ getCurrentDrawingMode()

const AbstractCanvasItem::TTupleDrawingMode & AbstractCanvasItem::getCurrentDrawingMode ( ) const
nodiscardinherited

◆ getDefaultSize()

std::optional< iv::types::Size > AbstractLogicsElement::getDefaultSize ( ) const
virtualinherited

◆ getDescriptiveText()

std::string AbstractLogicsElement::getDescriptiveText ( ) const
nodiscardvirtualinherited

◆ getElementName()

const std::string & AbstractLogicsElement::getElementName ( ) const
nodiscardinherited

◆ getElementType()

const iv::logic::eLogicsElementType & AbstractLogicsElement::getElementType ( ) const
nodiscardinherited

◆ getGlobalPosition2d()

const AbstractCanvasItem::TPosition2d & AbstractCanvasItem::getGlobalPosition2d ( ) const
nodiscardinherited

◆ getId()

AbstractCanvasItem::TId AbstractCanvasItem::getId ( ) const
nodiscardinherited

◆ getLinkedItems()

std::vector< std::shared_ptr< AbstractCanvasItem > > AbstractLogicsElement::getLinkedItems ( )
overridevirtualinherited

Implements AbstractCanvasItem.

Reimplemented in CLogicsComponent, and CLogicsConnectionPoint.

◆ getMainText()

std::string AbstractLogicsElement::getMainText ( ) const
nodiscardvirtualinherited

◆ getPathData()

const std::string & CLogicsConnection::getPathData ( ) const
nodiscard

◆ getRedrawFlag()

bool AbstractCanvasItem::getRedrawFlag ( ) const
nodiscardinherited

◆ maxText()

std::string AbstractLogicsElement::maxText ( ) const
nodiscardvirtualinherited

◆ operator=() [1/2]

CLogicsConnection & CLogicsConnection::operator= ( CLogicsConnection && other)
delete

◆ operator=() [2/2]

CLogicsConnection & CLogicsConnection::operator= ( const CLogicsConnection & other)
delete

◆ read()

iv::file::xml::node CLogicsConnection::read ( const iv::file::xml::node & node)
overridevirtual

Reimplemented from AbstractLogicsElement.

◆ readLogicsElementType()

iv::logic::eLogicsElementType AbstractLogicsElement::readLogicsElementType ( const iv::file::xml::node & node)
staticinherited

◆ resetLinkedItems()

void CLogicsConnection::resetLinkedItems ( )
overridevirtual

Reimplemented from AbstractLogicsElement.

◆ runListenersClick()

void AbstractCanvasItem::runListenersClick ( CEventCanvasButton * evtCanvasButton)
inherited

◆ runListenersEnter()

void AbstractCanvasItem::runListenersEnter ( )
inherited

◆ runListenersLeave()

void AbstractCanvasItem::runListenersLeave ( )
inherited

◆ runListenersMove()

void AbstractCanvasItem::runListenersMove ( CEventCanvasButton * evtCanvasButton)
inherited

◆ save()

iv::file::xml::node CLogicsConnection::save ( iv::file::xml::node & node) const
overridevirtual

Reimplemented from AbstractLogicsElement.

◆ setCanvasItem()

void AbstractCanvasItem::setCanvasItem ( ICanvasItem * canvasItem)
inherited

◆ setCurrentMarkMode()

void AbstractCanvasItem::setCurrentMarkMode ( EMarkMode markMode)
inherited

◆ setCurrentStandoutMode()

void AbstractCanvasItem::setCurrentStandoutMode ( EStandOutMode standoutMode)
inherited

◆ setGlobalPosition2d()

void AbstractCanvasItem::setGlobalPosition2d ( const TPosition2d & position2d)
inherited

◆ setId()

void AbstractCanvasItem::setId ( TId id)
inherited

◆ setRedrawFlag()

void AbstractCanvasItem::setRedrawFlag ( bool redraw)
inherited

◆ strLogicsElementType()

std::string AbstractLogicsElement::strLogicsElementType ( iv::logic::eLogicsElementType type)
staticinherited

◆ updateLinkedItems()

void AbstractLogicsElement::updateLinkedItems ( )
overridevirtualinherited

Implements AbstractCanvasItem.

Reimplemented in CLogicsComponent, and CLogicsConnectionPoint.

◆ updatePathData()

void CLogicsConnection::updatePathData ( )

Member Data Documentation

◆ kInvalidCanvasItemId

const TId AbstractCanvasItem::kInvalidCanvasItemId = 0
inlinestaticinherited

◆ kInvalidConnPointsIds

const TConnPointsIds CLogicsConnection::kInvalidConnPointsIds
inlinestatic
Initial value:
static const TId kInvalidCanvasItemId
Definition AbstractCanvasItem.hpp:52

◆ kNullConnPointsRefs

const TConnPointsRefs CLogicsConnection::kNullConnPointsRefs = {{}, {}}
inlinestatic

◆ kPrvKeySectionLogicsElementData

std::string_view AbstractLogicsElement::kPrvKeySectionLogicsElementData = "LogicsElementData"
inlinestaticconstexprinherited

◆ kStartingCanvasItemId

const TId AbstractCanvasItem::kStartingCanvasItemId = 1
inlinestaticinherited

◆ kZeroPosition

const TPosition2d AbstractCanvasItem::kZeroPosition = {0., 0.}
inlinestaticinherited

◆ m_canvasItem

ICanvasItem* AbstractCanvasItem::m_canvasItem
privateinherited

◆ m_connPointsIds

TConnPointsIds CLogicsConnection::m_connPointsIds
private

◆ m_connPointsRefs

TConnPointsRefs CLogicsConnection::m_connPointsRefs
private

◆ m_currentDrawingMode

TTupleDrawingMode AbstractCanvasItem::m_currentDrawingMode
privateinherited

◆ m_globalPosition2d

TPosition2d AbstractCanvasItem::m_globalPosition2d
privateinherited

◆ m_id

TId AbstractCanvasItem::m_id
privateinherited

◆ m_listenersItemClick

std::vector<std::unique_ptr<IListenerCanvasItemClick> > AbstractCanvasItem::m_listenersItemClick
privateinherited

◆ m_listenersItemEnter

std::vector<std::unique_ptr<IListenerCanvasItemEnter> > AbstractCanvasItem::m_listenersItemEnter
privateinherited

◆ m_listenersItemLeave

std::vector<std::unique_ptr<IListenerCanvasItemLeave> > AbstractCanvasItem::m_listenersItemLeave
privateinherited

◆ m_listenersItemMove

std::vector<std::unique_ptr<IListenerCanvasItemMove> > AbstractCanvasItem::m_listenersItemMove
privateinherited

◆ m_logicsElementType

iv::logic::eLogicsElementType AbstractLogicsElement::m_logicsElementType
privateinherited

◆ m_name

std::string AbstractLogicsElement::m_name
privateinherited

◆ m_pathData

std::string CLogicsConnection::m_pathData
private

◆ m_redrawFlag

bool AbstractCanvasItem::m_redrawFlag
privateinherited

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