pangomm 2.40.1

Public Member Functions | Static Public Member Functions | Protected Attributes | Related Functions | List of all members
Pango::Attribute Class Reference

The Pango::Attribute structure represents the common portions of all attributes. More...

`#include <pangomm/attributes.h>`

Inheritance diagram for Pango::Attribute:
[legend]

## Public Member Functions
| Attribute ()
| Constructs an invalid attribute. More...
| Attribute (const Attribute& src)
| Attribute (PangoAttribute* castitem, bool take_copy=true)
| ~Attribute ()
Attribute& | operator= (const Attribute& src)
AttrType | get_type () const
| Gets the type ID for this attribute. More...
unsigned int | get_start_index () const
| Gets the start index of the range. More...
unsigned int | get_end_index () const
| Gets the end index of the range. More...
void | set_start_index (const unsigned int& value)
| Sets the start index of the range. More...
void | set_end_index (const unsigned int& value)
| Sets the end index of the range. More...
bool | equal (const Attribute& attr2) const
| Compare two attributes for equality. More...
PangoAttribute* | gobj ()
| Provides access to the underlying C GObject. More...
const PangoAttribute* | gobj () const
| Provides access to the underlying C GObject. More...

## Static Public Member Functions
static AttrType | register_type (const Glib::ustring& name)
| Allocate a new attribute type ID. More...
static AttrString | create_attr_family (const Glib::ustring& family)
| Create a new font family attribute. More...
static AttrLanguage | create_attr_language (const Language& language)
| Create a new language tag attribute. More...
static AttrColor | create_attr_foreground (guint16 red, guint16 green, guint16 blue)
| Create a new foreground color attribute. More...
static AttrColor | create_attr_background (guint16 red, guint16 green, guint16 blue)
| Create a new background color attribute. More...
static AttrInt | create_attr_foreground_alpha (guint16 alpha)
| Create a new foreground alpha attribute. More...
static AttrInt | create_attr_background_alpha (guint16 alpha)
| Create a new background alpha attribute. More...
static AttrInt | create_attr_size (int size)
| Create a new font-size attribute. More...
static AttrInt | create_attr_style (Style style)
| Create a new font slant style attribute. More...
static AttrInt | create_attr_weight (Weight weight)
| Create a new font weight attribute. More...
static AttrInt | create_attr_variant (Variant variant)
| Create a new font variant attribute (normal or small caps). More...
static AttrInt | create_attr_stretch (Stretch stretch)
| Create a new font stretch attribute. More...
static AttrFontDesc | create_attr_font_desc (const FontDescription& desc)
| Create a new font description attribute. More...
static AttrInt | create_attr_underline (Underline underline)
| Create a new underline-style object. More...
static AttrInt | create_attr_strikethrough (bool strikethrough)
| Create a new font strike-through attribute. More...
static AttrInt | create_attr_rise (int rise)
| Create a new baseline displacement attribute. More...
static AttrFloat | create_attr_scale (double scale_factor)
| Create a new font size scale attribute. More...
static AttrShape | create_attr_shape (const Rectangle& ink_rect, const Rectangle& logical_rect)
| Create a new shape attribute. More...

## Protected Attributes
PangoAttribute* | gobject_

## Related Functions
(Note that these are not member functions.)
bool | operator== (const Attribute& lhs, const Attribute& rhs)
bool | operator!= (const Attribute& lhs, const Attribute& rhs)
Pango::Attribute | wrap (PangoAttribute* object, bool take_copy=false)

## Detailed Description

The Pango::Attribute structure represents the common portions of all attributes.

Particular types of attributes derive this class. It holds the range in which the value in the type-specific part of the attribute applies.

Attributed text is used in a number of places in pango. It is used as the input to the itemization process and also when creating a Pango::Layout.

## Constructor & Destructor Documentation

## ◆ Attribute() [1/3]

Pango::Attribute::Attribute | ( |  | ) |

Constructs an invalid attribute.

## ◆ Attribute() [2/3]

Pango::Attribute::Attribute | ( | const Attribute& | src | ) |

## ◆ Attribute() [3/3]

