Skip to content

Mappers dialog: describe each mapper type, show per-mapper details - #63

Open
mogglemoss wants to merge 1 commit into
secondfry:masterfrom
mogglemoss:feature/mappers-dialog-polish
Open

mogglemoss wants to merge 1 commit into
secondfry:masterfrom
mogglemoss:feature/mappers-dialog-polish

Conversation

@mogglemoss

Copy link
Copy Markdown

Summary

Small usability pass on the Mappers dialog: adding a mapper now shows what each type is and what it needs, and the mapper table gains a Details column and reads as a list rather than a spreadsheet.

Context

Add opened a bare dropdown of type names. A first-time user choosing between "Tripwire" and "Eve Scout" had nothing to go on, in particular that one needs an account on a Tripwire server and the other needs nothing. Once configured, the table showed name, type and URL, but not whose account a Tripwire entry uses, which is the thing that tells two Tripwire instances apart.

Approach

  • Type picker: Add opens a small dialog listing each type with a one-line description. Descriptions word-wrap rather than clip, since how much fits on a line depends on the platform font (on macOS the Tripwire line clipped behind a scrollbar at a fixed width). MAPPER_TYPE_DESCRIPTIONS sits beside MAPPER_TYPE_LABELS, so a new mapper type adds one line to each.
  • Details column: a per-type summary: Tripwire shows the account user (or "no account set"), Eve Scout shows "public". It never shows a password or token.
  • Table: no painted grid, alternating row colors, and no row-number gutter (the numbers carried no meaning).

Testing

  • 3 new tests in test_mappers_dialog.py: every type has a description and the picker returns the chosen type; the Details column never contains the password; the table has the new column, no grid and no row numbers.
  • Full suite: 87 passed (84 existing + 3).
  • Rendered the dialog and picker offscreen to check the layout and wrapping.

Risks

Low: UI only, no config or schema changes. If #61 (Wanderer) lands first, its type would want a description line and a Details case (its map slug). Happy to add either here or as a follow-up, whichever order you prefer.

🤖 Generated with Claude Code

Adding a mapper opened a bare dropdown of type names, so a first-time
user picking between "Tripwire" and "Eve Scout" had nothing to go on —
in particular that one needs an account on a Tripwire server and the
other needs nothing at all.

- Add opens a small picker listing each type with a one-line description
  of what it is and what it needs. Descriptions wrap rather than clip,
  since how much fits on a line depends on the platform font.
- The table gains a Details column summarizing each config (Tripwire:
  the account user, or "no account set"; Eve Scout: "public"). It never
  shows a password or token; a test pins that.
- The table reads as a config list rather than a spreadsheet: no painted
  grid, alternating row colors, and no row-number gutter.

MAPPER_TYPE_DESCRIPTIONS sits beside MAPPER_TYPE_LABELS, so a new mapper
type adds one line to each.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant