# QwtSymbol Class Reference

A class for drawing symbols. More...

`#include <qwt_symbol.h>`

List of all members.

## Public Types
enum | Style { NoSymbol = -1, Ellipse, Rect, Diamond, Triangle, DTriangle, UTriangle, LTriangle, RTriangle, Cross, XCross, HLine, VLine, Star1, Star2, Hexagon, StyleCnt }
## Public Member Functions
| QwtSymbol ()
| QwtSymbol (Style st, const QBrush &bd, const QPen &pn, const QSize &s)
virtual | ~QwtSymbol ()
bool | operator!= (const QwtSymbol &) const
virtual bool | operator== (const QwtSymbol &) const
virtual QwtSymbol * | clone () const
void | setSize (const QSize &s)
void | setSize (int a, int b=-1)
void | setBrush (const QBrush &b)
void | setPen (const QPen &p)
void | setStyle (Style s)
const QBrush & | brush () const
const QPen & | pen () const
const QSize & | size () const
Style | style () const
void | draw (QPainter *p, const QPoint &pt) const
void | draw (QPainter *p, int x, int y) const
virtual void | draw (QPainter *p, const QRect &r) const

## Detailed Description

A class for drawing symbols.

## Member Enumeration Documentation

enum QwtSymbol::Style

Style

See also:
  setStyle(), style()

## Constructor & Destructor Documentation

QwtSymbol::QwtSymbol | ( |  | ) |

Default Constructor

The symbol is constructed with gray interior, black outline with zero width, no size and style 'NoSymbol'.

QwtSymbol::QwtSymbol | ( | QwtSymbol::Style | style,
|  | const QBrush & | brush,
|  | const QPen & | pen,
|  | const QSize & | size |
| ) |  |  |

Constructor.

Parameters:

  | style | Symbol Style
  | brush | brush to fill the interior
  | pen | outline pen
  | size | size

QwtSymbol::~QwtSymbol | ( |  | ) | `[virtual]`

Destructor.

## Member Function Documentation

const QBrush& QwtSymbol::brush | ( |  | ) | const`[inline]`

Return Brush.

QwtSymbol * QwtSymbol::clone | ( |  | ) | const`[virtual]`

Allocate and return a symbol with the same attributes

Returns:
  Cloned symbol

void QwtSymbol::draw | ( | QPainter * | painter,
|  | const QRect & | r |
| ) |  |  | const`[virtual]`

Draw the symbol into a bounding rectangle.

This function assumes that the painter has been initialized with brush and pen before. This allows a much more performant implementation when painting many symbols with the same brush and pen like in curves.

Parameters:

  | painter | Painter
  | r | Bounding rectangle

void QwtSymbol::draw | ( | QPainter * | p,
|  | int | x,
|  | int | y |
| ) |  |  | const

Draw the symbol at a point (x,y).

void QwtSymbol::draw | ( | QPainter * | painter,
|  | const QPoint & | pos |
| ) |  |  | const

Draw the symbol at a specified point.

Parameters:

  | painter | Painter
  | pos | Center of the symbol

bool QwtSymbol::operator!= | ( | const QwtSymbol & | other | ) | const

!= operator

bool QwtSymbol::operator== | ( | const QwtSymbol & | other | ) | const`[virtual]`

== operator

const QPen& QwtSymbol::pen | ( |  | ) | const`[inline]`

Return Pen.

void QwtSymbol::setBrush | ( | const QBrush & | brush | ) |

Assign a brush.

The brush is used to draw the interior of the symbol.

Parameters:

  | brush | Brush

void QwtSymbol::setPen | ( | const QPen & | pen | ) |

Assign a pen

The pen is used to draw the symbol's outline.

The width of non cosmetic pens is scaled according to the resolution of the paint device.

Parameters:

  | pen | Pen

See also:
  pen(), setBrush(), QwtPainter::scaledPen()

void QwtSymbol::setSize | ( | int | width,
|  | int | height = `-1` |
| ) |  |  |

Specify the symbol's size.

If the 'h' parameter is left out or less than 0, and the 'w' parameter is greater than or equal to 0, the symbol size will be set to (w,w).

Parameters:

  | width | Width
  | height | Height (defaults to -1)

void QwtSymbol::setSize | ( | const QSize & | size | ) |

Set the symbol's size

Parameters:

  | size | Size

void QwtSymbol::setStyle | ( | QwtSymbol::Style | s | ) |

Specify the symbol style.

The following styles are defined:

NoSymbol
  No Style. The symbol cannot be drawn.
Ellipse
  Ellipse or circle
Rect
  Rectangle
Diamond
  Diamond
Triangle
  Triangle pointing upwards
DTriangle
  Triangle pointing downwards
UTriangle
  Triangle pointing upwards
LTriangle
  Triangle pointing left
RTriangle
  Triangle pointing right
Cross
  Cross (+)
XCross
  Diagonal cross (X)
HLine
  Horizontal line
VLine
  Vertical line
Star1
  X combined with +
Star2
  Six-pointed star
Hexagon
  Hexagon

Parameters:

  | s | style

const QSize& QwtSymbol::size | ( |  | ) | const`[inline]`

Return Size.

Style QwtSymbol::style | ( |  | ) | const`[inline]`

Return Style.