This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch camel-jbang-diagram-zoom in repository https://gitbox.apache.org/repos/asf/camel.git
commit a117210c56cbda14e1cd09c1f8030ea8e0015eaa Author: Claus Ibsen <[email protected]> AuthorDate: Sun Oct 25 15:17:27 2026 +0100 chore: camel-jbang - route diagram: the zoom level position counts up as + zooms in bare 1/3, compact 2/3, detailed 3/3: + goes up a number, - down. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]> Signed-off-by: Claus Ibsen <[email protected]> --- docs/user-manual/modules/ROOT/pages/camel-jbang-tui-diagram.adoc | 3 ++- .../camel/dsl/jbang/core/commands/tui/diagram/RouteDensity.java | 4 ++-- .../camel/dsl/jbang/core/commands/tui/RouteDiagramZoomTest.java | 2 +- .../dsl/jbang/core/commands/tui/diagram/RouteDensityTest.java | 7 +++++++ 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/docs/user-manual/modules/ROOT/pages/camel-jbang-tui-diagram.adoc b/docs/user-manual/modules/ROOT/pages/camel-jbang-tui-diagram.adoc index ce2c7b874ab8..abf9e9b8f72b 100644 --- a/docs/user-manual/modules/ROOT/pages/camel-jbang-tui-diagram.adoc +++ b/docs/user-manual/modules/ROOT/pages/camel-jbang-tui-diagram.adoc @@ -66,7 +66,8 @@ steps fit branch, `●` a step), with the counts beside the lines between them The level you choose is kept for the next start. Press *z* for fit: the most detailed level in which the whole route fits the screen. The view bar shows the level and -where it is among the three (`zoom: compact 2/3`, or `zoom: fit bare 3/3`), and the title of the diagram how many steps +where it is among the three, counted up as *+* zooms in (`zoom: bare 1/3`, `compact 2/3`, `detailed 3/3`, or +`zoom: fit bare 1/3`), and the title of the diagram how many steps the route has, so you can tell a large route at a glance, and how many of them are folded (`38 steps · 12 folded`). Zooming keeps the selected step selected, on the same row of the screen, and the Info panel has the whole text of the selected step at every level. diff --git a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/diagram/RouteDensity.java b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/diagram/RouteDensity.java index b7665c3132d3..0546f413eb2c 100644 --- a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/diagram/RouteDensity.java +++ b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/diagram/RouteDensity.java @@ -65,9 +65,9 @@ public enum RouteDensity { return label; } - /** Where the density is among the levels, from the most detail: 2/3. */ + /** Where the density is among the levels, counted up as + zooms in: bare 1/3, compact 2/3, detailed 3/3. */ public String position() { - return (ordinal() + 1) + "/" + values().length; + return (values().length - ordinal()) + "/" + values().length; } /** One level more detail, or this one when it is the most. */ diff --git a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/RouteDiagramZoomTest.java b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/RouteDiagramZoomTest.java index e9e8f35dd14f..0e53e3881168 100644 --- a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/RouteDiagramZoomTest.java +++ b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/RouteDiagramZoomTest.java @@ -174,7 +174,7 @@ class RouteDiagramZoomTest { assertThat(zoom.densityOf(fitted)).isEqualTo(RouteDensity.BARE); // the route starts at the top, as without fit assertThat(find(fitted, "from1").y).isEqualTo(40); - assertThat(zoom.label(layout(zoom, bare))).isEqualTo("fit bare 3/3"); + assertThat(zoom.label(layout(zoom, bare))).isEqualTo("fit bare 1/3"); // a zoom key leaves fit zoom.zoomIn(); assertThat(zoom.isFit()).isFalse(); diff --git a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/diagram/RouteDensityTest.java b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/diagram/RouteDensityTest.java index 8d5d48454cf3..9bd1f9a7e2b4 100644 --- a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/diagram/RouteDensityTest.java +++ b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/diagram/RouteDensityTest.java @@ -177,4 +177,11 @@ class RouteDensityTest { .orElseThrow(); assertThat(count(compact, '▼')).isEqualTo(4); } + + @Test + void thePositionCountsUpAsTheDiagramZoomsIn() { + assertThat(RouteDensity.BARE.position()).isEqualTo("1/3"); + assertThat(RouteDensity.COMPACT.position()).isEqualTo("2/3"); + assertThat(RouteDensity.DETAILED.position()).isEqualTo("3/3"); + } }
