Gtk::TextTagTable Class Reference
TextView Classes

Typedefed as Gtk::TextBuffer::TagTable. More...

`#include <gtkmm/texttagtable.h>`

Inheritance diagram for Gtk::TextTagTable:
[legend]

## Public Types

typedef sigc::slot< void, const Glib::RefPtr< TextTag > & > | SlotForEach

## Public Member Functions

| TextTagTable (TextTagTable &&src) noexcept
TextTagTable & | operator= (TextTagTable &&src) noexcept
| ~TextTagTable () noexcept override
GtkTextTagTable * | gobj ()
| Provides access to the underlying C GObject.
const GtkTextTagTable * | gobj () const
| Provides access to the underlying C GObject.
GtkTextTagTable * | gobj_copy ()
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
void | add (const Glib::RefPtr< TextTag > &tag)
| Add a tag to the table.
void | remove (const Glib::RefPtr< TextTag > &tag)
| Remove a tag from the table.
Glib::RefPtr< TextTag > | lookup (const Glib::ustring & name)
| Look up a named tag.
Glib::RefPtr< const TextTag > | lookup (const Glib::ustring & name) const
| Look up a named tag.
void | foreach (const SlotForEach &slot)
int | get_size () const
| Returns the size of the table (number of tags)
Glib::SignalProxy< void, const Glib::RefPtr< TextTag > &, bool > | signal_tag_changed ()
Glib::SignalProxy< void, const Glib::RefPtr< TextTag > & > | signal_tag_added ()
Glib::SignalProxy< void, const Glib::RefPtr< TextTag > & > | signal_tag_removed ()

## Static Public Member Functions

static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system.
static Glib::RefPtr< TextTagTable > | create ()

## Protected Member Functions

| TextTagTable ()
virtual void | on_tag_changed (const Glib::RefPtr< TextTag > &tag, bool size_changed)
| This is a default handler for the signal signal_tag_changed().
virtual void | on_tag_added (const Glib::RefPtr< TextTag > &tag)
| This is a default handler for the signal signal_tag_added().
virtual void | on_tag_removed (const Glib::RefPtr< TextTag > &tag)
| This is a default handler for the signal signal_tag_removed().

## Related Symbols

