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/08 07:04:24 UTC

[isis] branch ISIS-2505_Catch_Up_With_Demo_Examples updated (9d5977b -> 11693b2)

This is an automated email from the ASF dual-hosted git repository.

joergrade pushed a change to branch ISIS-2505_Catch_Up_With_Demo_Examples
in repository https://gitbox.apache.org/repos/asf/isis.git.


    from 9d5977b  ISIS-2505 use legacy compiler instead of ir, omit formatterComponentFunction in ColumnFactory (data is shown now in parented tables!)
     new 1ba080a  ISIS-2505 omit empty fieldset, amend IconManager, fix compiler warnings
     new 11693b2  ISIS-2505 second menu button omitted

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../isis/client/kroviz/ui/builder/ColBuilder.kt    |  29 +++--
 .../isis/client/kroviz/ui/core/ColumnFactory.kt    |  14 ++-
 .../apache/isis/client/kroviz/ui/core/RoTable.kt   |   2 +-
 .../apache/isis/client/kroviz/utils/IconManager.kt | 133 +++++++++++----------
 .../org/apache/isis/client/kroviz/utils/Utils.kt   |   9 +-
 5 files changed, 101 insertions(+), 86 deletions(-)

[isis] 02/02: ISIS-2505 second menu button omitted

Posted by jo...@apache.org.
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 11693b2631c0fd519081c5633d42bf1ad1031019
Author: Jörg Rade <jo...@kuehne-nagel.com>
AuthorDate: Thu Jul 8 09:03:48 2021 +0200

    ISIS-2505 second menu button omitted
---
 .../kotlin/org/apache/isis/client/kroviz/ui/builder/ColBuilder.kt   | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/builder/ColBuilder.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/builder/ColBuilder.kt
