Ipelib

- Main Page
- Related Pages
- Modules
- Classes

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | Static Public Member Functions | Friends | List of all members
ipe::Attribute Class Reference
Ipe Attributes

`#include <ipeattributes.h>`

## Public Member Functions

| Attribute ()
| Attribute (bool symbolic, String name)
| Attribute (Fixed value)
| Attribute (Color color)
| Attribute (THorizontalAlignment align)
| Attribute (TVerticalAlignment align)
| Attribute (TLineJoin join)
| Attribute (TLineCap cap)
| Attribute (TFillRule rule)
| Attribute (TPinned pin)
| Attribute (TTransformations trans)
| Attribute (TPathMode pm)
bool | isSymbolic () const
bool | isString () const
bool | isColor () const
bool | isNumber () const
bool | isEnum () const
bool | isBoolean () const
bool | isNormal () const
int | index () const
int | internal () const
String | string () const
Fixed | number () const
Color | color () const
bool | boolean () const
THorizontalAlignment | horizontalAlignment () const
TVerticalAlignment | verticalAlignment () const
TLineJoin | lineJoin () const
TLineCap | lineCap () const
TFillRule | fillRule () const
TPinned | pinned () const
TTransformations | transformations () const
TPathMode | pathMode () const
bool | operator== (const Attribute &rhs) const
bool | operator!= (const Attribute &rhs) const

## Static Public Member Functions

static Attribute | Boolean (bool flag)
static Attribute | BLACK ()
static Attribute | WHITE ()
static Attribute | ONE ()
static Attribute | NORMAL ()
static Attribute | UNDEFINED ()
static Attribute | BACKGROUND ()
static Attribute | SYM_STROKE ()
static Attribute | SYM_FILL ()
static Attribute | SYM_PEN ()
static Attribute | ARROW_NORMAL ()
static Attribute | OPAQUE ()
static Attribute | ARROW_ARC ()
static Attribute | ARROW_FARC ()
static Attribute | makeColor (String str, Attribute deflt)
static Attribute | makeScalar (String str, Attribute deflt)
static Attribute | makeDashStyle (String str)
static Attribute | makeTextSize (String str)
static Attribute | normal (Kind kind)

## Friends

class | StyleSheet

## Detailed Description

An attribute of an Ipe Object.

An attribute is either an absolute value or a symbolic name that has to be looked up in a StyleSheet.

All string values are replaced by indices into a Repository (that applies both to symbolic names and to absolute values that are strings). All other values are stored directly inside the attribute, either as a Fixed or a Color.

There are five different kinds of Attribute objects:

- if isSymbolic() is true, index() returns the index into the repository, and string() returns the symbolic name.
- if isColor() is true, color() returns an absolute RGB color.
- if isNumeric() is true, number() returns an absolute scalar value.
- if isEnum() is true, the attribute represents an enumeration value.
- otherwise, isString() is true, and index() returns the index into the repository (for a string expressing the absolute value of the attribute), and string() returns the string itself.

## Constructor & Destructor Documentation

ipe::Attribute::Attribute | ( |  | ) |

inlineexplicit

Default constructor.

Attribute::Attribute | ( | bool | symbolic,
|  | String | name
| ) |  |

explicit

Create an attribute with string value.

Attribute::Attribute | ( | Fixed | value | ) |

explicit

Create an absolute numeric attribute.

Attribute::Attribute | ( | Color | color | ) |

explicit

Create an attribute with absolute color.

ipe::Attribute::Attribute | ( | THorizontalAlignment | align | ) |

inlineexplicit

ipe::Attribute::Attribute | ( | TVerticalAlignment | align | ) |

inlineexplicit

ipe::Attribute::Attribute | ( | TLineJoin | join | ) |

inlineexplicit

ipe::Attribute::Attribute | ( | TLineCap | cap | ) |

inlineexplicit

ipe::Attribute::Attribute | ( | TFillRule | rule | ) |

inlineexplicit

ipe::Attribute::Attribute | ( | TPinned | pin | ) |

inlineexplicit

ipe::Attribute::Attribute | ( | TTransformations | trans | ) |

inlineexplicit

ipe::Attribute::Attribute | ( | TPathMode | pm | ) |

inlineexplicit

## Member Function Documentation

static Attribute ipe::Attribute::Boolean | ( | bool | flag | ) |

inlinestatic

bool ipe::Attribute::isSymbolic | ( |  | ) | const

inline

Is it symbolic?

bool ipe::Attribute::isString | ( |  | ) | const

inline

Is it an absolute string value?

bool ipe::Attribute::isColor | ( |  | ) | const

inline

Is it a color?

bool ipe::Attribute::isNumber | ( |  | ) | const

inline

Is it a number?

bool ipe::Attribute::isEnum | ( |  | ) | const

