gtkmm 3.24.7
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Functions | List of all members
Gtk::TextTagTable Class Reference

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

#include <gtkmm/texttagtable.h>

Inherits Glib::Object.

Public Types

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

Public Member Functions

 TextTagTable (TextTagTable && src) noexcept
 
TextTagTableoperator= (TextTagTable && src) noexcept
 
 ~TextTagTable () noexcept override
 
GtkTextTagTable * gobj ()
 Provides access to the underlying C GObject. More...
 
const GtkTextTagTable * gobj () const
 Provides access to the underlying C GObject. More...
 
GtkTextTagTable * gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
 
void add (const Glib::RefPtr< TextTag > & tag)
 Add a tag to the table. More...
 
void remove (const Glib::RefPtr< TextTag > & tag)
 Remove a tag from the table. More...
 
Glib::RefPtr< TextTaglookup (const Glib::ustring & name)
 Look up a named tag. More...
 
Glib::RefPtr< const TextTaglookup (const Glib::ustring & name) const
 Look up a named tag. More...
 
void foreach (const SlotForEach & slot)
 
int get_size () const
 Returns the size of the table (number of tags) More...
 
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. More...
 
static Glib::RefPtr< TextTagTablecreate ()
 

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(). More...
 
virtual void on_tag_added (const Glib::RefPtr< TextTag > & tag)
 This is a default handler for the signal signal_tag_added(). More...
 
virtual void on_tag_removed (const Glib::RefPtr< TextTag > & tag)
 This is a default handler for the signal signal_tag_removed(). More...
 

Related Functions

(Note that these are not member functions.)

Glib::RefPtr< Gtk::TextTagTablewrap (GtkTextTagTable * object, bool take_copy=false)
 A Glib::wrap() method for this object. More...
 

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 ( )
overridenoexcept

◆ 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
tagA 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
nameName 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
nameName 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)
protectedvirtual

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 
)
protectedvirtual

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)
protectedvirtual

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
tagA 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
tagThe 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
tagThe changed tag.
size_changedWhether 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
tagThe removed tag.

Friends And Related Function Documentation

◆ wrap()

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

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

Parameters
objectThe C instance.
take_copyFalse 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.