Package org.gnome.gtk
Class SliceListModel<T extends GObject>
java.lang.Object
io.github.jwharm.javagi.base.ProxyInstance
org.gnome.gobject.TypeInstance
org.gnome.gobject.GObject
org.gnome.gtk.SliceListModel<T>
- All Implemented Interfaces:
Proxy
,ListModelJavaList<T>
,Iterable<T>
,Collection<T>
,List<T>
,SequencedCollection<T>
,ListModel<T>
,SectionModel<T>
@Generated("io.github.jwharm.JavaGI")
public class SliceListModel<T extends GObject>
extends GObject
implements ListModel<T>, SectionModel<T>
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.
GtkSliceListModel
passes through sections from the underlying model.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
SliceListModel.Builder<B extends SliceListModel.Builder<B>>
Inner class implementing a builder pattern to construct a GObject with properties.static class
SliceListModel.SliceListModelClass<T extends GObject>
Nested classes/interfaces inherited from class org.gnome.gobject.GObject
GObject.NotifyCallback, GObject.ObjectClass
Nested classes/interfaces inherited from interface org.gnome.gio.ListModel
ListModel.ItemsChangedCallback, ListModel.ListModelImpl, ListModel.ListModelInterface
Nested classes/interfaces inherited from interface io.github.jwharm.javagi.gio.ListModelJavaList
ListModelJavaList.SubList<E extends GObject,
List extends ListModelJavaList<E>> Nested classes/interfaces inherited from interface org.gnome.gtk.SectionModel
SectionModel.SectionModelImpl, SectionModel.SectionModelInterface, SectionModel.SectionsChangedCallback
-
Constructor Summary
ConstructorDescriptionSliceListModel
(MemorySegment address) Create a SliceListModel proxy instance for the provided memory address.SliceListModel
(@Nullable ListModel model, int offset, int size) Creates a new slice model. -
Method Summary
Modifier and TypeMethodDescriptionprotected SliceListModel
asParent()
Returns this instance as if it were its parent type.static SliceListModel.Builder
<? extends SliceListModel.Builder> builder()
ASliceListModel.Builder
object constructs aSliceListModel
with the specified properties.getModel()
Gets the model that is currently being used ornull
if none.int
Gets the offset set via gtk_slice_list_model_set_offset().int
getSize()
Gets the size set via gtk_slice_list_model_set_size().static Type
getType()
Get the GType of the SliceListModel classvoid
Sets the model to show a slice of.void
setOffset
(int offset) Sets the offset into the original model for this slice.void
setSize
(int size) Sets the maximum size.Methods inherited from class org.gnome.gobject.GObject
addToggleRef, addWeakPointer, bindProperty, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, connect, constructed, disconnect, dispatchPropertiesChanged, dispose, dupData, dupQdata, emit, emitNotify, finalize_, forceFloating, freezeNotify, get, getData, getMemoryLayout, getProperty, getProperty, getProperty, getQdata, getv, interfaceFindProperty, interfaceInstallProperty, interfaceListProperties, isFloating, newInstance, newInstance, newInstance, newInstance, newv, notify_, notify_, notifyByPspec, onNotify, ref, refSink, removeToggleRef, removeWeakPointer, replaceData, replaceQdata, runDispose, set, setData, setDataFull, setProperty, setProperty, setProperty, setQdata, setQdataFull, setv, stealData, stealQdata, takeRef, thawNotify, unref, watchClosure, weakRef, weakUnref, withProperties
Methods inherited from class org.gnome.gobject.TypeInstance
callParent, callParent, getPrivate, readGClass, writeGClass
Methods inherited from class io.github.jwharm.javagi.base.ProxyInstance
equals, handle, hashCode
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArray
Methods inherited from interface java.util.List
addFirst, addLast, equals, getFirst, getLast, hashCode, removeFirst, removeLast, replaceAll, reversed, sort, spliterator
Methods inherited from interface org.gnome.gio.ListModel
emitItemsChanged, getItem, getItemType, getNItems, itemsChanged, onItemsChanged
Methods inherited from interface io.github.jwharm.javagi.gio.ListModelJavaList
add, add, addAll, addAll, clear, contains, containsAll, get, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, retainAll, set, size, subList, toArray, toArray
Methods inherited from interface org.gnome.gtk.SectionModel
emitSectionsChanged, getSection, onSectionsChanged, sectionsChanged
-
Constructor Details
-
SliceListModel
Create a SliceListModel proxy instance for the provided memory address.- Parameters:
address
- the memory address of the native object
-
SliceListModel
Creates a new slice model.It presents the slice from
offset
to offset +size
of the givenmodel
.- Parameters:
model
- The model to useoffset
- the offset of the slicesize
- maximum size of the slice
-
-
Method Details
-
getType
-
asParent
Returns this instance as if it were its parent type. This is mostly synonymous to the Javasuper
keyword, but will set the native typeclass function pointers to the parent type. When overriding a native virtual method in Java, "chaining up" withsuper.methodName()
doesn't work, because it invokes the overridden function pointer again. To chain up, callasParent().methodName()
. This will call the native function pointer of this virtual method in the typeclass of the parent type. -
getModel
Gets the model that is currently being used ornull
if none.- Returns:
- The model in use
-
getOffset
public int getOffset()Gets the offset set via gtk_slice_list_model_set_offset().- Returns:
- The offset
-
getSize
public int getSize()Gets the size set via gtk_slice_list_model_set_size().- Returns:
- The size
-
setModel
Sets the model to show a slice of.The model's item type must conform to this SliceListModel's item type.
- Parameters:
model
- The model to be sliced
-
setOffset
public void setOffset(int offset) Sets the offset into the original model for this slice.If the offset is too large for the sliced model, this SliceListModel will end up empty.
- Parameters:
offset
- the new offset to use
-
setSize
public void setSize(int size) Sets the maximum size. this SliceListModel 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.
- Parameters:
size
- the maximum size
-
builder
ASliceListModel.Builder
object constructs aSliceListModel
with the specified properties. Use the variousset...()
methods to set properties, and finish construction withSliceListModel.Builder.build()
.
-