LARS
LARS (Light Augmented Reality System) is an open-source framework for light-based interaction and real-time tracking in multi-robot experiments. Inspired by ARK, LARS extends the augmented reality paradigm to robotic collectives by projecting dynamic visual cues and environments onto the arena, enabling new experimental possibilities for collective robotics research, education, and outreach. LARS features integrated tracking, light projection, and modular experiment control with a user-friendly Qt GUI.
Loading...
Searching...
No Matches
QCPAbstractLegendItem Class Referenceabstract

The abstract base class for all entries in a QCPLegend. More...

Inheritance diagram for QCPAbstractLegendItem:
QCPLayoutElement QCPLayerable QCPPlottableLegendItem QCPPolarLegendItem

Signals

void selectionChanged (bool selected)
void selectableChanged (bool selectable)
Signals inherited from QCPLayerable
void layerChanged (QCPLayer *newLayer)

Public Member Functions

 QCPAbstractLegendItem (QCPLegend *parent)
QCPLegendparentLegend () const
QFont font () const
QColor textColor () const
QFont selectedFont () const
QColor selectedTextColor () const
bool selectable () const
bool selected () const
void setFont (const QFont &font)
void setTextColor (const QColor &color)
void setSelectedFont (const QFont &font)
void setSelectedTextColor (const QColor &color)
Q_SLOT void setSelectable (bool selectable)
Q_SLOT void setSelected (bool selected)
virtual double selectTest (const QPointF &pos, bool onlySelectable, QVariant *details=nullptr) const Q_DECL_OVERRIDE
Public Member Functions inherited from QCPLayoutElement
 QCPLayoutElement (QCustomPlot *parentPlot=nullptr)
QCPLayoutlayout () const
QRect rect () const
QRect outerRect () const
QMargins margins () const
QMargins minimumMargins () const
QCP::MarginSides autoMargins () const
QSize minimumSize () const
QSize maximumSize () const
SizeConstraintRect sizeConstraintRect () const
QCPMarginGroupmarginGroup (QCP::MarginSide side) const
QHash< QCP::MarginSide, QCPMarginGroup * > marginGroups () const
void setOuterRect (const QRect &rect)
void setMargins (const QMargins &margins)
void setMinimumMargins (const QMargins &margins)
void setAutoMargins (QCP::MarginSides sides)
void setMinimumSize (const QSize &size)
void setMinimumSize (int width, int height)
void setMaximumSize (const QSize &size)
void setMaximumSize (int width, int height)
void setSizeConstraintRect (SizeConstraintRect constraintRect)
void setMarginGroup (QCP::MarginSides sides, QCPMarginGroup *group)
virtual void update (UpdatePhase phase)
virtual QSize minimumOuterSizeHint () const
virtual QSize maximumOuterSizeHint () const
virtual QList< QCPLayoutElement * > elements (bool recursive) const
Public Member Functions inherited from QCPLayerable
 QCPLayerable (QCustomPlot *plot, QString targetLayer=QString(), QCPLayerable *parentLayerable=nullptr)
bool visible () const
QCustomPlotparentPlot () const
QCPLayerableparentLayerable () const
QCPLayerlayer () const
bool antialiased () const
void setVisible (bool on)
Q_SLOT bool setLayer (QCPLayer *layer)
bool setLayer (const QString &layerName)
void setAntialiased (bool enabled)
bool realVisibility () const

Protected Member Functions

virtual QCP::Interaction selectionCategory () const Q_DECL_OVERRIDE
virtual void applyDefaultAntialiasingHint (QCPPainter *painter) const Q_DECL_OVERRIDE
virtual QRect clipRect () const Q_DECL_OVERRIDE
virtual void draw (QCPPainter *painter) Q_DECL_OVERRIDE=0
virtual void selectEvent (QMouseEvent *event, bool additive, const QVariant &details, bool *selectionStateChanged) Q_DECL_OVERRIDE
virtual void deselectEvent (bool *selectionStateChanged) Q_DECL_OVERRIDE
Protected Member Functions inherited from QCPLayoutElement
virtual int calculateAutoMargin (QCP::MarginSide side)
virtual void layoutChanged ()
virtual void parentPlotInitialized (QCustomPlot *parentPlot) Q_DECL_OVERRIDE
Protected Member Functions inherited from QCPLayerable
virtual void mousePressEvent (QMouseEvent *event, const QVariant &details)
virtual void mouseMoveEvent (QMouseEvent *event, const QPointF &startPos)
virtual void mouseReleaseEvent (QMouseEvent *event, const QPointF &startPos)
virtual void mouseDoubleClickEvent (QMouseEvent *event, const QVariant &details)
virtual void wheelEvent (QWheelEvent *event)
void initializeParentPlot (QCustomPlot *parentPlot)
void setParentLayerable (QCPLayerable *parentLayerable)
bool moveToLayer (QCPLayer *layer, bool prepend)
void applyAntialiasingHint (QCPPainter *painter, bool localAntialiased, QCP::AntialiasedElement overrideElement) const

Protected Attributes