Pango::Attribute::Attribute | ( | PangoAttribute * | castitem,
|  | bool | take_copy = `true`
| ) |  |
| explicit

## ◆ ~Attribute()

Pango::Attribute::~Attribute | ( |  | ) |

## Member Function Documentation

## ◆ create_attr_background()

static AttrColor Pango::Attribute::create_attr_background | ( | guint16 | red,
|  | guint16 | green,
|  | guint16 | blue
| ) |  |
| static

Create a new background color attribute.

Parameters

  red | The red value (ranging from 0 to 65535).
  green | The green value (ranging from 0 to 65535).
  blue | The blue value (ranging from 0 to 65535).

Returns
  An attribute of type AttrColor.

## ◆ create_attr_background_alpha()

static AttrInt Pango::Attribute::create_attr_background_alpha | ( | guint16 | alpha | ) |
| static

Create a new background alpha attribute.

Parameters

  alpha | The alpha value, between 1 and 65536.

## ◆ create_attr_family()

static AttrString Pango::Attribute::create_attr_family | ( | const Glib::ustring & | family | ) |
| static

Create a new font family attribute.

Parameters

  family | The family or comma separated list of families.

Returns
  An attribute of type AttrString.

## ◆ create_attr_font_desc()

static AttrFontDesc Pango::Attribute::create_attr_font_desc | ( | const FontDescription& | desc | ) |
| static

Create a new font description attribute.

This attribute allows setting family, style, weight, variant, stretch, and size simultaneously.

Parameters

  desc | The font description.

Returns
  An attribute of type AttrFontDesc.

## ◆ create_attr_foreground()

static AttrColor Pango::Attribute::create_attr_foreground | ( | guint16 | red,
|  | guint16 | green,
|  | guint16 | blue
| ) |  |
| static

Create a new foreground color attribute.

Parameters

  red | The red value (ranging from 0 to 65535).
  green | The green value (ranging from 0 to 65535).
  blue | The blue value (ranging from 0 to 65535).

Returns
  An attribute of type AttrColor.

## ◆ create_attr_foreground_alpha()

static AttrInt Pango::Attribute::create_attr_foreground_alpha | ( | guint16 | alpha | ) |
| static

Create a new foreground alpha attribute.

Parameters

  alpha | The alpha value, between 1 and 65536.

## ◆ create_attr_language()

static AttrLanguage Pango::Attribute::create_attr_language | ( | const Language& | language | ) |
| static

Create a new language tag attribute.

Parameters

  language | The language tag.

Returns
  An attribute of type AttrLanguage.

## ◆ create_attr_rise()

static AttrInt Pango::Attribute::create_attr_rise | ( | int | rise | ) |
| static

Create a new baseline displacement attribute.

Parameters

  rise | The amount that the text should be displaced vertically, in 10'000ths of an em. Positive values displace the text upwards.

Returns
  An attribute of type AttrInt.

## ◆ create_attr_scale()

static AttrFloat Pango::Attribute::create_attr_scale | ( | double | scale_factor | ) |
| static

Create a new font size scale attribute.

The base font for the affected text will have its size multiplied by scale_factor.

Parameters

  scale_factor | Factor to scale the font.

Returns
  An attribute of type AttrFloat.

## ◆ create_attr_shape()

static AttrShape Pango::Attribute::create_attr_shape | ( | const Rectangle& | ink_rect,
|  | const Rectangle& | logical_rect
| ) |  |
| static

Create a new shape attribute.

A shape is used to impose a particular ink and logical rect on the result of shaping a particular glyph. This might be used, for instance, for embedding a picture or a widget inside a PangoLayout.

Parameters

  ink_rect | Ink rectangle to assign to each character.
  logical_rect | Logical rectangle assign to each character.

Returns
  An attribute of type AttrShape.

## ◆ create_attr_size()

static AttrInt Pango::Attribute::create_attr_size | ( | int | size | ) |
| static

Create a new font-size attribute.

Parameters

  size | The font size, in 1000ths of a point.

Returns
  An attribute of type AttrInt.

## ◆ create_attr_stretch()

