# IpeFillable Class Reference
[Ipe Objects]

Base class for IpeFillable's with fill color and line style. More...

Inherits IpeObject.

Inherited by IpeGroup, IpeMark, and IpePath.

List of all members.

## Public Member Functions

- virtual IpeFillable * AsFillable ()
- virtual void CheckStyle (const IpeStyleSheet *sheet, IpeAttributeSeq &seq) const
- void SetFill (IpeAttribute fill)
- void SetLineWidth (IpeAttribute lw)
- void SetDashStyle (IpeAttribute dash)
- void SetStrokeStyle (IpeStrokeStyle attr)
- IpeAttribute Fill () const
- IpeAttribute LineWidth () const
- IpeAttribute DashStyle () const
- IpeStrokeStyle StrokeStyle () const

## Protected Member Functions

- IpeFillable ()
- IpeFillable (const IpeAllAttributes &attr)
- IpeFillable (IpeRepository *rep, const IpeXmlAttributes &attr)
- IpeFillable (const IpeFillable &rhs)
- void SaveFillAttributesAsXml (IpePainter &painter, IpeStream &stream) const
- void ApplyAttributes (IpePainter &painter) const

## Detailed Description

Base class for IpeFillable's with fill color and line style.

## Constructor & Destructor Documentation

IpeFillable::IpeFillable | ( |  | ) | `[explicit, protected]`

Create object with all null attributes.

IpeFillable::IpeFillable | ( | const IpeAllAttributes & | attr | ) | `[explicit, protected]`

Create object by taking attributes from attr and setting identity matrix.

IpeFillable::IpeFillable | ( | IpeRepository * | rep,
|  | const IpeXmlAttributes & | attr |
| ) |  |  | `[explicit, protected]`

Construct from XML stream.

IpeFillable::IpeFillable | ( | const IpeFillable & | rhs | ) | `[protected]`

Copy constructor.

## Member Function Documentation

IpeFillable * IpeFillable::AsFillable | ( |  | ) | `[virtual]`

Return pointer to this object.

Reimplemented from IpeObject.

void IpeFillable::CheckStyle | ( | const IpeStyleSheet * | sheet,
|  | IpeAttributeSeq & | seq |
| ) |  |  | const`[virtual]`

Check all symbolic attributes.

Reimplemented from IpeObject.

Reimplemented in IpeGroup, IpeMark, and IpePath.

void IpeFillable::SetFill | ( | IpeAttribute | fill | ) |

Set fill color.

void IpeFillable::SetLineWidth | ( | IpeAttribute | lw | ) |

Set line width.

void IpeFillable::SetDashStyle | ( | IpeAttribute | dash | ) |

Set dash style.

void IpeFillable::SetStrokeStyle | ( | IpeStrokeStyle | attr | ) |

Set line cap and join.

IpeAttribute IpeFillable::Fill | ( |  | ) | const`[inline]`

Return object fill color.

IpeAttribute IpeFillable::LineWidth | ( |  | ) | const`[inline]`

Return object line width.

IpeAttribute IpeFillable::DashStyle | ( |  | ) | const`[inline]`

Return object line style.

IpeStrokeStyle IpeFillable::StrokeStyle | ( |  | ) | const`[inline]`

Return line cap, join.

void IpeFillable::SaveFillAttributesAsXml | ( | IpePainter & | painter,
|  | IpeStream & | stream |
| ) |  |  | const`[protected]`

Write common attributes to XML stream.

void IpeFillable::ApplyAttributes | ( | IpePainter & | painter | ) | const`[protected]`

Save graphics state, and set new attributes.

Color, line width, and dash style are only set if the current value in the graphics state is null.

Line cap, line join, and miter limit are only set if the value to be set is not the default. (I.e. a default value means to inherit the parent value.)

Don't forget to pop the graphics state after doing your drawing!

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

- ipeobj.h
- ipeobj.cpp