QCPLegendmParentLegend
QFont mFont
QColor mTextColor
QFont mSelectedFont
QColor mSelectedTextColor
bool mSelectable
bool mSelected
Protected Attributes inherited from QCPLayoutElement
QCPLayoutmParentLayout
QSize mMinimumSize
QSize mMaximumSize
SizeConstraintRect mSizeConstraintRect
QRect mRect
QRect mOuterRect
QMargins mMargins
QMargins mMinimumMargins
QCP::MarginSides mAutoMargins
QHash< QCP::MarginSide, QCPMarginGroup * > mMarginGroups
Protected Attributes inherited from QCPLayerable
bool mVisible
QCustomPlotmParentPlot
QPointer< QCPLayerablemParentLayerable
QCPLayermLayer
bool mAntialiased

Friends

class QCPLegend

Additional Inherited Members

Public Types inherited from QCPLayoutElement
enum  UpdatePhase { upPreparation , upMargins , upLayout }
enum  SizeConstraintRect { scrInnerRect , scrOuterRect }

Detailed Description

The abstract base class for all entries in a QCPLegend.

It defines a very basic interface for entries in a QCPLegend. For representing plottables in the legend, the subclass QCPPlottableLegendItem is more suitable.

Only derive directly from this class when you need absolute freedom (e.g. a custom legend entry that's not even associated with a plottable).

You must implement the following pure virtual functions:

You inherit the following members you may use:

QCPLegend *mParentLegend A pointer to the parent QCPLegend.
QFont mFont The generic font of the item. You should use this font for all or at least the most prominent text of the item.

Constructor & Destructor Documentation

◆ QCPAbstractLegendItem()

QCPAbstractLegendItem::QCPAbstractLegendItem ( QCPLegend * parent)
explicit

Constructs a QCPAbstractLegendItem and associates it with the QCPLegend parent. This does not cause the item to be added to parent, so QCPLegend::addItem must be called separately.

Member Function Documentation

◆ applyDefaultAntialiasingHint()

void QCPAbstractLegendItem::applyDefaultAntialiasingHint ( QCPPainter * painter) const
protectedvirtual

Reimplemented from QCPLayoutElement.

◆ clipRect()

QRect QCPAbstractLegendItem::clipRect ( ) const
protectedvirtual

Reimplemented from QCPLayerable.

◆ deselectEvent()

void QCPAbstractLegendItem::deselectEvent ( bool * selectionStateChanged)
protectedvirtual

Reimplemented from QCPLayerable.

◆ draw()

virtual void QCPAbstractLegendItem::draw ( QCPPainter * painter)
protectedpure virtual

Reimplemented from QCPLayoutElement.

◆ selectEvent()

void QCPAbstractLegendItem::selectEvent ( QMouseEvent * event,
bool additive,
const QVariant & details,
bool * selectionStateChanged )
protectedvirtual

Reimplemented from QCPLayerable.

◆ selectionCategory()

QCP::Interaction QCPAbstractLegendItem::selectionCategory ( ) const
protectedvirtual

Reimplemented from QCPLayerable.

◆ selectionChanged

void QCPAbstractLegendItem::selectionChanged ( bool selected)
signal

This signal is emitted when the selection state of this legend item has changed, either by user interaction or by a direct call to setSelected.

◆ selectTest()

double QCPAbstractLegendItem::selectTest ( const QPointF & pos,
bool onlySelectable,
QVariant * details = nullptr ) const
virtual

Layout elements are sensitive to events inside their outer rect. If pos is within the outer rect, this method returns a value corresponding to 0.99 times the parent plot's selection tolerance. However, layout elements are not selectable by default. So if onlySelectable is true, -1.0 is returned.

See QCPLayerable::selectTest for a general explanation of this virtual method.

QCPLayoutElement subclasses may reimplement this method to provide more specific selection test behaviour.

Reimplemented from QCPLayoutElement.

◆ setFont()

void QCPAbstractLegendItem::setFont ( const QFont & font)

Sets the default font of this specific legend item to font.

See also
setTextColor, QCPLegend::setFont

◆ setSelectable()

void QCPAbstractLegendItem::setSelectable ( bool selectable)

Sets whether this specific legend item is selectable.

See also
setSelectedParts, QCustomPlot::setInteractions

◆ setSelected()

void QCPAbstractLegendItem::setSelected ( bool selected)

Sets whether this specific legend item is selected.

It is possible to set the selection state of this item by calling this function directly, even if setSelectable is set to false.

See also
setSelectableParts, QCustomPlot::setInteractions

◆ setSelectedFont()

void QCPAbstractLegendItem::setSelectedFont ( const QFont & font)

When this legend item is selected, font is used to draw generic text, instead of the normal font set with setFont.

See also
setFont, QCPLegend::setSelectedFont

◆ setSelectedTextColor()

void QCPAbstractLegendItem::setSelectedTextColor ( const QColor & color)

When this legend item is selected, color is used to draw generic text, instead of the normal color set with setTextColor.

See also
setTextColor, QCPLegend::setSelectedTextColor

◆ setTextColor()

void QCPAbstractLegendItem::setTextColor ( const QColor & color)

Sets the default text color of this specific legend item to color.

See also
setFont, QCPLegend::setTextColor

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