aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/pl/treksoft/kvision
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/kotlin/pl/treksoft/kvision')
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/Showcase.kt8
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/core/KVManager.kt2
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/core/Root.kt6
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/core/Widget.kt8
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/dropdown/DropDown.kt7
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/html/Image.kt10
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/html/Link.kt8
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/html/List.kt27
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/html/Tag.kt3
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/modal/Alert.kt2
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/modal/Confirm.kt6
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/modal/Modal.kt18
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/panel/SplitPanel.kt7
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/snabbdom/Types.kt1
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/tabs/Tabs.kt6
15 files changed, 58 insertions, 61 deletions
diff --git a/src/main/kotlin/pl/treksoft/kvision/Showcase.kt b/src/main/kotlin/pl/treksoft/kvision/Showcase.kt
index 9ac623a8..283a9236 100644
--- a/src/main/kotlin/pl/treksoft/kvision/Showcase.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/Showcase.kt
@@ -175,9 +175,9 @@ class Showcase : ApplicationBase() {
root.add(button3)
println("init routing")
- routing.on({ -> println("root") })
- .on("/abc", { -> println("abc") })
- .on("/test", { -> println("test") })
+ routing.on({ _ -> println("root") })
+ .on("/abc", { _ -> println("abc") })
+ .on("/test", { _ -> println("test") })
.resolve()
// jQuery(document).off(".data-api")
@@ -204,6 +204,6 @@ class Showcase : ApplicationBase() {
}
override fun dispose(): Map<String, Any> {
- return mapOf<String, Any>()
+ return mapOf()
}
}
diff --git a/src/main/kotlin/pl/treksoft/kvision/core/KVManager.kt b/src/main/kotlin/pl/treksoft/kvision/core/KVManager.kt
index dfcbc87c..e75167e1 100644
--- a/src/main/kotlin/pl/treksoft/kvision/core/KVManager.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/core/KVManager.kt
@@ -8,11 +8,9 @@ import com.github.snabbdom.datasetModule
import com.github.snabbdom.eventListenersModule
import com.github.snabbdom.propsModule
import com.github.snabbdom.styleModule
-import org.w3c.dom.Node
import pl.treksoft.jquery.jQuery
import pl.treksoft.kvision.require
import pl.treksoft.kvision.routing.routing
-import pl.treksoft.kvision.snabbdom.obj
import kotlin.browser.document
import kotlin.dom.clear
diff --git a/src/main/kotlin/pl/treksoft/kvision/core/Root.kt b/src/main/kotlin/pl/treksoft/kvision/core/Root.kt
index 49b3a6f4..21bdca04 100644
--- a/src/main/kotlin/pl/treksoft/kvision/core/Root.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/core/Root.kt
@@ -46,10 +46,10 @@ class Root(id: String, private val fluid: Boolean = true) : Container() {
private val roots: MutableList<Root> = mutableListOf()
internal fun getLastRoot(): Root? {
- if (roots.size > 0)
- return roots[roots.size - 1]
+ return if (roots.size > 0)
+ roots[roots.size - 1]
else
- return null
+ null
}
}
}
diff --git a/src/main/kotlin/pl/treksoft/kvision/core/Widget.kt b/src/main/kotlin/pl/treksoft/kvision/core/Widget.kt
index 4c818063..846dde1b 100644
--- a/src/main/kotlin/pl/treksoft/kvision/core/Widget.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/core/Widget.kt
@@ -113,12 +113,12 @@ open class Widget(classes: Set<String> = setOf()) : KVObject {
}
protected open fun getSnOn(): com.github.snabbdom.On? {
- if (listeners.size > 0) {
+ return if (listeners.size > 0) {
val handlers = on(this)
listeners.forEach { l -> (handlers::apply)(l) }
- return handlers
+ handlers
} else {
- return null
+ null
}
}
@@ -217,7 +217,7 @@ open class Widget(classes: Set<String> = setOf()) : KVObject {
protected open fun createLabelWithIcon(label: String, icon: String? = null,
image: ResString? = null): Array<out Any> {
return if (icon != null) {
- if (icon.startsWith("fa-") == true) {
+ if (icon.startsWith("fa-")) {
arrayOf(KVManager.virtualize("<i class='fa $icon fa-lg'></i>"), " " + label)
} else {
arrayOf(KVManager.virtualize("<span class='glyphicon glyphicon-$icon'></span>"), " " + label)
diff --git a/src/main/kotlin/pl/treksoft/kvision/dropdown/DropDown.kt b/src/main/kotlin/pl/treksoft/kvision/dropdown/DropDown.kt
index 780cc4e3..b145f721 100644
--- a/src/main/kotlin/pl/treksoft/kvision/dropdown/DropDown.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/dropdown/DropDown.kt
@@ -1,7 +1,6 @@
package pl.treksoft.kvision.dropdown
import com.github.snabbdom.VNode
-import org.w3c.dom.CustomEvent
import pl.treksoft.kvision.core.Container
import pl.treksoft.kvision.core.ResString
import pl.treksoft.kvision.core.Widget
@@ -32,7 +31,7 @@ open class DropDown(text: String, elements: List<StringPair>? = null, icon: Stri
set(value) {
button.text = value
}
- var elements = elements
+ private var elements = elements
set(value) {
field = elements
setChildrenFromElements()
@@ -67,7 +66,7 @@ open class DropDown(text: String, elements: List<StringPair>? = null, icon: Stri
set(value) {
button.image = value
}
- var dropup = dropup
+ private var dropup = dropup
set(value) {
field = value
refresh()
@@ -197,7 +196,7 @@ open class DropDownListTag(private val ariaId: String, classes: Set<String> = se
}
@Suppress("UnsafeCastFromDynamic")
- internal fun showInternal() {
+ private fun showInternal() {
if (getElementJQueryD()?.`is`(":hidden")) {
getElementJQueryD()?.dropdown("toggle")
}
diff --git a/src/main/kotlin/pl/treksoft/kvision/html/Image.kt b/src/main/kotlin/pl/treksoft/kvision/html/Image.kt
index a03d673a..c9566531 100644
--- a/src/main/kotlin/pl/treksoft/kvision/html/Image.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/html/Image.kt
@@ -14,27 +14,27 @@ enum class IMAGESHAPE(val className: String) {
open class Image(src: ResString, alt: String? = null, responsive: Boolean = false, shape: IMAGESHAPE? = null,
centered: Boolean = false, classes: Set<String> = setOf()) : Widget(classes) {
- var src = src
+ private var src = src
set(value) {
field = value
refresh()
}
- var alt = alt
+ private var alt = alt
set(value) {
field = value
refresh()
}
- var responsive = responsive
+ private var responsive = responsive
set(value) {
field = value
refresh()
}
- var shape = shape
+ private var shape = shape
set(value) {
field = value
refresh()
}
- var centered = centered
+ private var centered = centered
set(value) {
field = value
refresh()
diff --git a/src/main/kotlin/pl/treksoft/kvision/html/Link.kt b/src/main/kotlin/pl/treksoft/kvision/html/Link.kt
index 4f333482..dc93d0e7 100644
--- a/src/main/kotlin/pl/treksoft/kvision/html/Link.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/html/Link.kt
@@ -7,22 +7,22 @@ import pl.treksoft.kvision.snabbdom.StringPair
open class Link(label: String, url: String, icon: String? = null, image: ResString? = null,
classes: Set<String> = setOf()) : Container(classes) {
- var label = label
+ private var label = label
set(value) {
field = value
refresh()
}
- var url = url
+ private var url = url
set(value) {
field = value
refresh()
}
- var icon = icon
+ private var icon = icon
set(value) {
field = value
refresh()
}
- var image = image
+ private var image = image
set(value) {
field = value
refresh()
diff --git a/src/main/kotlin/pl/treksoft/kvision/html/List.kt b/src/main/kotlin/pl/treksoft/kvision/html/List.kt
index 24978f8d..c6298ddf 100644
--- a/src/main/kotlin/pl/treksoft/kvision/html/List.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/html/List.kt
@@ -22,12 +22,12 @@ open class ListTag(type: LIST, elements: List<String>? = null, rich: Boolean = f
field = value
refresh()
}
- var elements = elements
+ private var elements = elements
set(value) {
field = value
refresh()
}
- var rich = rich
+ private var rich = rich
set(value) {
field = value
refresh()
@@ -40,10 +40,10 @@ open class ListTag(type: LIST, elements: List<String>? = null, rich: Boolean = f
element(if (index % 2 == 0) "dt" else "dd", el, rich)
}
}?.toTypedArray()
- if (childrenElements != null) {
- return kvh(type.tagName, childrenElements + childrenVNodes())
+ return if (childrenElements != null) {
+ kvh(type.tagName, childrenElements + childrenVNodes())
} else {
- return kvh(type.tagName, childrenVNodes())
+ kvh(type.tagName, childrenVNodes())
}
}
@@ -69,21 +69,20 @@ open class ListTag(type: LIST, elements: List<String>? = null, rich: Boolean = f
}
private fun element(name: String, value: String, rich: Boolean): VNode {
- if (rich) {
- return h(name, arrayOf(KVManager.virtualize("<span>$value</span>")))
+ return if (rich) {
+ h(name, arrayOf(KVManager.virtualize("<span>$value</span>")))
} else {
- return h(name, value)
+ h(name, value)
}
}
override fun getSnClass(): List<StringBoolPair> {
val cl = super.getSnClass().toMutableList()
- if (type == LIST.UNSTYLED) {
- cl.add("list-unstyled" to true)
- } else if (type == LIST.INLINE) {
- cl.add("list-inline" to true)
- } else if (type == LIST.DL_HORIZ) {
- cl.add("dl-horizontal" to true)
+ @Suppress("NON_EXHAUSTIVE_WHEN")
+ when (type) {
+ LIST.UNSTYLED -> cl.add("list-unstyled" to true)
+ LIST.INLINE -> cl.add("list-inline" to true)
+ LIST.DL_HORIZ -> cl.add("dl-horizontal" to true)
}
return cl
}
diff --git a/src/main/kotlin/pl/treksoft/kvision/html/Tag.kt b/src/main/kotlin/pl/treksoft/kvision/html/Tag.kt
index 109e5509..cb8330ac 100644
--- a/src/main/kotlin/pl/treksoft/kvision/html/Tag.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/html/Tag.kt
@@ -73,7 +73,7 @@ open class Tag(type: TAG, text: String? = null, rich: Boolean = false, align: AL
}
override fun render(): VNode {
- val ret = if (text != null) {
+ return if (text != null) {
if (rich) {
kvh(type.tagName, arrayOf(KVManager.virtualize("<span>$text</span>")) + childrenVNodes())
} else {
@@ -82,7 +82,6 @@ open class Tag(type: TAG, text: String? = null, rich: Boolean = false, align: AL
} else {
kvh(type.tagName, childrenVNodes())
}
- return ret
}
override fun getSnClass(): List<StringBoolPair> {
diff --git a/src/main/kotlin/pl/treksoft/kvision/modal/Alert.kt b/src/main/kotlin/pl/treksoft/kvision/modal/Alert.kt
index a7820b30..c04449c2 100644
--- a/src/main/kotlin/pl/treksoft/kvision/modal/Alert.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/modal/Alert.kt
@@ -26,7 +26,7 @@ open class Alert(caption: String? = null, text: String? = null, rich: Boolean =
content.align = value
}
- val content = Tag(TAG.SPAN, text, rich, align)
+ private val content = Tag(TAG.SPAN, text, rich, align)
init {
body.add(content)
diff --git a/src/main/kotlin/pl/treksoft/kvision/modal/Confirm.kt b/src/main/kotlin/pl/treksoft/kvision/modal/Confirm.kt
index 366eec52..aa4e8b88 100644
--- a/src/main/kotlin/pl/treksoft/kvision/modal/Confirm.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/modal/Confirm.kt
@@ -26,14 +26,14 @@ open class Confirm(caption: String? = null, text: String? = null, rich: Boolean
set(value) {
content.align = value
}
- var cancelVisible = cancelVisible
+ private var cancelVisible = cancelVisible
set(value) {
field = value
refreshCancelButton()
}
- val content = Tag(TAG.SPAN, text, rich, align)
- val cancelButton = Button("Cancel", "remove")
+ private val content = Tag(TAG.SPAN, text, rich, align)
+ private val cancelButton = Button("Cancel", "remove")
init {
body.add(content)
diff --git a/src/main/kotlin/pl/treksoft/kvision/modal/Modal.kt b/src/main/kotlin/pl/treksoft/kvision/modal/Modal.kt
index c587e977..564a9f6f 100644
--- a/src/main/kotlin/pl/treksoft/kvision/modal/Modal.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/modal/Modal.kt
@@ -1,7 +1,6 @@
package pl.treksoft.kvision.modal
import com.github.snabbdom.VNode
-import org.w3c.dom.CustomEvent
import pl.treksoft.kvision.core.Container
import pl.treksoft.kvision.core.Root
import pl.treksoft.kvision.core.Widget
@@ -20,15 +19,15 @@ enum class MODALSIZE(val className: String) {
@Suppress("TooManyFunctions")
open class Modal(caption: String? = null, closeButton: Boolean = true,
- size: MODALSIZE? = null, animation: Boolean = true, val escape: Boolean = true,
+ size: MODALSIZE? = null, animation: Boolean = true, private val escape: Boolean = true,
classes: Set<String> = setOf()) : Container(classes) {
- var caption
+ private var caption
get() = captionTag.text
set(value) {
captionTag.text = value
checkHeaderVisibility()
}
- var closeButton
+ private var closeButton
get() = closeIcon.visible
set(value) {
closeIcon.visible = value
@@ -39,18 +38,18 @@ open class Modal(caption: String? = null, closeButton: Boolean = true,
set(value) {
dialog.size = value
}
- var animation = animation
+ private var animation = animation
set(value) {
field = value
refresh()
}
- protected val dialog = ModalDialog(size)
- protected val header = Container(setOf("modal-header"))
+ private val dialog = ModalDialog(size)
+ private val header = Container(setOf("modal-header"))
protected val closeIcon = CloseIcon()
- protected val captionTag = Tag(TAG.H4, caption, classes = setOf("modal-title"))
+ private val captionTag = Tag(TAG.H4, caption, classes = setOf("modal-title"))
protected val body = Container(setOf("modal-body"))
- protected val footer = Container(setOf("modal-footer"))
+ private val footer = Container(setOf("modal-footer"))
init {
this.hide()
@@ -73,6 +72,7 @@ open class Modal(caption: String? = null, closeButton: Boolean = true,
content.add(footer)
val root = Root.getLastRoot()
if (root != null) {
+ @Suppress("LeakingThis")
root.addModal(this)
} else {
println("At least one Root object is required to create a modal!")
diff --git a/src/main/kotlin/pl/treksoft/kvision/panel/SplitPanel.kt b/src/main/kotlin/pl/treksoft/kvision/panel/SplitPanel.kt
index be51149e..57519833 100644
--- a/src/main/kotlin/pl/treksoft/kvision/panel/SplitPanel.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/panel/SplitPanel.kt
@@ -13,10 +13,11 @@ enum class DIRECTION(val dir: String) {
VERTICAL("vertical")
}
-open class SplitPanel(val direction: DIRECTION = DIRECTION.VERTICAL,
+open class SplitPanel(private val direction: DIRECTION = DIRECTION.VERTICAL,
classes: Set<String> = setOf()) : Container(classes + ("splitpanel-" + direction.dir)) {
- internal val splitter = Splitter(this, direction)
+ @Suppress("LeakingThis")
+ private val splitter = Splitter(this, direction)
@Suppress("UnsafeCastFromDynamic")
internal fun afterInsertSplitter() {
@@ -54,7 +55,7 @@ open class SplitPanel(val direction: DIRECTION = DIRECTION.VERTICAL,
}
}
-class Splitter(val splitPanel: SplitPanel, direction: DIRECTION) : Tag(TAG.DIV,
+class Splitter(private val splitPanel: SplitPanel, direction: DIRECTION) : Tag(TAG.DIV,
classes = setOf("splitter-" + direction.dir)) {
private val idc = "kv_splitter_" + counter
diff --git a/src/main/kotlin/pl/treksoft/kvision/snabbdom/Types.kt b/src/main/kotlin/pl/treksoft/kvision/snabbdom/Types.kt
index dc6877a1..f1a79a76 100644
--- a/src/main/kotlin/pl/treksoft/kvision/snabbdom/Types.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/snabbdom/Types.kt
@@ -21,6 +21,7 @@ fun obj(init: dynamic.() -> Unit): dynamic {
@Suppress("UnsafeCastFromDynamic")
private fun vNodeData(): VNodeData = js("({})")
+@Suppress("UnsafeCastFromDynamic")
class KvEvent(type: String, eventInitDict: CustomEventInit) : CustomEvent(type, eventInitDict) {
override val detail: JQueryEventObject = obj({})
}
diff --git a/src/main/kotlin/pl/treksoft/kvision/tabs/Tabs.kt b/src/main/kotlin/pl/treksoft/kvision/tabs/Tabs.kt
index 4bc4d4b6..b21b1713 100644
--- a/src/main/kotlin/pl/treksoft/kvision/tabs/Tabs.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/tabs/Tabs.kt
@@ -9,9 +9,9 @@ import pl.treksoft.kvision.html.Tag
import pl.treksoft.kvision.panel.StackPanel
open class Tabs : Container(setOf()) {
- internal var nav = Tag(TAG.UL, classes = setOf("nav", "nav-tabs"))
- internal var content = StackPanel(false)
- var activeIndex
+ private var nav = Tag(TAG.UL, classes = setOf("nav", "nav-tabs"))
+ private var content = StackPanel(false)
+ private var activeIndex
get() = content.activeIndex
set(value) {
content.activeIndex = value