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

heneveld pushed a commit to branch simple-kilt
in repository https://gitbox.apache.org/repos/asf/brooklyn-ui.git


The following commit(s) were added to refs/heads/simple-kilt by this push:
     new 5edadb8e tidy popup for kilt colors, and set simple to be the default
5edadb8e is described below

commit 5edadb8e98e10d8a2e9a689249be5ee61e233d2a
Author: Alex Heneveld <[email protected]>
AuthorDate: Fri Jun 28 15:43:56 2024 +0100

    tidy popup for kilt colors, and set simple to be the default
---
 .../task-sunburst/task-sunburst.directive.js         |  4 +---
 .../components/task-sunburst/task-sunburst.util.js   | 19 ++++++++++++++++---
 .../views/main/inspect/activities/activities.less    | 15 ++++++++-------
 .../main/inspect/activities/kilt-panel.directive.js  | 13 ++++++++-----
 .../main/inspect/activities/kilt-panel.template.html | 20 +++++++++++---------
 5 files changed, 44 insertions(+), 27 deletions(-)

diff --git 
a/ui-modules/app-inspector/app/components/task-sunburst/task-sunburst.directive.js
 
b/ui-modules/app-inspector/app/components/task-sunburst/task-sunburst.directive.js
index 78eeecea..a16bd378 100644
--- 
a/ui-modules/app-inspector/app/components/task-sunburst/task-sunburst.directive.js
+++ 
b/ui-modules/app-inspector/app/components/task-sunburst/task-sunburst.directive.js
@@ -29,8 +29,6 @@ angular.module(MODULE_NAME, [])
 
 export default MODULE_NAME;
 
