ImFusion C++ SDK 4.4.0
ImFusion::LinkSelection Class Reference

#include <ImFusion/Base/LinkSelection.h>

Synchronizes the selection of multiple Selectables. More...

Inheritance diagram for ImFusion::LinkSelection:

Detailed Description

Synchronizes the selection of multiple Selectables.

Public Member Functions

 LinkSelection (const std::vector< Data * > &data)
 Create a link containing a list of data.
bool accepts (const Data &data) const override
 Checks whether the given Data instance is supported.
void add (Data &data) override
 Add a Selectable Data to link.
void remove (Data *data) override
 Remove the given Data instance from the link.
std::vector< Data * > data () const override
 Return list of all linked Data instances.
std::string uiTitle () const override
 Return a title of the link type for displaying in the UI.
std::string uiIconPath () const override
 Return a path to an icon representing the link type to display in the UI.
Public Member Functions inherited from ImFusion::SignalReceiver
 SignalReceiver ()=default
 Default constructor.
 SignalReceiver (const SignalReceiver &other)
 Copy constructor, does not copy any existing signal connections from other.
SignalReceiveroperator= (SignalReceiver rhs)
 Assignment operator, disconnects all existing connections, does not copy any existing signal connections from rhs.
virtual ~SignalReceiver ()
 Virtual destructor disconnects from all connected signals.

Additional Inherited Members

Protected Member Functions inherited from ImFusion::SignalReceiver
void disconnectAll ()
 Disconnects all existing connections.

Constructor & Destructor Documentation

◆ LinkSelection()

ImFusion::LinkSelection::LinkSelection ( const std::vector< Data * > & data)
explicit

Create a link containing a list of data.

If any of the data are not Selectable, or have different values returned from Selectable::size(), the link will be empty.

Member Function Documentation

◆ accepts()

bool ImFusion::LinkSelection::accepts ( const Data & data) const
overridevirtual

Checks whether the given Data instance is supported.

Implements ImFusion::DataLink.

◆ add()

void ImFusion::LinkSelection::add ( Data & data)
overridevirtual

Add a Selectable Data to link.

If data is not Selectable, or has a different Selectable::size() to any other data already in the link, this function will do nothing.

Implements ImFusion::DataLink.

◆ remove()

void ImFusion::LinkSelection::remove ( Data * data)
overridevirtual

Remove the given Data instance from the link.

Implements ImFusion::DataLink.

◆ data()

std::vector< Data * > ImFusion::LinkSelection::data ( ) const
overridevirtual

Return list of all linked Data instances.

Implements ImFusion::DataLink.

◆ uiTitle()

std::string ImFusion::LinkSelection::uiTitle ( ) const
overridevirtual

Return a title of the link type for displaying in the UI.

Implements ImFusion::DataLink.

◆ uiIconPath()

std::string ImFusion::LinkSelection::uiIconPath ( ) const
overridevirtual

Return a path to an icon representing the link type to display in the UI.

Implements ImFusion::DataLink.


The documentation for this class was generated from the following file:
  • ImFusion/Base/LinkSelection.h
Search Tab / S to search, Esc to close