summaryrefslogtreecommitdiff
path: root/api/pl.treksoft.kvision.data/-data-container
diff options
context:
space:
mode:
authorRobert Jaros <rjaros@finn.pl>2019-01-29 23:41:38 +0100
committerRobert Jaros <rjaros@finn.pl>2019-01-29 23:41:38 +0100
commitf23e74c2eb0cae2f6ce674881e86ab5d5659ad77 (patch)
treef10995bb0d1179c65829b5e175e7b1de8dbe834e /api/pl.treksoft.kvision.data/-data-container
parenta81c549e277d1a07e87cf8e2eecf89662deda323 (diff)
downloadkvision-f23e74c2eb0cae2f6ce674881e86ab5d5659ad77.tar.gz
kvision-f23e74c2eb0cae2f6ce674881e86ab5d5659ad77.tar.bz2
kvision-f23e74c2eb0cae2f6ce674881e86ab5d5659ad77.zip
API documentation for KVision 0.0.23
Diffstat (limited to 'api/pl.treksoft.kvision.data/-data-container')
-rw-r--r--api/pl.treksoft.kvision.data/-data-container/-init-.html18
-rw-r--r--api/pl.treksoft.kvision.data/-data-container/clear-on-update.html2
-rw-r--r--api/pl.treksoft.kvision.data/-data-container/data-container.html8
-rw-r--r--api/pl.treksoft.kvision.data/-data-container/index.html12
-rw-r--r--api/pl.treksoft.kvision.data/-data-container/on-update.html2
5 files changed, 27 insertions, 15 deletions
diff --git a/api/pl.treksoft.kvision.data/-data-container/-init-.html b/api/pl.treksoft.kvision.data/-data-container/-init-.html
index 5fc34642..7bf3994d 100644
--- a/api/pl.treksoft.kvision.data/-data-container/-init-.html
+++ b/api/pl.treksoft.kvision.data/-data-container/-init-.html
@@ -8,24 +8,30 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.data</a>&nbsp;/&nbsp;<a href="index.html">DataContainer</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.data.DataContainer$&lt;init&gt;(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))"></a>
-<code><span class="identifier">DataContainer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))/model">model</span><span class="symbol">:</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))/factory">factory</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))/filter">filter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))/mapping">mapping</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))/container">container</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a>&nbsp;<span class="symbol">=</span>&nbsp;VPanel()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span></code>
+<a name="pl.treksoft.kvision.data.DataContainer$&lt;init&gt;(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))"></a>
+<code><span class="identifier">DataContainer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/model">model</span><span class="symbol">:</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/factory">factory</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/container">container</span><span class="symbol">:</span>&nbsp;<a href="index.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/containerAdd">containerAdd</span><span class="symbol">:</span>&nbsp;<a href="index.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/filter">filter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/sorter">sorter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-comparable/index.html"><span class="identifier">Comparable</span></a><span class="symbol">&lt;</span><span class="identifier">*</span><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/sorterType">sorterType</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="../-sorter-type/index.html"><span class="identifier">SorterType</span></a>&nbsp;<span class="symbol">=</span>&nbsp;{ SorterType.ASC }<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span></code>
<p>Creates DataContainer bound to given data model.</p>
<h3>Parameters</h3>
<p><a name="M"></a>
<code>M</code> - data model type</p>
<p><a name="C"></a>
<code>C</code> - visual component type</p>
+<p><a name="CONT"></a>
+<code>CONT</code> - container type</p>
<p><a name="model"></a>
<code>model</code> - data model of type <em>ObservableList</em></p>
<p><a name="factory"></a>
<code>factory</code> - a function which creates component C from data model at given index</p>
+<p><a name="container"></a>
+<code>container</code> - internal container</p>
+<p><a name="containerAdd"></a>
+<code>containerAdd</code> - function to add component C to the internal container CONT</p>
<p><a name="filter"></a>
<code>filter</code> - a filtering function</p>
-<p><a name="mapping"></a>
-<code>mapping</code> - a mapping function</p>
-<p><a name="container"></a>
-<code>container</code> - internal container (defaults to <a href="../../pl.treksoft.kvision.panel/-v-panel/index.html">VPanel</a>)</p>
+<p><a name="sorter"></a>
+<code>sorter</code> - a sorting function</p>
+<p><a name="sorterType"></a>
+<code>sorterType</code> - a sorting type selection function</p>
<p><a name="init"></a>
<code>init</code> - an initializer extension function</p>
<p><strong>Constructor</strong><br/>
diff --git a/api/pl.treksoft.kvision.data/-data-container/clear-on-update.html b/api/pl.treksoft.kvision.data/-data-container/clear-on-update.html
index 4d57fe8e..f427030a 100644
--- a/api/pl.treksoft.kvision.data/-data-container/clear-on-update.html
+++ b/api/pl.treksoft.kvision.data/-data-container/clear-on-update.html
@@ -9,7 +9,7 @@
<br/>
<h1>clearOnUpdate</h1>
<a name="pl.treksoft.kvision.data.DataContainer$clearOnUpdate()"></a>
-<code><span class="keyword">fun </span><span class="identifier">clearOnUpdate</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">&gt;</span></code>
+<code><span class="keyword">fun </span><span class="identifier">clearOnUpdate</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">&gt;</span></code>
<p>Clears notification handler.</p>
<p><strong>Return</strong><br/>
current container</p>
diff --git a/api/pl.treksoft.kvision.data/-data-container/data-container.html b/api/pl.treksoft.kvision.data/-data-container/data-container.html
index 920b49cf..6c6029ef 100644
--- a/api/pl.treksoft.kvision.data/-data-container/data-container.html
+++ b/api/pl.treksoft.kvision.data/-data-container/data-container.html
@@ -8,9 +8,13 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.data</a>&nbsp;/&nbsp;<a href="index.html">DataContainer</a>&nbsp;/&nbsp;<a href="./data-container.html">dataContainer</a><br/>
<br/>
<h1>dataContainer</h1>
-<a name="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))"></a>
-<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">M</span><span class="symbol">, </span><span class="identifier">C</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-component/index.html"><span class="identifier">Component</span></a><span class="symbol">&gt;</span> <a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">dataContainer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))/model">model</span><span class="symbol">:</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))/factory">factory</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))/filter">filter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))/mapping">mapping</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))/container">container</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a>&nbsp;<span class="symbol">=</span>&nbsp;VPanel()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">&gt;</span></code>
+<a name="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))"></a>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">M</span><span class="symbol">, </span><span class="identifier">C</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-component/index.html"><span class="identifier">Component</span></a><span class="symbol">, </span><span class="identifier">CONT</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">&gt;</span> <a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">dataContainer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/model">model</span><span class="symbol">:</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/factory">factory</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/container">container</span><span class="symbol">:</span>&nbsp;<a href="data-container.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/containerAdd">containerAdd</span><span class="symbol">:</span>&nbsp;<a href="data-container.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/filter">filter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/sorter">sorter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-comparable/index.html"><span class="identifier">Comparable</span></a><span class="symbol">&lt;</span><span class="identifier">*</span><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/sorterType">sorterType</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="../-sorter-type/index.html"><span class="identifier">SorterType</span></a>&nbsp;<span class="symbol">=</span>&nbsp;{ SorterType.ASC }<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">&gt;</span></code>
<p>DSL builder extension function.</p>
<p>It takes the same parameters as the constructor of the built component.</p>
+<a name="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))"></a>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">M</span><span class="symbol">, </span><span class="identifier">C</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-component/index.html"><span class="identifier">Component</span></a><span class="symbol">&gt;</span> <a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">dataContainer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/model">model</span><span class="symbol">:</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/factory">factory</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/containerAdd">containerAdd</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.panel/-v-panel/index.html"><span class="identifier">VPanel</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/filter">filter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/sorter">sorter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-comparable/index.html"><span class="identifier">Comparable</span></a><span class="symbol">&lt;</span><span class="identifier">*</span><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/sorterType">sorterType</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="../-sorter-type/index.html"><span class="identifier">SorterType</span></a>&nbsp;<span class="symbol">=</span>&nbsp;{ SorterType.ASC }<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="../../pl.treksoft.kvision.panel/-v-panel/index.html"><span class="identifier">VPanel</span></a><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="../../pl.treksoft.kvision.panel/-v-panel/index.html"><span class="identifier">VPanel</span></a><span class="symbol">&gt;</span></code>
+<p>DSL builder extension function with VPanel default.</p>
+<p>It takes the same parameters as the constructor of the built component.</p>
</BODY>
</HTML>
diff --git a/api/pl.treksoft.kvision.data/-data-container/index.html b/api/pl.treksoft.kvision.data/-data-container/index.html
index c5db6a9b..d04561fb 100644
--- a/api/pl.treksoft.kvision.data/-data-container/index.html
+++ b/api/pl.treksoft.kvision.data/-data-container/index.html
@@ -8,7 +8,7 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.data</a>&nbsp;/&nbsp;<a href="./index.html">DataContainer</a><br/>
<br/>
<h1>DataContainer</h1>
-<code><span class="keyword">class </span><span class="identifier">DataContainer</span><span class="symbol">&lt;</span><span class="identifier">M</span><span class="symbol">, </span><span class="identifier">C</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-component/index.html"><span class="identifier">Component</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-widget/index.html"><span class="identifier">Widget</span></a><span class="symbol">, </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">, </span><a href="../-data-updatable/index.html"><span class="identifier">DataUpdatable</span></a></code>
+<code><span class="keyword">class </span><span class="identifier">DataContainer</span><span class="symbol">&lt;</span><span class="identifier">M</span><span class="symbol">, </span><span class="identifier">C</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-component/index.html"><span class="identifier">Component</span></a><span class="symbol">, </span><span class="identifier">CONT</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-widget/index.html"><span class="identifier">Widget</span></a><span class="symbol">, </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">, </span><a href="../-data-updatable/index.html"><span class="identifier">DataUpdatable</span></a></code>
<p>A container class with support for observable data model.</p>
<h3>Constructors</h3>
<table>
@@ -18,7 +18,7 @@
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">DataContainer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))/model">model</span><span class="symbol">:</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))/factory">factory</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))/filter">filter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))/mapping">mapping</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))/container">container</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a>&nbsp;<span class="symbol">=</span>&nbsp;VPanel()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C)), kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span></code>
+<code><span class="identifier">DataContainer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/model">model</span><span class="symbol">:</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/factory">factory</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/container">container</span><span class="symbol">:</span>&nbsp;<a href="index.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/containerAdd">containerAdd</span><span class="symbol">:</span>&nbsp;<a href="index.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/filter">filter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/sorter">sorter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-comparable/index.html"><span class="identifier">Comparable</span></a><span class="symbol">&lt;</span><span class="identifier">*</span><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/sorterType">sorterType</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="../-sorter-type/index.html"><span class="identifier">SorterType</span></a>&nbsp;<span class="symbol">=</span>&nbsp;{ SorterType.ASC }<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$<init>(com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.C)), pl.treksoft.kvision.data.DataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.CONT, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.M, pl.treksoft.kvision.data.DataContainer.C, pl.treksoft.kvision.data.DataContainer.CONT)), kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span></code>
<p>Creates DataContainer bound to given data model.</p>
</td>
</tr>
@@ -135,7 +135,7 @@
<p><a href="clear-on-update.html">clearOnUpdate</a></p>
</td>
<td>
-<code><span class="keyword">fun </span><span class="identifier">clearOnUpdate</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="./index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">&gt;</span></code>
+<code><span class="keyword">fun </span><span class="identifier">clearOnUpdate</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="./index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">&gt;</span></code>
<p>Clears notification handler.</p>
</td>
</tr>
@@ -153,7 +153,7 @@
<p><a href="on-update.html">onUpdate</a></p>
</td>
<td>
-<code><span class="keyword">fun </span><span class="identifier">onUpdate</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$onUpdate(kotlin.Function0((kotlin.Unit)))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="./index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">&gt;</span></code>
+<code><span class="keyword">fun </span><span class="identifier">onUpdate</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$onUpdate(kotlin.Function0((kotlin.Unit)))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="./index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">&gt;</span></code>
<p>Sets a notification handler called after every update.</p>
</td>
</tr>
@@ -461,8 +461,10 @@
<p><a href="data-container.html">dataContainer</a></p>
</td>
<td>
-<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">M</span><span class="symbol">, </span><span class="identifier">C</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-component/index.html"><span class="identifier">Component</span></a><span class="symbol">&gt;</span> <a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">dataContainer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))/model">model</span><span class="symbol">:</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))/factory">factory</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))/filter">filter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))/mapping">mapping</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))/container">container</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a>&nbsp;<span class="symbol">=</span>&nbsp;VPanel()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function2((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((kotlin.collections.List((kotlin.Pair((kotlin.Int, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)))), )), pl.treksoft.kvision.core.Container, kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="./index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">&gt;</span></code>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">M</span><span class="symbol">, </span><span class="identifier">C</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-component/index.html"><span class="identifier">Component</span></a><span class="symbol">, </span><span class="identifier">CONT</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">&gt;</span> <a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">dataContainer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/model">model</span><span class="symbol">:</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/factory">factory</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/container">container</span><span class="symbol">:</span>&nbsp;<a href="data-container.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/containerAdd">containerAdd</span><span class="symbol">:</span>&nbsp;<a href="data-container.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/filter">filter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/sorter">sorter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-comparable/index.html"><span class="identifier">Comparable</span></a><span class="symbol">&lt;</span><span class="identifier">*</span><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/sorterType">sorterType</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="../-sorter-type/index.html"><span class="identifier">SorterType</span></a>&nbsp;<span class="symbol">=</span>&nbsp;{ SorterType.ASC }<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.CONT)), kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="./index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">&gt;</span></code>
<p>DSL builder extension function.</p>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">M</span><span class="symbol">, </span><span class="identifier">C</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-component/index.html"><span class="identifier">Component</span></a><span class="symbol">&gt;</span> <a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">dataContainer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/model">model</span><span class="symbol">:</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/factory">factory</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">ObservableList</span><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/containerAdd">containerAdd</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.panel/-v-panel/index.html"><span class="identifier">VPanel</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/filter">filter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/sorter">sorter</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-comparable/index.html"><span class="identifier">Comparable</span></a><span class="symbol">&lt;</span><span class="identifier">*</span><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/sorterType">sorterType</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="../-sorter-type/index.html"><span class="identifier">SorterType</span></a>&nbsp;<span class="symbol">=</span>&nbsp;{ SorterType.ASC }<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer.Companion$dataContainer(pl.treksoft.kvision.core.Container, com.lightningkite.kotlin.observable.list.ObservableList((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M)), kotlin.Function3((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Int, com.lightningkite.kotlin.observable.list.ObservableList(()), pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C)), kotlin.Function3((pl.treksoft.kvision.panel.VPanel, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Unit)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Boolean)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, kotlin.Comparable((kotlin.Any)))), kotlin.Function0((pl.treksoft.kvision.data.SorterType)), kotlin.Function1((pl.treksoft.kvision.data.DataContainer((pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.M, pl.treksoft.kvision.data.DataContainer.Companion.dataContainer.C, pl.treksoft.kvision.panel.VPanel)), kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="../../pl.treksoft.kvision.panel/-v-panel/index.html"><span class="identifier">VPanel</span></a><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="./index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="data-container.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="data-container.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="../../pl.treksoft.kvision.panel/-v-panel/index.html"><span class="identifier">VPanel</span></a><span class="symbol">&gt;</span></code>
+<p>DSL builder extension function with VPanel default.</p>
</td>
</tr>
</tbody>
diff --git a/api/pl.treksoft.kvision.data/-data-container/on-update.html b/api/pl.treksoft.kvision.data/-data-container/on-update.html
index 97e7df54..a625809a 100644
--- a/api/pl.treksoft.kvision.data/-data-container/on-update.html
+++ b/api/pl.treksoft.kvision.data/-data-container/on-update.html
@@ -9,7 +9,7 @@
<br/>
<h1>onUpdate</h1>
<a name="pl.treksoft.kvision.data.DataContainer$onUpdate(kotlin.Function0((kotlin.Unit)))"></a>
-<code><span class="keyword">fun </span><span class="identifier">onUpdate</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$onUpdate(kotlin.Function0((kotlin.Unit)))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">&gt;</span></code>
+<code><span class="keyword">fun </span><span class="identifier">onUpdate</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.data.DataContainer$onUpdate(kotlin.Function0((kotlin.Unit)))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="index.html"><span class="identifier">DataContainer</span></a><span class="symbol">&lt;</span><a href="index.html#M"><span class="identifier">M</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#C"><span class="identifier">C</span></a><span class="symbol">,</span>&nbsp;<a href="index.html#CONT"><span class="identifier">CONT</span></a><span class="symbol">&gt;</span></code>
<p>Sets a notification handler called after every update.</p>
<h3>Parameters</h3>
<p><a name="handler"></a>