static AttrInt Pango::Attribute::create_attr_stretch | ( | Stretch | stretch | ) |
| static

Create a new font stretch attribute.

Parameters

  stretch | The stretch.

Returns
  An attribute of type AttrInt.

## ◆ create_attr_strikethrough()

static AttrInt Pango::Attribute::create_attr_strikethrough | ( | bool | strikethrough | ) |
| static

Create a new font strike-through attribute.

Parameters

  strikethrough | True indicates the text should be struck-through.

Returns
  An attribute of type AttrInt.

## ◆ create_attr_style()

static AttrInt Pango::Attribute::create_attr_style | ( | Style | style | ) |
| static

Create a new font slant style attribute.

Parameters

  style | The slant style.

Returns
  An attribute of type AttrInt.

## ◆ create_attr_underline()

static AttrInt Pango::Attribute::create_attr_underline | ( | Underline | underline | ) |
| static

Create a new underline-style object.

Parameters

  underline | The underline style.

Returns
  An attribute of type AttrInt.

## ◆ create_attr_variant()

static AttrInt Pango::Attribute::create_attr_variant | ( | Variant | variant | ) |
| static

Create a new font variant attribute (normal or small caps).

Parameters

  variant | The variant.

Returns
  An attribute of type AttrInt.

## ◆ create_attr_weight()

static AttrInt Pango::Attribute::create_attr_weight | ( | Weight | weight | ) |
| static

Create a new font weight attribute.

Parameters

  weight | The weight.

Returns
  An attribute of type AttrInt.

## ◆ equal()

bool Pango::Attribute::equal | ( | const Attribute& | attr2 | ) | const

Compare two attributes for equality.

This compares only the actual value of the two attributes and not the ranges that the attributes apply to.

Parameters

  attr2 | Another Pango::Attribute.

Returns
  `true` if the two attributes have the same value.

## ◆ get_end_index()

unsigned int Pango::Attribute::get_end_index | ( |  | ) | const

Gets the end index of the range.

The character at this index is not included in the range.

Returns
  The end index of the range.

## ◆ get_start_index()

unsigned int Pango::Attribute::get_start_index | ( |  | ) | const

Gets the start index of the range.

Returns
  The start index of the range.

## ◆ get_type()

AttrType Pango::Attribute::get_type | ( |  | ) | const

Gets the type ID for this attribute.

Returns
  The type ID for this attribute or ATTR_INVALID if the attribute is invalid.

## ◆ gobj() [1/2]

PangoAttribute* Pango::Attribute::gobj | ( |  | ) |
| inline

Provides access to the underlying C GObject.

## ◆ gobj() [2/2]

const PangoAttribute* Pango::Attribute::gobj | ( |  | ) | const
| inline

Provides access to the underlying C GObject.

## ◆ operator=()

Attribute& Pango::Attribute::operator= | ( | const Attribute& | src | ) |

## ◆ register_type()

static AttrType Pango::Attribute::register_type | ( | const Glib::ustring & | name | ) |
| static

Allocate a new attribute type ID.

Parameters

  name | An identifier for the type (currently unused).

Returns
  The new type ID.

## ◆ set_end_index()

void Pango::Attribute::set_end_index | ( | const unsigned int & | value | ) |

Sets the end index of the range.

The character at this index is not included in the range.

Parameters

  value | The new end index (in bytes).

## ◆ set_start_index()

void Pango::Attribute::set_start_index | ( | const unsigned int & | value | ) |

Sets the start index of the range.

Parameters

  value | The new start index (in bytes).

## Friends And Related Function Documentation

## ◆ operator!=()

bool operator!= | ( | const Attribute& | lhs,
|  | const Attribute& | rhs
| ) |  |
| related

## ◆ operator==()

bool operator== | ( | const Attribute& | lhs,
|  | const Attribute& | rhs
| ) |  |
| related

## ◆ wrap()

Pango::Attribute wrap | ( | PangoAttribute * | object,
|  | bool | take_copy = `false`
| ) |  |
| related

## Member Data Documentation

## ◆ gobject_

PangoAttribute* Pango::Attribute::gobject_
| protected