(Note that these are not member symbols.)
Glib::RefPtr< Gtk::TextTagTable > | wrap (GtkTextTagTable *object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

Typedefed as Gtk::TextBuffer::TagTable.

A Collection of Gtk::TextBuffer::Tags that can be used together.

A tag table defines a set of Gtk::TextBuffer::Tags that can be used together. Each buffer has one tag table associated with it; only tags from that tag table can be used with the buffer. A single tag table can be shared between multiple buffers, however.

## Member Typedef Documentation

## SlotForEach

typedef sigc::slot<void, const Glib::RefPtr<TextTag>&> Gtk::TextTagTable::SlotForEach

## Constructor & Destructor Documentation

## TextTagTable() [1/2]

Gtk::TextTagTable::TextTagTable | ( | TextTagTable && | src | ) |

noexcept

## ~TextTagTable()

Gtk::TextTagTable::~TextTagTable | ( |  | ) |

override noexcept

## TextTagTable() [2/2]

Gtk::TextTagTable::TextTagTable | ( |  | ) |

protected

## Member Function Documentation

## add()

void Gtk::TextTagTable::add | ( | const Glib::RefPtr< TextTag > & | tag | ) |

Add a tag to the table.

The tag is assigned the highest priority in the table.

tag must not be in a tag table already, and may not have the same name as an already-added tag.

Parameters

  tag | A Gtk::TextTag.

## create()

static Glib::RefPtr< TextTagTable > Gtk::TextTagTable::create | ( |  | ) |

static

## foreach()

void Gtk::TextTagTable::foreach | ( | const SlotForEach & | slot | ) |

## get_size()

int Gtk::TextTagTable::get_size | ( |  | ) | const

Returns the size of the table (number of tags)

Returns
  Number of tags in table.

## get_type()

static GType Gtk::TextTagTable::get_type | ( |  | ) |

static

Get the GType for this class, for use with the underlying GObject type system.

## gobj() [1/2]

GtkTextTagTable * Gtk::TextTagTable::gobj | ( |  | ) |

inline

Provides access to the underlying C GObject.

## gobj() [2/2]

const GtkTextTagTable * Gtk::TextTagTable::gobj | ( |  | ) | const

inline

Provides access to the underlying C GObject.

## gobj_copy()

GtkTextTagTable * Gtk::TextTagTable::gobj_copy | ( |  | ) |

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

## lookup() [1/2]

Glib::RefPtr< TextTag > Gtk::TextTagTable::lookup | ( | const Glib::ustring & | name | ) |

Look up a named tag.

Parameters

  name | Name of a tag.

Returns
  The tag, or `nullptr` if none by that name is in the table.

## lookup() [2/2]

Glib::RefPtr< const TextTag > Gtk::TextTagTable::lookup | ( | const Glib::ustring & | name | ) | const

Look up a named tag.

Parameters

  name | Name of a tag.

Returns
  The tag, or `nullptr` if none by that name is in the table.

## on_tag_added()

virtual void Gtk::TextTagTable::on_tag_added | ( | const Glib::RefPtr< TextTag > & | tag | ) |

protected virtual

This is a default handler for the signal signal_tag_added().

## on_tag_changed()

virtual void Gtk::TextTagTable::on_tag_changed | ( | const Glib::RefPtr< TextTag > & | tag,
|  | bool | size_changed
| ) |  |

protected virtual

This is a default handler for the signal signal_tag_changed().

## on_tag_removed()

virtual void Gtk::TextTagTable::on_tag_removed | ( | const Glib::RefPtr< TextTag > & | tag | ) |

protected virtual

This is a default handler for the signal signal_tag_removed().

## operator=()

TextTagTable & Gtk::TextTagTable::operator= | ( | TextTagTable && | src | ) |

noexcept

## remove()

void Gtk::TextTagTable::remove | ( | const Glib::RefPtr< TextTag > & | tag | ) |

Remove a tag from the table.

If a Gtk::TextBuffer has table as its tag table, the tag is removed from the buffer. The table’s reference to the tag is removed, so the tag will end up destroyed if you don’t have a reference to it.

Parameters

  tag | A Gtk::TextTag.

## signal_tag_added()

Glib::SignalProxy< void, const Glib::RefPtr< TextTag > & > Gtk::TextTagTable::signal_tag_added | ( |  | ) |

Slot Prototype:
  `void on_my_tag_added(const Glib::RefPtr<TextTag>& tag)`

Flags: Run Last

Parameters

  tag | The added tag.

## signal_tag_changed()

Glib::SignalProxy< void, const Glib::RefPtr< TextTag > &, bool > Gtk::TextTagTable::signal_tag_changed | ( |  | ) |

Slot Prototype:
  `void on_my_tag_changed(const Glib::RefPtr<TextTag>& tag, bool size_changed)`

Flags: Run Last

Parameters

  tag | The changed tag.
  size_changed | Whether the change affects the Gtk::TextView layout.

## signal_tag_removed()

Glib::SignalProxy< void, const Glib::RefPtr< TextTag > & > Gtk::TextTagTable::signal_tag_removed | ( |  | ) |

Slot Prototype:
  `void on_my_tag_removed(const Glib::RefPtr<TextTag>& tag)`

Flags: Run Last

Parameters

  tag | The removed tag.

## Friends And Related Symbol Documentation

## wrap()

Glib::RefPtr< Gtk::TextTagTable > wrap | ( | GtkTextTagTable * | object,
|  | bool | take_copy = `false`
| ) |  |

related

A Glib::wrap() method for this object.

Parameters

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns
  A C++ instance that wraps this C instance.