Gtk.BuilderListItemFactory¶
class — extends ListItemFactory
Creates widgets by instantiating GtkBuilder UI templates.
The templates must extend the class that the parent widget expects.
For example, a factory provided to ListView.factory must have
a template that extends ListItem.
Templates typically use Expression to obtain data from the items
in the model.
Example:
<interface>
<template class="GtkListItem">
<property name="child">
<object class="GtkLabel">
<property name="xalign">0</property>
<binding name="label">
<lookup name="name" type="SettingsKey">
<lookup name="item">GtkListItem</lookup>
</lookup>
</binding>
</object>
</property>
</template>
</interface>
A common approach is to embed such templates as CDATA marked sections into a surrounding UI file. Note that if you use this approach, extracting translatable strings with xgettext will not work for strings inside the marked section.
Constructors¶
new_from_bytes¶
Creates a new GtkBuilderListItemFactory that instantiates widgets
using bytes as the data to pass to GtkBuilder.
Parameters:
scope— A scope to use when instantiatingbytes— theGBytescontaining the UI definition to instantiate
new_from_resource¶
@classmethod
def new_from_resource(cls, scope: BuilderScope | None, resource_path: str) -> ListItemFactory
Creates a new GtkBuilderListItemFactory that instantiates widgets
using data read from the given resource_path to pass to GtkBuilder.
Parameters:
scope— A scope to use when instantiatingresource_path— valid path to a resource that contains the UI definition
Methods¶
get_bytes¶
Gets the data used as the GtkBuilder UI template for constructing
listitems.
get_resource¶
If the data references a resource, gets the path of that resource.
get_scope¶
Gets the scope used when constructing listitems.
Properties¶
bytes¶
GBytes containing the UI definition.
resource¶
Path of the resource containing the UI definition.
scope¶
GtkBuilderScope to use when instantiating listitems