Skip to content

LoopLog: Show covered child nodes dimmed in treeview #45

Description

@maddes8cht

Description

In the LoopLog treeview, multiple elements can now be selected at once (multi-select). If a user selects a parent node together with one or more of its child nodes, the child nodes are ignored in the preview output (see the preview filtering issue, _prune_contained).

Visually, those still-selected child nodes are currently indistinguishable from the parent selection in the treeview. For better feedback, child nodes that are "covered" by a selected parent should be shown slightly dimmed in the treeview.

Behavior:

  • The parent node stays selected.
  • Covered child nodes stay selected but appear dimmed.
  • Removing the parent selection restores the normal selection of the child nodes — behavior identical to today, only with the additional preview filtering.

Technical notes

  • ttk.Treeview paints selected rows with a theme background color; per-item foreground tags (via tag_configure + item(..., tags=...)) may be covered by it or ignored depending on the theme.
  • A clean rendering may require a custom treeview style/theme approach — platform-dependent and costly.
  • The dimming logic must be recomputed on every selection event (child dimmed ⇔ parent selected) and stay consistent with the _prune_contained logic from the preview filtering.

Verification

Manual: select a parent + child → the child appears dimmed; deselect the parent → the child is normally selected again. python -m pytest tests\test_all.py -q

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions