INET Framework for OMNeT++/OMNEST
inet::LabeledIconFigure Class Reference

#include <LabeledIconFigure.h>

Inheritance diagram for inet::LabeledIconFigure:

Public Member Functions

 LabeledIconFigure (const char *name=nullptr)
 
cIconFigure * getIconFigure () const
 
cLabelFigure * getLabelFigure () const
 
void setTooltip (const char *tooltip)
 
void setAssociatedObject (cObject *object)
 
cFigure::Rectangle getBounds () const
 
void setOpacity (double opacity)
 
void setPosition (cFigure::Point position)
 

Protected Attributes

cIconFigure * iconFigure
 
cLabelFigure * labelFigure
 

Constructor & Destructor Documentation

◆ LabeledIconFigure()

inet::LabeledIconFigure::LabeledIconFigure ( const char *  name = nullptr)
12  :
13  cGroupFigure(name)
14 {
15  iconFigure = new cIconFigure("icon");
16  iconFigure->setAnchor(cFigure::ANCHOR_NW);
17  labelFigure = new cLabelFigure("label");
18  labelFigure->setAnchor(cFigure::ANCHOR_CENTER);
19  labelFigure->setTags("label");
20  labelFigure->setHalo(true);
21  addFigure(iconFigure);
22  addFigure(labelFigure);
23 }

Member Function Documentation

◆ getBounds()

cFigure::Rectangle inet::LabeledIconFigure::getBounds ( ) const
38 {
39  auto iconBounds = iconFigure->getBounds();
40  auto labelBounds = labelFigure->getBounds();
41  auto x = std::min(iconBounds.x, labelBounds.x);
42  auto y = std::min(iconBounds.y, labelBounds.y);
43  auto width = std::max(iconBounds.x + iconBounds.width, labelBounds.x + labelBounds.width) - x;
44  auto height = std::max(iconBounds.y + iconBounds.height, labelBounds.y + labelBounds.height) - y;
45  return cFigure::Rectangle(x, y, width, height);
46 }

◆ getIconFigure()

cIconFigure* inet::LabeledIconFigure::getIconFigure ( ) const
inline
24 { return iconFigure; }

◆ getLabelFigure()

cLabelFigure* inet::LabeledIconFigure::getLabelFigure ( ) const
inline

◆ setAssociatedObject()

void inet::LabeledIconFigure::setAssociatedObject ( cObject *  object)
32 {
33  iconFigure->setAssociatedObject(object);
34  labelFigure->setAssociatedObject(object);
35 }

◆ setOpacity()

void inet::LabeledIconFigure::setOpacity ( double  opacity)
49 {
50  iconFigure->setOpacity(opacity);
51  labelFigure->setOpacity(opacity);
52 }

Referenced by inet::visualizer::PacketDropCanvasVisualizer::setAlpha().

◆ setPosition()

void inet::LabeledIconFigure::setPosition ( cFigure::Point  position)
55 {
56  iconFigure->setPosition(position);
57  labelFigure->setPosition(position);
58 }

◆ setTooltip()

void inet::LabeledIconFigure::setTooltip ( const char *  tooltip)
26 {
27  iconFigure->setTooltip(tooltip);
28  labelFigure->setTooltip(tooltip);
29 }

Member Data Documentation

◆ iconFigure

cIconFigure* inet::LabeledIconFigure::iconFigure
protected

◆ labelFigure

cLabelFigure* inet::LabeledIconFigure::labelFigure
protected

The documentation for this class was generated from the following files:
inet::sctp::min
double min(const double a, const double b)
Returns the minimum of a and b.
Definition: SctpAssociation.h:261
inet::LabeledIconFigure::iconFigure
cIconFigure * iconFigure
Definition: LabeledIconFigure.h:18
inet::sctp::max
double max(const double a, const double b)
Returns the maximum of a and b.
Definition: SctpAssociation.h:266
inet::LabeledIconFigure::labelFigure
cLabelFigure * labelFigure
Definition: LabeledIconFigure.h:19