iCub-main
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
QCPPlottableLegendItem Class Reference

A legend item representing a plottable with an icon and the plottable name. More...

#include <qcustomplot.h>

+ Inheritance diagram for QCPPlottableLegendItem:

Public Member Functions

 QCPPlottableLegendItem (QCPLegend *parent, QCPAbstractPlottable *plottable)
 Creates a new legend item associated with plottable. More...
 
QCPAbstractPlottableplottable ()
 
- Public Member Functions inherited from QCPAbstractLegendItem
 QCPAbstractLegendItem (QCPLegend *parent)
 Constructs a QCPAbstractLegendItem and associates it with the QCPLegend parent. More...
 
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)
 Sets the default font of this specific legend item to font. More...
 
void setTextColor (const QColor &color)
 Sets the default text color of this specific legend item to color. More...
 
void 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. More...
 
void 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. More...
 
Q_SLOT void setSelectable (bool selectable)
 Sets whether this specific legend item is selectable. More...
 
Q_SLOT void setSelected (bool selected)
 Sets whether this specific legend item is selected. More...
 
virtual double selectTest (const QPointF &pos, bool onlySelectable, QVariant *details=0) const
 Layout elements are sensitive to events inside their outer rect. More...
 
- Public Member Functions inherited from QCPLayoutElement
 QCPLayoutElement (QCustomPlot *parentPlot=0)
 Creates an instance of QCPLayoutElement and sets default values. More...
 
virtual ~QCPLayoutElement ()
 
QCPLayoutlayout () const
 Returns the parent layout of this layout element. More...
 
QRect rect () const
 Returns the inner rect of this layout element. More...
 
QRect outerRect () const
 
QMargins margins () const
 
QMargins minimumMargins () const
 
QCP::MarginSides autoMargins () const
 
QSize minimumSize () const
 
QSize maximumSize () const
 
QCPMarginGroupmarginGroup (QCP::MarginSide side) const
 
QHash< QCP::MarginSide, QCPMarginGroup * > marginGroups () const
 
void setOuterRect (const QRect &rect)
 Sets the outer rect of this layout element. More...
 
void setMargins (const QMargins &margins)
 Sets the margins of this layout element. More...
 
void setMinimumMargins (const QMargins &margins)
 If setAutoMargins is enabled on some or all margins, this function is used to provide minimum values for those margins. More...
 
void setAutoMargins (QCP::MarginSides sides)
 Sets on which sides the margin shall be calculated automatically. More...
 
void setMinimumSize (const QSize &size)
 Sets the minimum size for the inner rect of this layout element. More...
 
void setMinimumSize (int width, int height)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Sets the minimum size for the inner rect of this layout element. More...
 
void setMaximumSize (const QSize &size)
 Sets the maximum size for the inner rect of this layout element. More...
 
void setMaximumSize (int width, int height)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Sets the maximum size for the inner rect of this layout element. More...
 
void setMarginGroup (QCP::MarginSides sides, QCPMarginGroup *group)
 Sets the margin group of the specified margin sides. More...
 
virtual void update (UpdatePhase phase)
 Updates the layout element and sub-elements. More...
 
virtual QSize maximumSizeHint () const
 Returns the maximum size this layout element (the inner rect) may be expanded to. More...
 
virtual QList< QCPLayoutElement * > elements (bool recursive) const
 Returns a list of all child elements in this layout element. More...
 
- Public Member Functions inherited from QCPLayerable
 QCPLayerable (QCustomPlot *plot, QString targetLayer="", QCPLayerable *parentLayerable=0)
 Creates a new QCPLayerable instance. More...
 
 ~QCPLayerable ()
 
bool visible () const
 
QCustomPlotparentPlot () const
 
QCPLayerableparentLayerable () const
 Returns the parent layerable of this layerable. More...
 
QCPLayerlayer () const
 
bool antialiased () const
 
void setVisible (bool on)
 Sets the visibility of this layerable object. More...
 
Q_SLOT bool setLayer (QCPLayer *layer)
 Sets the layer of this layerable object. More...
 
bool setLayer (const QString &layerName)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Sets the layer of this layerable object by name. More...
 
void setAntialiased (bool enabled)
 Sets whether this object will be drawn antialiased or not. More...
 
bool realVisibility () const
 Returns whether this layerable is visible, taking the visibility of the layerable parent and the visibility of the layer this layerable is on into account. More...
 

Protected Member Functions

virtual void draw (QCPPainter *painter)
 
virtual QSize minimumSizeHint () const
 Returns the minimum size this layout element (the inner rect) may be compressed to. More...
 
QPen getIconBorderPen () const
 
QColor getTextColor () const
 
QFont getFont () const
 
- Protected Member Functions inherited from QCPAbstractLegendItem
virtual QCP::Interaction selectionCategory () const
 
virtual void applyDefaultAntialiasingHint (QCPPainter *painter) const
 
virtual QRect clipRect () const
 
virtual void selectEvent (QMouseEvent *event, bool additive, const QVariant &details, bool *selectionStateChanged)
 
virtual void deselectEvent (bool *selectionStateChanged)
 
- Protected Member Functions inherited from QCPLayoutElement
virtual int calculateAutoMargin (QCP::MarginSide side)
 
