pub trait TextTagTableExt: 'static {
    fn add(&self, tag: &impl IsA<TextTag>) -> bool;
    fn foreach<P: FnMut(&TextTag)>(&self, func: P);
    fn size(&self) -> i32;
    fn lookup(&self, name: &str) -> Option<TextTag>;
    fn remove(&self, tag: &impl IsA<TextTag>);
    fn connect_tag_added<F: Fn(&Self, &TextTag) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; fn connect_tag_changed<F: Fn(&Self, &TextTag, bool) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; fn connect_tag_removed<F: Fn(&Self, &TextTag) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; }
Expand description

Trait containing all TextTagTable methods.

Implementors

TextTagTable

Required Methods

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.

tag

a TextTag

Returns

true on success.

Calls func on each tag in self, with user data data. Note that the table may not be modified while iterating over it (you can’t add/remove tags).

func

a function to call on each tag

Returns the size of the table (number of tags)

Returns

number of tags in self

Look up a named tag.

name

name of a tag

Returns

The tag, or None if none by that name is in the table.

Remove a tag from the table. If a TextBuffer has self 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.

tag

a TextTag

tag

the added tag.

tag

the changed tag.

size_changed

whether the change affects the TextView layout.

tag

the removed tag.

Implementors