Package org.gnome.gtk
Class MultiSorter<T extends GObject>
java.lang.Object
io.github.jwharm.javagi.base.ProxyInstance
org.gnome.gobject.TypeInstance
org.gnome.gobject.GObject
org.gnome.gtk.Sorter
org.gnome.gtk.MultiSorter<T>
- All Implemented Interfaces:
Proxy
,ListModelJavaList<T>
,Iterable<T>
,Collection<T>
,List<T>
,SequencedCollection<T>
,ListModel<T>
,Buildable
@Generated("io.github.jwharm.JavaGI")
public class MultiSorter<T extends GObject>
extends Sorter
implements ListModel<T>, Buildable
GtkMultiSorter
combines multiple sorters by trying them
in turn.
If the first sorter compares two items as equal, the second is tried next, and so on.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
MultiSorter.Builder<B extends MultiSorter.Builder<B>>
Inner class implementing a builder pattern to construct a GObject with properties.static class
MultiSorter.MultiSorterClass<T extends GObject>
Nested classes/interfaces inherited from class org.gnome.gtk.Sorter
Sorter.ChangedCallback, Sorter.SorterClass
Nested classes/interfaces inherited from class org.gnome.gobject.GObject
GObject.NotifyCallback, GObject.ObjectClass
Nested classes/interfaces inherited from interface org.gnome.gtk.Buildable
Buildable.BuildableIface, Buildable.BuildableImpl
Nested classes/interfaces inherited from interface org.gnome.gio.ListModel
ListModel.ItemsChangedCallback, ListModel.ListModelImpl, ListModel.ListModelInterface
-
Constructor Summary
ConstructorDescriptionCreates a new multi sorter.MultiSorter
(MemorySegment address) Create a MultiSorter proxy instance for the provided memory address. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Addsorter
to this MultiSorter to use for sorting at the end.protected MultiSorter
asParent()
Returns this instance as if it were its parent type.static MultiSorter.Builder
<? extends MultiSorter.Builder> builder()
AMultiSorter.Builder
object constructs aMultiSorter
with the specified properties.static Type
getType()
Get the GType of the MultiSorter classvoid
removeSorter
(int position) Removes the sorter at the givenposition
from the list of sorter used by this MultiSorter.Methods inherited from class org.gnome.gtk.Sorter
changed, compare, emitChanged, getMemoryLayout, getOrder, onChanged
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, 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 org.gnome.gtk.Buildable
getBuildableId
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
-
Constructor Details
-
MultiSorter
Create a MultiSorter proxy instance for the provided memory address.- Parameters:
address
- the memory address of the native object
-
MultiSorter
public MultiSorter()Creates a new multi sorter.This sorter compares items by trying each of the sorters in turn, until one returns non-zero. In particular, if no sorter has been added to it, it will always compare items as equal.
-
-
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. -
append
Addsorter
to this MultiSorter to use for sorting at the end.this MultiSorter will consult all existing sorters before it will sort with the given
sorter
.- Parameters:
sorter
- a sorter to add
-
removeSorter
public void removeSorter(int position) Removes the sorter at the givenposition
from the list of sorter used by this MultiSorter.If
position
is larger than the number of sorters, nothing happens.- Parameters:
position
- position of sorter to remove
-
builder
AMultiSorter.Builder
object constructs aMultiSorter
with the specified properties. Use the variousset...()
methods to set properties, and finish construction withMultiSorter.Builder.build()
.
-