SliceListModelProtocol
public protocol SliceListModelProtocol : ListModelProtocol, ObjectProtocol
GtkSliceListModel
is a list model that presents a slice of another model.
This is useful when implementing paging by setting the size to the number of elements per page and updating the offset whenever a different page is opened.
The SliceListModelProtocol
protocol exposes the methods and properties of an underlying GtkSliceListModel
instance.
The default implementation of these can be found in the protocol extension below.
For a concrete class that implements these methods and properties, see SliceListModel
.
Alternatively, use SliceListModelRef
as a lighweight, unowned
reference if you already have an instance you just want to use.
-
Untyped pointer to the underlying
GtkSliceListModel
instance.Declaration
Swift
var ptr: UnsafeMutableRawPointer! { get }
-
slice_list_model_ptr
Default implementationTyped pointer to the underlying
GtkSliceListModel
instance.Default Implementation
Return the stored, untyped pointer as a typed pointer to the
GtkSliceListModel
instance.Declaration
Swift
var slice_list_model_ptr: UnsafeMutablePointer<GtkSliceListModel>! { get }
-
Required Initialiser for types conforming to
SliceListModelProtocol
Declaration
Swift
init(raw: UnsafeMutableRawPointer)
-
bind(property:
Extension methodto: _: flags: transformFrom: transformTo: ) Bind a
SliceListModelPropertyName
source property to a given target object.Declaration
Swift
@discardableResult @inlinable func bind<Q, T>(property source_property: SliceListModelPropertyName, to target: T, _ target_property: Q, flags f: BindingFlags = .default, transformFrom transform_from: @escaping GLibObject.ValueTransformer = { $0.transform(destValue: $1) }, transformTo transform_to: @escaping GLibObject.ValueTransformer = { $0.transform(destValue: $1) }) -> BindingRef! where Q : PropertyNameProtocol, T : ObjectProtocol
Parameters
source_property
the source property to bind
target
the target object to bind to
target_property
the target property to bind to
flags
the flags to pass to the
Binding
transform_from
ValueTransformer
to use for forward transformationtransform_to
ValueTransformer
to use for backwards transformationReturn Value
binding reference or
nil
in case of an error -
get(property:
Extension method) Get the value of a SliceListModel property
Declaration
Swift
@inlinable func get(property: SliceListModelPropertyName) -> GLibObject.Value
Parameters
property
the property to get the value for
Return Value
the value of the named property
-
set(property:
Extension methodvalue: ) Set the value of a SliceListModel property. Note that this will only have an effect on properties that are writable and not construct-only!
Declaration
Swift
@inlinable func set(property: SliceListModelPropertyName, value v: GLibObject.Value)
Parameters
property
the property to get the value for
Return Value
the value of the named property
-
getModel()
Extension methodGets the model that is currently being used or
nil
if none.Declaration
Swift
@inlinable func getModel() -> GIO.ListModelRef!
-
getOffset()
Extension methodGets the offset set via
gtk_slice_list_model_set_offset()
.Declaration
Swift
@inlinable func getOffset() -> Int
-
getSize()
Extension methodGets the size set via
gtk_slice_list_model_set_size()
.Declaration
Swift
@inlinable func getSize() -> Int
-
set(model:
Extension method) Sets the model to show a slice of.
The model’s item type must conform to
self
‘s item type.Declaration
Swift
@inlinable func set(model: GIO.ListModelRef? = nil)
-
set(model:
Extension method) Sets the model to show a slice of.
The model’s item type must conform to
self
‘s item type.Declaration
Swift
@inlinable func set<ListModelT>(model: ListModelT?) where ListModelT : ListModelProtocol
-
set(offset:
Extension method) Sets the offset into the original model for this slice.
If the offset is too large for the sliced model,
self
will end up empty.Declaration
Swift
@inlinable func set(offset: Int)
-
set(size:
Extension method) Sets the maximum size.
self
will never have more items thansize
.It can however have fewer items if the offset is too large or the model sliced from doesn’t have enough items.
Declaration
Swift
@inlinable func set(size: Int)
-
model
Extension methodChild model to take slice from.
Declaration
Swift
@inlinable var model: GIO.ListModelRef! { get nonmutating set }
-
offset
Extension methodOffset of slice.
Declaration
Swift
@inlinable var offset: Int { get nonmutating set }
-
size
Extension methodMaximum size of slice.
Declaration
Swift
@inlinable var size: Int { get nonmutating set }