virtual void mousePressEvent (QMouseEvent *event)
 This event is called, if the mouse was pressed while being inside the outer rect of this layout element. More...
 
virtual void mouseMoveEvent (QMouseEvent *event)
 This event is called, if the mouse is moved inside the outer rect of this layout element. More...
 
virtual void mouseReleaseEvent (QMouseEvent *event)
 This event is called, if the mouse was previously pressed inside the outer rect of this layout element and is now released. More...
 
virtual void mouseDoubleClickEvent (QMouseEvent *event)
 This event is called, if the mouse is double-clicked inside the outer rect of this layout element. More...
 
virtual void wheelEvent (QWheelEvent *event)
 This event is called, if the mouse wheel is scrolled while the cursor is inside the rect of this layout element. More...
 
virtual void parentPlotInitialized (QCustomPlot *parentPlot)
 
- Protected Member Functions inherited from QCPLayerable
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

QCPAbstractPlottablemPlottable
 
- Protected Attributes inherited from QCPAbstractLegendItem
QCPLegendmParentLegend
 
QFont mFont
 
QColor mTextColor
 
QFont mSelectedFont
 
QColor mSelectedTextColor
 
bool mSelectable
 
bool mSelected
 
- Protected Attributes inherited from QCPLayoutElement
QCPLayoutmParentLayout
 
QSize mMinimumSize
 
QSize mMaximumSize
 
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
 

Additional Inherited Members

- Public Types inherited from QCPLayoutElement
enum  UpdatePhase {
  upPreparation ,
  upMargins ,
  upLayout
}
 Defines the phases of the update process, that happens just before a replot. More...
 
- Signals inherited from QCPAbstractLegendItem
void selectionChanged (bool selected)
 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. More...
 
void selectableChanged (bool selectable)
 
- Signals inherited from QCPLayerable
void layerChanged (QCPLayer *newLayer)
 This signal is emitted when the layer of this layerable changes, i.e. More...
 

Detailed Description

A legend item representing a plottable with an icon and the plottable name.

This is the standard legend item for plottables. It displays an icon of the plottable next to the plottable name. The icon is drawn by the respective plottable itself (QCPAbstractPlottable::drawLegendIcon), and tries to give an intuitive symbol for the plottable. For example, the QCPGraph draws a centered horizontal line and/or a single scatter point in the middle.

Legend items of this type are always associated with one plottable (retrievable via the plottable() function and settable with the constructor). You may change the font of the plottable name with setFont. Icon padding and border pen is taken from the parent QCPLegend, see QCPLegend::setIconBorderPen and QCPLegend::setIconTextPadding.

The function QCPAbstractPlottable::addToLegend/ QCPAbstractPlottable::removeFromLegend creates/removes legend items of this type in the default implementation. However, these functions may be reimplemented such that a different kind of legend item (e.g a direct subclass of QCPAbstractLegendItem) is used for that plottable.

Since QCPLegend is based on QCPLayoutGrid, a legend item itself is just a subclass of QCPLayoutElement. While it could be added to a legend (or any other layout) via the normal layout interface, QCPLegend has specialized functions for handling legend items conveniently, see the documentation of QCPLegend.

Definition at line 2121 of file qcustomplot.h.

Constructor & Destructor Documentation

◆ QCPPlottableLegendItem()

QCPPlottableLegendItem::QCPPlottableLegendItem ( QCPLegend parent,
QCPAbstractPlottable plottable 
)

Creates a new legend item associated with plottable.

Once it's created, it can be added to the legend via QCPLegend::addItem.

A more convenient way of adding/removing a plottable to/from the legend is via the functions QCPAbstractPlottable::addToLegend and QCPAbstractPlottable::removeFromLegend.

Definition at line 12834 of file qcustomplot.cpp.

Member Function Documentation

◆ draw()

void QCPPlottableLegendItem::draw ( QCPPainter painter)
protectedvirtual

Implements QCPAbstractLegendItem.

Definition at line 12876 of file qcustomplot.cpp.

◆ getFont()

QFont QCPPlottableLegendItem::getFont ( ) const
protected

Definition at line 12865 of file qcustomplot.cpp.

◆ getIconBorderPen()

QPen QCPPlottableLegendItem::getIconBorderPen ( ) const
protected

Definition at line 12845 of file qcustomplot.cpp.

◆ getTextColor()

QColor QCPPlottableLegendItem::getTextColor ( ) const
protected

Definition at line 12855 of file qcustomplot.cpp.

◆ minimumSizeHint()

QSize QCPPlottableLegendItem::minimumSizeHint ( ) const
protectedvirtual

Returns the minimum size this layout element (the inner rect) may be compressed to.

if a minimum size (setMinimumSize) was not set manually, parent layouts consult this function to determine the minimum allowed size of this layout element. (A manual minimum size is considered set if it is non-zero.)

Reimplemented from QCPLayoutElement.

Definition at line 12905 of file qcustomplot.cpp.

◆ plottable()

QCPAbstractPlottable* QCPPlottableLegendItem::plottable ( )
inline

Definition at line 2128 of file qcustomplot.h.

Member Data Documentation

◆ mPlottable

QCPAbstractPlottable* QCPPlottableLegendItem::mPlottable
protected

Definition at line 2132 of file qcustomplot.h.


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