inline

Is it an enumeration?

bool ipe::Attribute::isBoolean | ( |  | ) | const

inline

Is it a boolean?

bool ipe::Attribute::isNormal | ( |  | ) | const

inline

Is it the symbolic name "normal"?

int ipe::Attribute::index | ( |  | ) | const

inline

Return index into Repository.

int ipe::Attribute::internal | ( |  | ) | const

inline

String Attribute::string | ( |  | ) | const

Return string representing the attribute.

Fixed Attribute::number | ( |  | ) | const

Return value of absolute numeric attribute.

Color Attribute::color | ( |  | ) | const

Return absolute color.

bool ipe::Attribute::boolean | ( |  | ) | const

inline

THorizontalAlignment ipe::Attribute::horizontalAlignment | ( |  | ) | const

inline

TVerticalAlignment ipe::Attribute::verticalAlignment | ( |  | ) | const

inline

TLineJoin ipe::Attribute::lineJoin | ( |  | ) | const

inline

TLineCap ipe::Attribute::lineCap | ( |  | ) | const

inline

TFillRule ipe::Attribute::fillRule | ( |  | ) | const

inline

TPinned ipe::Attribute::pinned | ( |  | ) | const

inline

TTransformations ipe::Attribute::transformations | ( |  | ) | const

inline

TPathMode ipe::Attribute::pathMode | ( |  | ) | const

inline

bool ipe::Attribute::operator== | ( | const Attribute & | rhs | ) | const

inline

Are two values equal (only compares index!)

bool ipe::Attribute::operator!= | ( | const Attribute & | rhs | ) | const

inline

Are two values different (only compares index!)

static Attribute ipe::Attribute::BLACK | ( |  | ) |

inlinestatic

Create absolute black color.

static Attribute ipe::Attribute::WHITE | ( |  | ) |

inlinestatic

Create absolute white color.

static Attribute ipe::Attribute::ONE | ( |  | ) |

inlinestatic

Create absolute number one.

static Attribute ipe::Attribute::NORMAL | ( |  | ) |

inlinestatic

Create symbolic attribute "normal".

static Attribute ipe::Attribute::UNDEFINED | ( |  | ) |

inlinestatic

Create symbolic attribute "undefined".

static Attribute ipe::Attribute::BACKGROUND | ( |  | ) |

inlinestatic

Create symbolic attribute "Background".

static Attribute ipe::Attribute::SYM_STROKE | ( |  | ) |

inlinestatic

Create symbolic attribute "sym-stroke".

static Attribute ipe::Attribute::SYM_FILL | ( |  | ) |

inlinestatic

Create symbolic attribute "sym-fill".

static Attribute ipe::Attribute::SYM_PEN | ( |  | ) |

inlinestatic

Create symbolic attribute "sym-pen".

static Attribute ipe::Attribute::ARROW_NORMAL | ( |  | ) |

inlinestatic

Create symbolic attribute "arrow/normal(spx)".

static Attribute ipe::Attribute::OPAQUE | ( |  | ) |

inlinestatic

Create symbolic attribute "opaque".

static Attribute ipe::Attribute::ARROW_ARC | ( |  | ) |

inlinestatic

Create symbolic attribute "arrow/arc(spx)".

static Attribute ipe::Attribute::ARROW_FARC | ( |  | ) |

inlinestatic

Create symbolic attribute "arrow/farc(spx)".

Attribute Attribute::makeColor | ( | String | str,
|  | Attribute | deflt
| ) |  |

static

Make a color attribute.

If the string starts with a letter, make a symbolic attribute. Otherwise, it's either a single gray value (0.0 to 1.0), or the three red, green, and blue components, separated by spaces. If it's an empty string, return deflt.

Attribute Attribute::makeScalar | ( | String | str,
|  | Attribute | deflt
| ) |  |

static

Make a scalar attribute.

If str is empty, simply return deflt. If str starts with a letter, make a symbolic attribute. Otherwise, must be a number.

Attribute Attribute::makeDashStyle | ( | String | str | ) |

static

Construct dash style attribute from string.

Strings starting with '[' create an absolute dash style. The empty string is equivalent to 'normal'. Any other string creates a symbolic dash style.

Attribute Attribute::makeTextSize | ( | String | str | ) |

static

Construct text size attribute from string.

String starting with digit creates a numeric absolute value, string starting with letter creates symbolic text size, anything else creates absolute (string) text size. The empty string is treated like "normal".

Attribute Attribute::normal | ( | Kind | kind | ) |

static

Return a standard value for attribute of kind.

The value is used if the stylesheet doesn't define a symbolic attribute used in the document.

## Friends And Related Function Documentation

friend class StyleSheet

friend

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

- ipeattributes.h
- ipeattributes.cpp