You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by jo...@apache.org on 2021/07/06 15:21:08 UTC
[isis] 02/07: ISIS-2505 Credits/Icons/Buttons in RoStatusBar
This is an automated email from the ASF dual-hosted git repository.
joergrade pushed a commit to branch ISIS-2505_Catch_Up_With_Demo_Examples
in repository https://gitbox.apache.org/repos/asf/isis.git
commit 5e2ed9ce1773d975138693297bbfeae3d9566a48
Author: Jörg Rade <jo...@kuehne-nagel.com>
AuthorDate: Wed Jun 23 15:45:24 2021 +0200
ISIS-2505 Credits/Icons/Buttons in RoStatusBar
---
.../apache/isis/client/kroviz/to/bs3/Property.kt | 6 ++--
.../apache/isis/client/kroviz/ui/core/RoMenuBar.kt | 2 +-
.../isis/client/kroviz/ui/core/RoStatusBar.kt | 33 +++++++++++++++++-----
.../kroviz/src/main/resources/css/kroviz.css | 19 +++++++++++--
4 files changed, 48 insertions(+), 12 deletions(-)
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/bs3/Property.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/bs3/Property.kt
index a9f245d..e42ee6e 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/bs3/Property.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/bs3/Property.kt
@@ -26,7 +26,7 @@ import org.w3c.dom.asList
class Property(node: Node) {
var id: String
var link: Link? = null
- var hidden: String // USE ENUM Where? = null
+ var hidden: String = "" // USE ENUM Where? = null
var typicalLength: Int = 0
var multiLine: Int = 1
var describedAs: String? = null
@@ -35,7 +35,9 @@ class Property(node: Node) {
init {
val dn = node.asDynamic()
- hidden = dn.getAttribute("hidden")
+ if (dn.hasOwnProperty("hidden")) {
+ id = dn.getAttribute("hidden") as String
+ }
id = dn.getAttribute("id") as String
typicalLength = dn.getAttribute("typicalLength")
multiLine = dn.getAttribute("multiLine")
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoMenuBar.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoMenuBar.kt
index c7c4565..820ae1f 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoMenuBar.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoMenuBar.kt
@@ -146,7 +146,7 @@ object RoMenuBar : SimplePanel() {
}
private fun logoButton() {
- val classes = setOf("logo-button-image", "logo-button")
+ val classes = setOf("isis-logo-button-image", "logo-button")
val logo = Button("", style = ButtonStyle.LINK, classes = classes)
.onClick {
window.open("https://isis.apache.org")
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoStatusBar.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoStatusBar.kt
index a8d0020..ee5bd00 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoStatusBar.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoStatusBar.kt
@@ -18,13 +18,6 @@
*/
package org.apache.isis.client.kroviz.ui.core
-import org.apache.isis.client.kroviz.core.event.EventState
-import org.apache.isis.client.kroviz.core.event.LogEntry
-import org.apache.isis.client.kroviz.core.model.DiagramDM
-import org.apache.isis.client.kroviz.ui.dialog.DiagramDialog
-import org.apache.isis.client.kroviz.ui.dialog.NotificationDialog
-import org.apache.isis.client.kroviz.ui.diagram.ClassDiagram
-import org.apache.isis.client.kroviz.utils.IconManager
import io.kvision.core.*
import io.kvision.html.Button
import io.kvision.html.ButtonStyle
@@ -32,6 +25,14 @@ import io.kvision.navbar.Nav
import io.kvision.navbar.Navbar
import io.kvision.navbar.NavbarType
import io.kvision.panel.SimplePanel
+import kotlinx.browser.window
+import org.apache.isis.client.kroviz.core.event.EventState
+import org.apache.isis.client.kroviz.core.event.LogEntry
+import org.apache.isis.client.kroviz.core.model.DiagramDM
+import org.apache.isis.client.kroviz.ui.diagram.ClassDiagram
+import org.apache.isis.client.kroviz.ui.dialog.DiagramDialog
+import org.apache.isis.client.kroviz.ui.dialog.NotificationDialog
+import org.apache.isis.client.kroviz.utils.IconManager
object RoStatusBar {
val navbar = Navbar(
@@ -55,6 +56,8 @@ object RoStatusBar {
init {
navbar.add(nav)
+ nav.add(isisButton())
+ nav.add(kvisionButton())
nav.add(lastError)
nav.add(classDiagram)
nav.add(userBtn)
@@ -112,4 +115,20 @@ object RoStatusBar {
notify(text)
}
+ private fun isisButton(): Button {
+ val classes = setOf("isis-logo-button-image", "logo-button")
+ return Button("", style = ButtonStyle.LINK, classes = classes)
+ .onClick {
+ window.open("https://isis.apache.org")
+ }
+ }
+
+ private fun kvisionButton(): Button {
+ val classes = setOf("kvision-logo-button-image", "logo-button")
+ return Button("", style = ButtonStyle.LINK, classes = classes)
+ .onClick {
+ window.open("https://kvision.io")
+ }
+ }
+
}
diff --git a/incubator/clients/kroviz/src/main/resources/css/kroviz.css b/incubator/clients/kroviz/src/main/resources/css/kroviz.css
index 0035168..7f6c23e 100644
--- a/incubator/clients/kroviz/src/main/resources/css/kroviz.css
+++ b/incubator/clients/kroviz/src/main/resources/css/kroviz.css
@@ -137,9 +137,9 @@ div {
/* font-family: Chicago, sans-serif;*/
}
-.logo-button-image:before {
+.isis-logo-button-image:before {
content: "";
- width: 75px;
+ width: 65px;
height: 40px;
display: inline-block;
vertical-align: text-top;
@@ -151,6 +151,21 @@ div {
background-image: url("https://svn.apache.org/repos/asf/comdev/project-logos/originals/isis.svg");
}
+.kvision-logo-button-image:before {
+ content: "";
+ width: 25px;
+ height: 40px;
+ display: inline-block;
+ vertical-align: text-top;
+ background-color: transparent;
+ background-position: center center;
+ background-repeat: no-repeat;
+ background-size: contain, cover;
+ background-image: url("https://kvision.io/0cdf370d4484d5f175f0.svg");
+}
+
+
+
.kv-window {
/* background-color: rgba(255,255,255, 0) !important;*/
}