index 7afd9bc..89e1166 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/builder/ColBuilder.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/builder/ColBuilder.kt
@@ -35,8 +35,10 @@ class ColBuilder : UiBuilder() {
         val panel = buildPanel()
 
         if (col.actionList.size > 0) {
-            val menu = createMenu(tObject, dsp)
-            panel.add(menu)
+            if (col.domainObject != null) {
+                val menu = createMenu(tObject, dsp)
+                panel.add(menu)
+            }
         }
 
         for (tg in col.tabGroupList) {

[isis] 01/02: ISIS-2505 omit empty fieldset, amend IconManager, fix compiler warnings

Posted by jo...@apache.org.
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 1ba080ae403be09e95cccc97a761b3e515c752fd
Author: Jörg Rade <jo...@kuehne-nagel.com>
AuthorDate: Wed Jul 7 18:26:10 2021 +0200

    ISIS-2505 omit empty fieldset, amend IconManager, fix compiler warnings
---
 .../isis/client/kroviz/ui/builder/ColBuilder.kt    |  23 ++--
 .../isis/client/kroviz/ui/core/ColumnFactory.kt    |  14 ++-
 .../apache/isis/client/kroviz/ui/core/RoTable.kt   |   2 +-
 .../apache/isis/client/kroviz/utils/IconManager.kt | 133 +++++++++++----------
 .../org/apache/isis/client/kroviz/utils/Utils.kt   |   9 +-
 5 files changed, 97 insertions(+), 84 deletions(-)

diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/builder/ColBuilder.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/builder/ColBuilder.kt
index f746902..7afd9bc 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/builder/ColBuilder.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/builder/ColBuilder.kt
@@ -27,6 +27,7 @@ import org.apache.isis.client.kroviz.to.bs3.Col
 import org.apache.isis.client.kroviz.ui.core.MenuFactory
 import org.apache.isis.client.kroviz.ui.core.RoDisplay
 import org.apache.isis.client.kroviz.ui.core.RoTable
+import org.apache.isis.client.kroviz.utils.Utils
 
 class ColBuilder : UiBuilder() {
 
@@ -43,16 +44,18 @@ class ColBuilder : UiBuilder() {
             panel.add(tgCpt)
         }
         for (fs in col.fieldSetList) {
-            val fsCpt = FieldSetBuilder().create(fs, tObject, dsp)!!
-            var legend = fs.name
-            if (legend.trim().length == 0) {
-                legend = fs.id
+            if (fs.propertyList.size > 0) {
+                val fsCpt = FieldSetBuilder().create(fs, tObject, dsp)!!
+                var legend = fs.name
+                if (legend.trim().length == 0) {
+                    legend = fs.id
+                }
+                legend = Utils.capitalize(legend)
+                val fsPanel = FieldsetPanel(legend = legend).add(fsCpt)
+                val tto = TooltipOptions(title = fs.id)
+                fsPanel.enableTooltip(tto)
+                panel.add(fsPanel)
             }
-            legend = legend.capitalize()
-            val fsPanel = FieldsetPanel(legend = legend).add(fsCpt)
-            val tto = TooltipOptions(title = fs.id)
-            fsPanel.enableTooltip(tto)
-            panel.add(fsPanel)
         }
         for (row in col.rowList) {
             val rowCpt = RowBuilder().create(row, tObject, dsp)
@@ -63,7 +66,7 @@ class ColBuilder : UiBuilder() {
             val objectDM = dsp.displayModel
             val collectionDM = objectDM.collections.get(key)!!
             val tblCpt = RoTable(collectionDM)
-            val fsPanel = FieldsetPanel(legend = key.capitalize()).add(tblCpt)
+            val fsPanel = FieldsetPanel(legend = Utils.capitalize(key)).add(tblCpt)
             panel.add(fsPanel)
             collectionDM.isRendered = true
         }
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/ColumnFactory.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/ColumnFactory.kt
index 1294f22..03a841e 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/ColumnFactory.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/ColumnFactory.kt
@@ -64,7 +64,7 @@ class ColumnFactory {
             columns.add(menu)
 
             val icon = buildLinkIcon()
-           columns.add(icon)
+            columns.add(icon)
         }
 
         val propertyLabels = displayCollection.properties.list
@@ -98,7 +98,8 @@ class ColumnFactory {
                 width = "40",
 /*                formatterComponentFunction = { _, _, data ->
                     buildButton(data, data["iconName"] as? String)
-                }*/)
+                }*/
+        )
     }
 
     private fun buildButton(data: Exposer, iconName: String?): Button {
@@ -121,7 +122,8 @@ class ColumnFactory {
                     Button(text = data["object"].title as String, icon = "fas fa-star-o", style = ButtonStyle.LINK).onClick {
                         console.log(data)
                     }
-                }*/)
+                }*/
+        )
     }
 
     private fun buildCheckBox(): ColumnDefinition<Exposer> {
@@ -147,7 +149,8 @@ class ColumnFactory {
     }
 
     private fun buildMenu(): ColumnDefinition<Exposer> {
-        return ColumnDefinition("",
+        return ColumnDefinition(
+                "",
                 field = "iconName", // any existing field can be used
                 formatter = Formatter.TICKCROSS,
                 formatterParams = menuFormatterParams,
@@ -159,7 +162,8 @@ class ColumnFactory {
                     MenuFactory.buildForObject(
                             tObject,
                             false)
-                }*/)
+                }*/
+        )
     }
 
     private fun getData(cell: Tabulator.CellComponent): Exposer {
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoTable.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoTable.kt
index c2d20e3..355576d 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoTable.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoTable.kt
@@ -49,7 +49,7 @@ class RoTable(displayCollection: CollectionDM) : SimplePanel() {
         val options = TabulatorOptions(
                 movableColumns = true,
                 height = Constants.calcHeight,
-                layout = Layout.FITCOLUMNS,
+                layout = Layout.FITCOLUMNS, //FITDATA seems to be right
                 columns = columns,
                 persistenceMode = false,
                 //selectable = true
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/utils/IconManager.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/utils/IconManager.kt
index 079afcd..68f89bc 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/utils/IconManager.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/utils/IconManager.kt
@@ -30,72 +30,73 @@ object IconManager {
 
     /* Merge with configuration values*/
     private val word2Icon = mapOf(
-        "About" to "info",
-        "Actions" to "ellipsis-v",
-        "All" to "asterisk",
-        "Blobs" to "cloud",
-        "Burger" to "bars",
-        "Chart" to "magic",
-        "Close" to "times",
-        "Configuration" to "wrench",
-        "Connect" to "plug",
-        "Console" to "terminal",
-        "Create" to "plus",
-        "Debug" to "bug",
-        "Delete" to "trash",
-        "Details" to "info-circle",
-        "Diagram" to "project-diagram",
-        "Download" to "download",
-        "Factory" to "industry",
-        "Featured" to "keyboard",
-        "Featured Types" to "keyboard",
-        "Edit" to "pencil",
-        "Error Handling" to "bug",
-        "Error" to "bug",
-        "Event" to "road",
-        "Experimental" to "flask",
-        "Export" to "file-export",
-        "Facet" to "gem",
-        "Find" to "search",
-        "Hierarchy" to "sitemap",
-        "History" to "history",
-        "Hsql" to "database",
-        "Isis" to "ankh",
-        "JEE/CDI" to "jedi",
-        "List" to "list",
-        "Location" to "map-marker",
-        "Log" to "history",
-        "Manager" to "manager",
-        "Map" to "map",
-        "Me" to "user",
-        "Notification" to "bell",
-        "Notifications" to "bell",
-        "Object" to "cube",
-        "Objects" to "cubes",
-        "OK" to "check",
-        "Open" to "book",
-        "Other" to "asterisk",
-        "Pin" to "map-pin",
-        "Primitives" to "hashtag",
-        "Prototyping" to "object-group",
-        "Queen" to "chess-queen",
-        "Run" to "rocket",
-        "Save" to "file",
-        "Security" to "lock",
-        "Simple" to "cubes",
-        "Switch" to "power-off",
-        "Target" to "bullseye",
-        "Text" to "font",
-        "Toast" to "bread-slice", //comment-alt-plus/minus/exclamation
-        "Toolbar" to "step-backward",
-        "Tooltips" to "comment-alt",
-        "Temporals" to "clock",
-        "Trees" to "tree",
-        "Types" to "typewriter",
-        "Undo" to "undo",
-        "Unknown" to "question",
-        "Visualize" to "eye",
-        "Wikipedia" to "wikipedia-w"
+            "About" to "info",
+            "Actions" to "ellipsis-v",
+            "All" to "asterisk",
+            "Blobs" to "cloud",
+            "Burger" to "bars",
+            "Chart" to "magic",
+            "Close" to "times",
+            "Configuration" to "wrench",
+            "Connect" to "plug",
+            "Console" to "terminal",
+            "Create" to "plus",
+            "Debug" to "bug",
+            "Delete" to "trash",
+            "Details" to "info-circle",
+            "Diagram" to "project-diagram",
+            "Download" to "download",
+            "Factory" to "industry",
+            "Featured" to "keyboard",
+            "Featured Types" to "keyboard",
+            "Edit" to "pencil",
+            "Error Handling" to "bug",
+            "Error" to "bug",
+            "Event" to "road",
+            "Experimental" to "flask",
+            "Export" to "file-export",
+            "Facet" to "gem",
+            "Find" to "search",
+            "Hierarchy" to "sitemap",
+            "History" to "history",
+            "Hsql" to "database",
+            "Isis" to "ankh",
+            "JEE/CDI" to "jedi",
+            "List" to "list",
+            "Location" to "map-marker",
+            "Log" to "history",
+            "Manager" to "manager",
+            "Map" to "map",
+            "Me" to "user",
+            "Notification" to "bell",
+            "Notifications" to "bell",
+            "Object" to "cube",
+            "Objects" to "cubes",
+            "OK" to "check",
+            "Open" to "book",
+            "Other" to "asterisk",
+            "Pin" to "map-pin",
+            "Primitives" to "hashtag",
+            "Prototyping" to "object-group",
+            "Queen" to "chess-queen",
+            "Run" to "rocket",
+            "Save" to "file",
+            "Security" to "lock",
+            "Simple" to "cubes",
+            "Strings" to "font",
+            "Switch" to "power-off",
+            "Target" to "bullseye",
+            "Text" to "font",
+            "Toast" to "bread-slice", //comment-alt-plus/minus/exclamation
+            "Toolbar" to "step-backward",
+            "Tooltips" to "comment-alt",
+            "Temporals" to "clock",
+            "Trees" to "tree",
+            "Types" to "typewriter",
+            "Undo" to "undo",
+            "Unknown" to "question",
+            "Visualize" to "eye",
+            "Wikipedia" to "wikipedia-w"
     )
 
     @OptIn(ExperimentalStdlibApi::class)
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/utils/Utils.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/utils/Utils.kt
index 00861b2..3c08788 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/utils/Utils.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/utils/Utils.kt
@@ -24,17 +24,22 @@ import org.apache.isis.client.kroviz.to.TObject
 
 object Utils {
 
-    @OptIn(ExperimentalStdlibApi::class)
     fun enCamel(input: String): String {
         var output = ""
         val words = input.split(" ")
         for (w in words) {
-            output += w.capitalize()
+            output += capitalize(w)
         }
         return decapitalize(output)
     }
 
     @OptIn(ExperimentalStdlibApi::class)
+    fun capitalize(input: String): String {
+        val output = input.substring(1, input.length)
+        return input.first().uppercaseChar() + output
+    }
+
+    @OptIn(ExperimentalStdlibApi::class)
     private fun decapitalize(input: String): String {
         val output = input.substring(1, input.length)
         return input.first().lowercaseChar() + output