-export const STORAGE_KEY_COLOR_MODE = 'brooklyn.'+MODULE_NAME+'.color_mode';
-
 export function taskSunburstDirective() {
     return {
         template: template,
@@ -47,7 +45,7 @@ export function taskSunburstDirective() {
 
     function controller($scope, $element, $state, $window, $timeout) {
         function lookupColorScheme() {
-            $scope.colorScheme = 
$window.localStorage.getItem(STORAGE_KEY_COLOR_MODE) || 'normal';
+            $scope.colorScheme = util.getSunburstColorMode($window);
         }
         lookupColorScheme();
 
diff --git 
a/ui-modules/app-inspector/app/components/task-sunburst/task-sunburst.util.js 
b/ui-modules/app-inspector/app/components/task-sunburst/task-sunburst.util.js
index 1fd8d620..39d32f2f 100644
--- 
a/ui-modules/app-inspector/app/components/task-sunburst/task-sunburst.util.js
+++ 
b/ui-modules/app-inspector/app/components/task-sunburst/task-sunburst.util.js
@@ -18,6 +18,10 @@
  */
 
 import * as d3 from "d3";
+import MODULE_NAME from "./task-sunburst.directive";
+
+export const COLOR_MODES = [ 'simple', 'multi' ];
+export const DEFAULT_COLOR_MODE = COLOR_MODES[0];
 
 export function isNewEntity(d) {
   return d.data.task && d.parent && d.parent.data.task && d.data.task.entityId 
&& d.data.task.entityId != d.parent.data.task.entityId;
@@ -76,7 +80,7 @@ colors = {
 {
     // build a palette to use, avoiding anything that looks like success
     // (danger we don't avoid as it is usually bright)
-    var palettes = ["normal", "simple"];
+    var palettes = COLOR_MODES;
     for(var p of palettes) {
         var hueToAvoid = d3.hsl(colors.ACTIVE_NORMAL).h;
         var palette = [];
@@ -103,7 +107,7 @@ Object.assign(colors, colors, {
   ACTIVE_BRIGHT: colors.ACTIVE_NORMAL.brighter(0.2),
   scale: 
     function(x, scheme) {
-      const palette = colors.PALETTES[scheme||"normal"];
+      const palette = colors.PALETTES[scheme||DEFAULT_COLOR_MODE];
       return palette[((hash(x) % 
palette.length)+palette.length)%palette.length];
     },
   nodeToUseForHue: function(x) {
@@ -186,4 +190,13 @@ export function arcF(options) {
 export function taskId(d) { return findTask(d).id; }
 
 export function id(x) { return x; }
-          
+
+const STORAGE_KEY_COLOR_MODE = 'brooklyn.'+MODULE_NAME+'.color_mode';
+
+export function getSunburstColorMode($window) {
+    return $window.localStorage.getItem(STORAGE_KEY_COLOR_MODE) || 
DEFAULT_COLOR_MODE;
+}
+export function toggleSunburstColorMode($window) {
+    const m = getSunburstColorMode($window);
+    $window.localStorage.setItem(STORAGE_KEY_COLOR_MODE, COLOR_MODES[ 
(COLOR_MODES.findIndex(x => x == m) + 1) % COLOR_MODES.length ]);
+}
diff --git 
a/ui-modules/app-inspector/app/views/main/inspect/activities/activities.less 
b/ui-modules/app-inspector/app/views/main/inspect/activities/activities.less
index 9a02dfa2..6de05c46 100644
--- a/ui-modules/app-inspector/app/views/main/inspect/activities/activities.less
+++ b/ui-modules/app-inspector/app/views/main/inspect/activities/activities.less
@@ -58,16 +58,17 @@
 
 .kilt-settings-popover {
   margin-left: 10px; //needed to budge it right to line up with settings icon, 
oddly
-  width: 500px;
-  max-width: 500px;
-  min-width: 500px;
+  width: 540px;
+  max-width: 540px;
+  min-width: 540px;
 
   .swatch-square {
-    width: 10px;
-    height: 10px;
+    width: 1em;
+    height: 1em;
 
     float: left;
-    margin-right: 1ex;
-    margin-top: 4px;
+    margin-right: 1em;
+    margin-top: 2px;
+    margin-left: 1em;
   }
 }
\ No newline at end of file
diff --git 
a/ui-modules/app-inspector/app/views/main/inspect/activities/kilt-panel.directive.js
 
b/ui-modules/app-inspector/app/views/main/inspect/activities/kilt-panel.directive.js
index 68675d02..acdb2d37 100644
--- 
a/ui-modules/app-inspector/app/views/main/inspect/activities/kilt-panel.directive.js
+++ 
b/ui-modules/app-inspector/app/views/main/inspect/activities/kilt-panel.directive.js
@@ -20,8 +20,11 @@ import angular from "angular";
 import {HIDE_INTERSTITIAL_SPINNER_EVENT} from 
'brooklyn-ui-utils/interstitial-spinner/interstitial-spinner';
 import template from './kilt-panel.template.html';
 import modalTemplate from './kilt.modal.template.html';
-import {STORAGE_KEY_COLOR_MODE} from 
"../../../../components/task-sunburst/task-sunburst.directive";
-import {colors} from "../../../../components/task-sunburst/task-sunburst.util";
+import {
+    colors,
+    getSunburstColorMode,
+    toggleSunburstColorMode
+} from "../../../../components/task-sunburst/task-sunburst.util";
 
 const MODULE_NAME = 'activities.kilt-panel';
 
@@ -58,10 +61,10 @@ export function activitiesListAndKiltPanelDirective() {
             vm.wideKilt = newValue;
         };
 
-        vm.simpleColors = 
window.localStorage.getItem(STORAGE_KEY_COLOR_MODE)=='simple';
+        vm.colorMode = getSunburstColorMode($window);
         vm.toggleColorScheme = function () {
-            vm.simpleColors = !vm.simpleColors;
-            $window.localStorage.setItem(STORAGE_KEY_COLOR_MODE, 
vm.simpleColors ? 'simple' : 'normal');
+            toggleSunburstColorMode($window);
+            vm.colorMode = getSunburstColorMode($window);
             $timeout(function () {
                 $scope.$broadcast('changedKiltColorScheme')
             }, 0);
diff --git 
a/ui-modules/app-inspector/app/views/main/inspect/activities/kilt-panel.template.html
 
b/ui-modules/app-inspector/app/views/main/inspect/activities/kilt-panel.template.html
index e88ec925..12c0d124 100644
--- 
a/ui-modules/app-inspector/app/views/main/inspect/activities/kilt-panel.template.html
+++ 
b/ui-modules/app-inspector/app/views/main/inspect/activities/kilt-panel.template.html
@@ -40,8 +40,9 @@
         <div>
             <p>
                 The progress map shows task progress and completion.
+            </p><p>
                 Tasks are shown chronologically left-to-right based on start 
time,
-                and hierarchically (subtasks) top-to-bottom.
+                and hierarchically top-to-bottom with sub-tasks under their 
submitter.
             </p><p>
                 <span style="background-color: {{vm.colors.ACTIVE_BRIGHT}};" 
class="swatch-square"></span>
                 Active tasks are shown in bright, pulsing green.
@@ -49,28 +50,29 @@
                 <span style="background-color: {{vm.colors.ERROR}};" 
class="swatch-square"></span>
                 Failed tasks are shown in red.
             </p><p>
-                <span style="background-color: 
{{vm.colors.unstartedFn('sample','simple')}};" class="swatch-square"></span>
+                <span style="background-color: 
{{vm.colors.unstartedFn('sample',vm.colorMode)}};" class="swatch-square"></span>
                 Unstarted tasks are shown as pale.
             </p><p>
-                <span style="background-color: 
{{vm.colors.succeededFn('sample','simple')}};" class="swatch-square"></span>
+                <span style="background-color: 
{{vm.colors.succeededFn('sample',vm.colorMode)}};" class="swatch-square"></span>
                 Completed tasks are shown as dark.
             </p>
-            <div style="display: flex;">
+            <hr></hr>
+            <div style="display: flex; margin-bottom: 16px;">
                 <div style="flex: 0 0 auto; padding-left: 1em; padding-right: 
1em;">
-                    <button class="btn btn-link title-toolbar-item" 
ng-click="vm.toggleColorScheme()" style="margin-left: 0">
-                        <i class="fa" ng-class="{ 'fa-toggle-off': 
vm.simpleColors, 'fa-toggle-on': !vm.simpleColors }"></i></button>
+                    <button class="btn btn-link title-toolbar-item" 
ng-click="vm.toggleColorScheme()" style="margin-left: 0; width: 1em; 
padding-top: 0;">
+                        <i class="fa" ng-class="{ 'fa-toggle-off': 
vm.colorMode=='simple', 'fa-toggle-on': vm.colorMode!='simple' }"></i></button>
                 </div>
                 <div style="flex: 1 1 auto;">
                     <b>Enable multi-colored mode</b> <br/>
-                    <span ng-if="vm.simpleColors">
+                    <span ng-if="vm.colorMode=='simple'">
                         Currently "simple-colored mode" is selected.
                         Unstarted and completed tasks are shown in pale and 
dark green.
                     </span>
-                    <span ng-if="!vm.simpleColors">
+                    <span ng-if="vm.colorMode!='simple'">
                         Currently "multi-colored mode" is selected.
                         Unstarted and completed tasks use a color computed 
from a hash of the task name.
                         This means the colors for tasks vary, but are 
consistent for a given task name,
-                        so the color can be used to find it more quickly.
+                        allowing the color to be used to find known tasks more 
quickly.
                     </span>
                 </div>
             </div>

Reply via email to